/**
 * Printchart – styly marketingové úvodní stránky.
 *
 * Staví na tokenech z theme.json / design-tokens.css.
 * Rozvržení vychází z captayn.com/en/business (tmavý úvod, zaoblená tlačítka,
 * číslované kroky a tarifní karty); barvy a typografie přebírá z designového
 * systému Printchartu.
 */

.pc-landing *,
.pc-landing *::before,
.pc-landing *::after,
.pc-site-header *,
.pc-site-footer * {
	box-sizing: border-box;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect( 0, 0, 0, 0 );
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	z-index: 100000;
	width: auto;
	height: auto;
	clip: auto;
	margin: 5px;
	padding: 12px 16px;
	background: #fff;
	color: #131718;
}

/* Proměnné na :root (ne na .pc-landing), aby platily i v editoru stránky,
   kde obal <main class="pc-landing"> ze šablony neexistuje. */
:root {
	--pc-section-max: 1200px;
	--pc-section-pad-block: clamp( 56px, 8vw, 96px );
	--pc-card-radius-lg: 16px;
	--pc-display-1: clamp( 2rem, 1.2rem + 3.6vw, 3.5rem );
	--pc-display-2: clamp( 1.625rem, 1.1rem + 2.2vw, 2.25rem );
	--pc-display-3: clamp( 1.25rem, 1.05rem + 0.9vw, 1.75rem );
	--pc-lead-size: clamp( 0.9375rem, 0.88rem + 0.3vw, 1.125rem );
}

.pc-landing {
	/* Tmavý podklad: main se roztahuje na zbytek výšky okna (sticky patička),
	   volné místo pod poslední sekcí tak nesvítí pozadím body. */
	background-color: var( --pc-color-font-dark );
}

/* --------------------------------------------------------------------------
 * Sekce a mřížky
 * ----------------------------------------------------------------------- */

.pc-section {
	position: relative;
	isolation: isolate;
	padding-block: var( --pc-section-pad-block );
	padding-inline: var( --pc-space-6 );
}

.pc-section::before,
.pc-section::after {
	content: "";
	position: absolute;
	z-index: 0;
	inset: 0;
	pointer-events: none;
}

.pc-section::before {
	background-image: url( "../img/section-data-viz.svg?rev=premium-3" );
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: max( 1100px, 115vw ) auto;
	opacity: 0.16;
	mask-image: radial-gradient( ellipse 45% 36% at 50% 27%, transparent 55%, #000 100% );
}

.pc-section::after {
	background-image:
		radial-gradient( circle at 17% 78%, rgba( 6, 171, 134, 0.08 ), transparent 24rem ),
		repeating-linear-gradient( 0deg, transparent 0 47px, rgba( 195, 206, 217, 0.035 ) 48px ),
		repeating-linear-gradient( 90deg, transparent 0 47px, rgba( 195, 206, 217, 0.035 ) 48px );
	opacity: 0.65;
}

.pc-section:nth-of-type( even )::before {
	background-position: 64% 42%;
	transform: scaleX( -1 );
}

.pc-section > * {
	position: relative;
	z-index: 1;
	max-width: var( --pc-section-max );
	margin-inline: auto;
}

.pc-section--ink {
	background-color: var( --pc-color-font-dark );
	color: #d6dcdd;
}

.pc-section--ink::before { opacity: 0.24; }

.pc-section--light {
	background-color: var( --pc-color-grey-faint );
}

.pc-section--white {
	background-color: var( --pc-color-white );
}

.pc-section--tight {
	padding-block: clamp( 40px, 5vw, 64px );
}

.pc-grid {
	display: grid;
	gap: var( --pc-space-6 );
}

@media ( min-width: 640px ) {
	.pc-grid--2,
	.pc-grid--4 {
		grid-template-columns: repeat( 2, 1fr );
	}
}

@media ( min-width: 900px ) {
	.pc-grid--3 {
		grid-template-columns: repeat( 3, 1fr );
	}
	.pc-grid--4 {
		grid-template-columns: repeat( 4, 1fr );
	}
}

/* --------------------------------------------------------------------------
 * Stavové stránky: 404 a obsah v přípravě
 * ----------------------------------------------------------------------- */

.pc-status-page {
	--pc-status-bg: var( --pc-color-white );
	background:
		radial-gradient( circle at 82% 48%, rgba( 6, 171, 134, 0.09 ), transparent 27rem ),
		var( --pc-status-bg );
	display: flex;
	align-items: center;
	min-height: min( 680px, calc( 100vh - var( --pc-header-height ) ) );
	padding: clamp( 52px, 8vw, 104px ) var( --pc-space-6 );
}

.pc-status-page__inner {
	display: grid;
	grid-template-columns: minmax( 0, 1fr ) minmax( 280px, 0.85fr );
	align-items: center;
	gap: clamp( 40px, 8vw, 112px );
	width: min( 100%, var( --pc-section-max ) );
	margin-inline: auto;
}

.pc-status-page__copy {
	max-width: 610px;
}

.pc-status-page .pc-eyebrow {
	margin-bottom: var( --pc-space-5 );
}

.pc-status-page .pc-display {
	max-width: 13ch;
	margin-bottom: var( --pc-space-5 );
	font-size: clamp( 2rem, 1.2rem + 3vw, 3.25rem );
}

.pc-status-page .pc-lead {
	margin-bottom: var( --pc-space-7 );
}

.pc-status-page__code {
	margin: 0 0 var( --pc-space-2 );
	color: var( --pc-color-teal );
	font-size: clamp( 4.5rem, 2.5rem + 8vw, 8rem );
	font-weight: var( --pc-font-weight-bold );
	line-height: 0.9;
	letter-spacing: -0.075em;
}

.pc-status-visual {
	position: relative;
	width: min( 100%, 430px );
	justify-self: center;
	overflow: hidden;
	border: 1px solid rgba( 19, 23, 24, 0.08 );
	border-radius: var( --pc-card-radius-lg );
	background: var( --pc-color-white );
	box-shadow: 0 28px 80px rgba( 19, 23, 24, 0.11 );
	transform: rotate( 2deg );
}

.pc-status-visual__top {
	display: flex;
	align-items: center;
	gap: 6px;
	min-height: 50px;
	padding-inline: 18px;
	border-bottom: 1px solid var( --pc-color-grey-light );
}

.pc-status-visual__top > span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var( --pc-color-grey-medium );
}

.pc-status-visual__top > span:first-child { background: var( --pc-color-orange ); }
.pc-status-visual__top > span:nth-child( 2 ) { background: var( --pc-color-teal ); }
.pc-status-visual__top i {
	margin-left: auto;
	color: var( --pc-color-icons );
	font-size: var( --pc-font-size-xs );
	font-style: normal;
}

.pc-status-visual__body {
	padding: clamp( 22px, 4vw, 36px );
}

.pc-status-visual__label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 26px;
	color: var( --pc-color-font-body );
	font-size: var( --pc-font-size-sm );
}

.pc-status-visual__label b {
	padding: 6px 10px;
	border-radius: var( --pc-radius-pill );
	background: var( --pc-color-grey-faint );
	color: var( --pc-color-icons );
	font-size: var( --pc-font-size-xs );
	font-weight: var( --pc-font-weight-semibold );
}

.pc-status-visual--ready .pc-status-visual__label b {
	background: rgba( 6, 171, 134, 0.12 );
	color: var( --pc-color-dark-teal );
}

.pc-status-visual__chart {
	display: flex;
	align-items: end;
	gap: 8px;
	height: 155px;
	padding: 16px 12px 0;
	border-bottom: 1px solid var( --pc-color-grey-light );
	background: repeating-linear-gradient( to bottom, transparent 0, transparent 37px, rgba( 195, 206, 217, 0.35 ) 38px, transparent 39px );
}

.pc-status-visual__chart span {
	flex: 1;
	max-width: 22px;
	height: 28%;
	border-radius: 4px 4px 0 0;
	background: var( --pc-color-teal-light );
}

.pc-status-visual__chart span:nth-child( 3n ) { height: 58%; background: rgba( 6, 171, 134, 0.32 ); }
.pc-status-visual__chart span:nth-child( 4n ) { height: 78%; background: rgba( 6, 171, 134, 0.58 ); }
.pc-status-visual__chart span:nth-child( 5n ) { height: 44%; background: var( --pc-color-orange ); }

.pc-status-visual__legend {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-top: 22px;
	color: var( --pc-color-icons );
	font-size: var( --pc-font-size-xs );
}

.pc-status-visual__legend span {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var( --pc-color-orange );
}

.pc-status-visual--ready .pc-status-visual__legend span { background: var( --pc-color-teal ); }

.pc-status-visual__steps {
	position: relative;
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: 8px;
	margin-block: 32px 26px;
}

.pc-status-visual__steps::before {
	position: absolute;
	top: 12px;
	right: 16%;
	left: 16%;
	height: 2px;
	background: var( --pc-color-grey-light );
	content: '';
}

.pc-status-visual__steps span {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 7px;
	color: var( --pc-color-icons );
	font-size: var( --pc-font-size-xs );
	line-height: 1.2;
	text-align: center;
}

.pc-status-visual__steps span::before {
	display: grid;
	place-items: center;
	width: 25px;
	height: 25px;
	border: 2px solid var( --pc-color-white );
	border-radius: 50%;
	background: var( --pc-color-teal );
	box-shadow: 0 0 0 1px rgba( 6, 171, 134, 0.35 );
	color: var( --pc-color-white );
	content: attr( data-step );
	font-size: var( --pc-font-size-xs );
	font-weight: var( --pc-font-weight-semibold );
}

.pc-status-visual__skeleton {
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 10px;
	margin-top: 32px;
}

.pc-status-visual__skeleton i {
	position: relative;
	display: block;
	box-sizing: border-box;
	height: 66px;
	padding: 13px 10px;
	border: 1px solid var( --pc-color-grey-light );
	border-radius: var( --pc-radius );
	background: var( --pc-color-grey-zebra );
}

.pc-status-visual__skeleton i::before,
.pc-status-visual__skeleton i::after {
	display: block;
	height: 5px;
	border-radius: var( --pc-radius-pill );
	background: var( --pc-color-grey-medium );
	content: '';
}

.pc-status-visual__skeleton i::before {
	width: 58%;
}

.pc-status-visual__skeleton i::after {
	width: 100%;
	margin-top: 8px;
	background: var( --pc-color-grey-light );
}

@media ( max-width: 760px ) {
	.pc-status-page {
		min-height: auto;
		padding-block: 56px 72px;
	}

	.pc-status-page__inner {
		grid-template-columns: 1fr;
		gap: 48px;
	}

	.pc-status-visual {
		width: min( 100%, 390px );
	}
}

@media ( max-width: 480px ) {
	.pc-status-page .pc-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.pc-status-page .pc-btn {
		width: 100%;
	}

	.pc-status-visual__chart { height: 125px; }
}

/* --------------------------------------------------------------------------
 * Typografie marketingu
 * ----------------------------------------------------------------------- */

.pc-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: var( --pc-space-2 );
	margin: 0 0 var( --pc-space-5 );
	padding: 6px 14px;
	border-radius: var( --pc-radius-pill );
	background-color: rgba( 6, 171, 134, 0.12 );
	color: var( --pc-color-teal );
	font-size: var( --pc-font-size-sm );
	font-weight: var( --pc-font-weight-semibold );
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.4;
}

.pc-section--ink .pc-eyebrow {
	background-color: rgba( 203, 243, 234, 0.14 );
	color: var( --pc-color-teal-light );
}

.pc-display {
	margin: 0 0 var( --pc-space-5 );
	color: var( --pc-color-font-dark );
	font-size: var( --pc-display-1 );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.08;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.pc-title {
	margin: 0 0 var( --pc-space-5 );
	color: var( --pc-color-font-dark );
	font-size: var( --pc-display-2 );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.15;
	letter-spacing: -0.015em;
	text-wrap: balance;
}

.pc-subtitle {
	margin: 0 0 var( --pc-space-4 );
	color: var( --pc-color-font-dark );
	font-size: var( --pc-display-3 );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.25;
}

.pc-section--ink .pc-display,
.pc-section--ink .pc-title,
.pc-section--ink .pc-subtitle {
	color: var( --pc-color-white );
}

.pc-lead {
	max-width: 60ch;
	margin: 0 0 var( --pc-space-6 );
	color: var( --pc-color-font-body );
	font-size: var( --pc-lead-size );
	line-height: 1.65;
}

.pc-section--ink .pc-lead {
	color: #aeb7b8;
}

.pc-accent {
	color: var( --pc-color-teal );
}

.pc-center {
	text-align: center;
}

.pc-center .pc-lead {
	margin-inline: auto;
}

/* --------------------------------------------------------------------------
 * Tlačítka
 * ----------------------------------------------------------------------- */

.pc-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var( --pc-space-4 );
}

.pc-center .pc-actions {
	justify-content: center;
}

.pc-btn {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var( --pc-space-2 );
	min-height: 48px;
	padding: 0 26px;
	border: 1px solid transparent;
	border-radius: var( --pc-radius-pill );
	font-size: var( --pc-font-size-base );
	font-weight: var( --pc-font-weight-semibold );
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.pc-btn--primary {
	background-color: var( --pc-color-teal );
	color: var( --pc-color-white );
}

.pc-btn--primary:hover,
.pc-btn--primary:focus-visible {
	background-color: var( --pc-color-dark-teal );
	color: var( --pc-color-white );
}

.pc-btn--light {
	background-color: var( --pc-color-white );
	color: var( --pc-color-font-dark );
}

.pc-btn--light:hover,
.pc-btn--light:focus-visible {
	background-color: var( --pc-color-teal-light );
	color: var( --pc-color-dark-teal );
}

.pc-btn--ghost {
	border-color: var( --pc-color-grey-medium );
	background-color: transparent;
	color: var( --pc-color-font-dark );
}

.pc-btn--ghost:hover,
.pc-btn--ghost:focus-visible {
	border-color: var( --pc-color-teal );
	color: var( --pc-color-dark-teal );
}

.pc-section--ink .pc-btn--ghost {
	border-color: rgba( 255, 255, 255, 0.25 );
	color: var( --pc-color-white );
}

.pc-section--ink .pc-btn--ghost:hover,
.pc-section--ink .pc-btn--ghost:focus-visible {
	border-color: var( --pc-color-teal );
	color: var( --pc-color-teal-light );
}

/* --------------------------------------------------------------------------
 * Hlavička webu
 * ----------------------------------------------------------------------- */

.pc-site-header {
	position: sticky;
	top: 0;
	z-index: 20;
	background-color: var( --pc-color-font-dark );
	padding-inline: var( --pc-space-6 );
}

.pc-site-header__inner {
	display: flex;
	align-items: center;
	gap: var( --pc-space-6 );
	max-width: var( --pc-section-max );
	min-height: 72px;
	margin-inline: auto;
}

.pc-logo {
	display: inline-flex;
	align-items: center;
	color: var( --pc-color-white );
	text-decoration: none;
}

.pc-site-header .pc-logo:hover,
.pc-site-header .pc-logo:focus-visible,
.pc-site-header .pc-logo:active {
	color: var( --pc-color-white );
}

/* Nápis dědí barvu `currentColor`, rám a tečka zůstávají v tyrkysové barvě značky. */
.pc-logo__svg {
	display: block;
	width: auto;
	height: 30px;
}

.pc-site-footer .pc-logo__svg {
	height: 36px;
}

.pc-appshot__brand .pc-logo__svg {
	height: 22px;
}

.pc-switch {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-inline: auto;
	padding: 4px;
	border: 1px solid rgba( 255, 255, 255, 0.18 );
	border-radius: var( --pc-radius-pill );
}

.pc-switch a {
	padding: 8px 18px;
	border-radius: var( --pc-radius-pill );
	color: rgba( 255, 255, 255, 0.75 );
	font-size: var( --pc-font-size-sm );
	font-weight: var( --pc-font-weight-semibold );
	text-decoration: none;
	white-space: nowrap;
	transition: color 180ms ease, background-color 220ms ease, box-shadow 220ms ease, transform 180ms ease;
}

.pc-switch a:hover,
.pc-switch a:focus-visible {
	transform: translateY( -1px );
}

.pc-switch a[aria-current='page'],
.pc-switch a.is-active {
	background-color: var( --pc-color-teal );
	color: var( --pc-color-white );
	box-shadow: 0 2px 8px rgba( 6, 171, 134, 0.2 );
	animation: pc-switch-select 260ms cubic-bezier( 0.2, 0.8, 0.2, 1 ) both;
}

.pc-nav {
	display: flex;
	align-items: center;
}

.pc-site-header__actions {
	display: flex;
	align-items: center;
	gap: var( --pc-space-6 );
}

.pc-nav .pc-menu {
	display: flex;
	align-items: center;
	gap: var( --pc-space-6 );
	margin: 0;
	padding: 0;
	list-style: none;
}

.pc-nav a {
	color: rgba( 255, 255, 255, 0.8 );
	font-size: var( --pc-font-size-base );
	font-weight: var( --pc-font-weight-medium );
	text-decoration: none;
	white-space: nowrap;
}

.pc-nav a:hover,
.pc-nav a:focus-visible {
	color: var( --pc-color-white );
}

.pc-site-header .pc-btn {
	min-height: 42px;
	padding-inline: 20px;
}

.pc-site-header .pc-btn .wp-block-button__link {
	min-height: 42px;
	display: inline-flex;
	align-items: center;
	padding: 0 20px;
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-white );
	color: var( --pc-color-font-dark );
	font-weight: var( --pc-font-weight-semibold );
	text-decoration: none;
}

.pc-site-header .pc-btn .wp-block-button__link:hover,
.pc-site-header .pc-btn .wp-block-button__link:focus-visible {
	background-color: var( --pc-color-teal-light );
	color: var( --pc-color-dark-teal );
}

@media ( max-width: 899px ) {
	.pc-site-header__inner {
		justify-content: space-between;
		flex-wrap: wrap;
		padding-block: 12px;
	}
	.pc-site-header__inner.is-nowrap {
		flex-wrap: wrap !important;
		width: 100%;
	}
	.pc-site-header__actions {
		order: 3;
		flex-basis: 100%;
		flex-wrap: wrap !important;
		max-width: 100%;
	}
	.pc-theme-toggle { order: 4; margin-left: 0; }
	.pc-nav .pc-menu {
		flex-wrap: wrap;
		gap: 12px 20px;
	}
}

/* --------------------------------------------------------------------------
 * Hero – text vlevo, náhled aplikace vpravo
 * ----------------------------------------------------------------------- */

.pc-hero {
	position: relative;
	overflow: hidden;
	background-color: var( --pc-color-font-dark );
	background-image:
		radial-gradient( 55% 70% at 72% 40%, rgba( 6, 171, 134, 0.18 ), transparent 70% ),
		radial-gradient( 45% 60% at 8% 20%, rgba( 255, 120, 23, 0.07 ), transparent 70% );
	padding-block: clamp( 48px, 7vw, 96px );
	padding-inline: var( --pc-space-6 );
	color: var( --pc-color-white );
}

/* Vrstevnaté datové signály v hero sekci. */
.pc-hero::before,
.pc-hero::after {
	content: "";
	position: absolute;
	z-index: 0;
	pointer-events: none;
	background-repeat: no-repeat;
	background-size: contain;
	opacity: 0.68;
	animation: pc-telemetry-drift 18s ease-in-out infinite alternate;
}

.pc-hero::before {
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url( "../img/section-data-viz.svg?rev=premium-3" );
	background-size: cover;
	mask-image: radial-gradient( ellipse 53% 94% at 26% 54%, transparent 74%, #000 100% );
}

.pc-hero::after {
	right: 2%;
	left: auto;
	top: 7%;
	bottom: auto;
	width: min( 52vw, 690px );
	height: 86%;
	background-image: url( "../img/hero-data-viz.svg?rev=no-orbits" );
	mask-image: linear-gradient( 90deg, transparent 0%, #000 17%, #000 100% );
	transform: perspective( 1100px ) rotateY( -13deg ) rotateZ( -2deg );
	filter: drop-shadow( 0 24px 32px rgba( 0, 0, 0, 0.28 ) );
	animation-delay: -8s;
}

.pc-hero__inner {
	position: relative;
	z-index: 1;
}

@keyframes pc-telemetry-drift {
	from { translate: 0 -4px; }
	to { translate: 0 5px; }
}

@media ( min-width: 768px ) and ( max-width: 999px ) {
	.pc-hero::before { display: none; }
	.pc-hero::after {
		top: 54%;
		right: -4%;
		width: 68%;
		height: 44%;
		opacity: 0.38;
	}
}

@media ( max-width: 767px ) {
	.pc-hero::before {
		display: none;
	}
	.pc-hero::after {
		right: -36%;
		top: auto;
		bottom: 1%;
		width: 72%;
		height: 32%;
		opacity: 0.32;
	}
	.pc-section::before {
		background-size: 880px auto;
		opacity: 0.09;
	}
	.pc-section--ink::before { opacity: 0.16; }
	.pc-section::after { opacity: 0.3; }
}

/* Bloky sekcí Gutenberg zachovávají zavedenou obsahovou mřížku PrintChartu. */
.pc-section-inner {
	width: min( 100% - 48px, 1200px );
	margin-inline: auto;
}

.pc-section-heading {
	max-width: 760px;
	margin: 0 auto 32px;
}

.pc-editable-section--cards .pc-section-heading,
.pc-editable-section--benefits .pc-section-heading,
.pc-editable-section--steps .pc-section-heading,
.pc-editable-section--faq .pc-section-heading {
	text-align: center;
}

.pc-editable-section .pc-section__image,
.pc-editable-section .pc-card__image,
.pc-hero__visual > img {
	width: 100%;
	max-width: 100%;
	border-radius: var( --pc-radius-lg );
	object-fit: cover;
}

.pc-editable-section .pc-card__image {
	max-height: 220px;
	margin-bottom: 18px;
}

.pc-faq {
	display: grid;
	gap: 12px;
	max-width: 900px;
	margin: 30px auto 0;
}

.pc-faq__item {
	padding: 18px 22px;
	border: 1px solid var( --pc-color-grey-light );
	border-radius: var( --pc-radius-lg );
	background: var( --pc-color-white );
}

.pc-faq__item summary {
	font-weight: var( --pc-font-weight-semibold );
	cursor: pointer;
}

.pc-faq__item .pc-card__text {
	margin: 14px 0 0;
}

@media ( max-width: 767px ) {
	.pc-section-inner {
		width: min( 100% - 32px, 1200px );
	}
}

/* Světlý režim zachovává zelenou značku i na pozadích a ikonách sekcí. */
:root[data-pc-theme='light'] .pc-landing {
	background-image: linear-gradient( 145deg, #ffffff 0%, #f2faf7 38%, #e8f6f1 72%, #dcefe9 100% );
}

:root[data-pc-theme='light'] .pc-hero,
:root[data-pc-theme='light'] .pc-section--ink {
	background-color: #e4f4ee;
	background-image: radial-gradient( ellipse 70% 100% at 84% 18%, rgba( 6, 171, 134, 0.2 ), transparent 68% ), linear-gradient( 120deg, #f1faf7 0%, #e0f2ec 100% );
}

:root[data-pc-theme='light'] .pc-hero::before,
:root[data-pc-theme='light'] .pc-hero::after {
	filter: brightness( 0.95 ) saturate( 1.1 );
	opacity: 0.7;
}

:root[data-pc-theme='light'] .pc-section--ink .pc-card__icon {
	background-color: #d2f0e7;
	color: #037e62;
}

:root[data-pc-theme='light'] .pc-cta {
	background-color: #d9f1e9;
	background-image: linear-gradient( 120deg, #eaf8f3 0%, #ccece1 100% );
	color: #131718;
}

:root[data-pc-theme='light'] .pc-cta :is(.pc-title, .pc-lead) {
	color: #131718;
}

@media ( prefers-reduced-motion: reduce ) {
	.pc-switch a,
	.pc-switch a[aria-current='page'],
	.pc-switch a.is-active,
	.pc-theme-toggle,
	.pc-theme-toggle__track,
	.pc-theme-toggle__thumb,
	.pc-theme-toggle__moon,
	.pc-theme-toggle__sun {
		animation: none;
		transition: none;
	}
}

@media ( prefers-reduced-motion: reduce ) {
	.pc-hero::before,
	.pc-hero::after {
		animation: none;
	}
}

.pc-hero a.wp-block-button__link[href='#jak-to-funguje'] {
	border: 1px solid var( --pc-color-orange-contrast ) !important;
	background-color: transparent !important;
	color: var( --pc-color-orange-contrast ) !important;
}

.pc-hero a.wp-block-button__link[href='#jak-to-funguje']:hover,
.pc-hero a.wp-block-button__link[href='#jak-to-funguje']:focus-visible {
	border-color: var( --pc-color-dark-orange ) !important;
	background-color: var( --pc-color-dark-orange ) !important;
	color: var( --pc-color-white ) !important;
}

/* Popis aplikace: editovatelné Gutenberg Bento sekce s integrovanými daty. */
.pc-app-page {
	--pc-app-ink: #122629;
	--pc-app-muted: #607477;
	--pc-app-accent: #06ab86;
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: clamp( 56px, 8vw, 104px ) max( 24px, calc( ( 100vw - 1160px ) / 2 ) ) 112px;
	color: var( --pc-app-ink );
	background:
		radial-gradient( ellipse at 50% 24%, rgba( 6, 171, 134, .11 ), transparent 43rem ),
		repeating-linear-gradient( 0deg, transparent 0 55px, rgba( 15, 89, 84, .035 ) 56px ),
		repeating-linear-gradient( 90deg, transparent 0 55px, rgba( 15, 89, 84, .035 ) 56px ),
		#edf3f3;
}
.pc-app-page::before,
.pc-app-page::after { content: ""; position: absolute; z-index: -1; pointer-events: none; }
.pc-app-page::before { inset: 8% -8%; opacity: .32; background: radial-gradient(circle, #06ab86 1px, transparent 1.5px); background-size: 34px 34px; mask-image: linear-gradient(90deg, #000, transparent 40%, transparent 60%, #000); }
.pc-app-page::after { width: 70vw; height: 70vw; max-width: 900px; max-height: 900px; left: 50%; top: 10%; transform: translateX(-50%); border: 1px solid rgba( 6, 171, 134, .12 ); border-radius: 50%; box-shadow: 0 0 0 54px rgba( 6, 171, 134, .025), 0 0 0 110px rgba( 6, 171, 134, .02); }
.pc-app-intro, .pc-app-bento { max-width: 1160px; margin-inline: auto; }
.pc-app-intro { position: relative; z-index: 2; max-width: 780px; margin-bottom: clamp( 50px, 7vw, 84px ); text-align: center; }
.pc-app-eyebrow { margin: 0 0 14px; color: #078d71; font-family: inherit; font-size: 11px; font-weight: 700; line-height: 1.4; letter-spacing: .18em; text-transform: uppercase; }
.pc-app-title { margin: 0 auto 20px; color: var( --pc-app-ink ); font-size: clamp( 2.4rem, 1.35rem + 4vw, 4.6rem ); line-height: 1.03; letter-spacing: -.045em; }
.pc-app-lead { max-width: 690px; margin: auto; color: var( --pc-app-muted ); font-size: clamp( 1rem, .9rem + .45vw, 1.2rem ); line-height: 1.75; }
.pc-app-bento-heading { position: relative; z-index: 1; max-width: 650px; margin: 0 auto 32px; text-align: center; color: var( --pc-app-muted ); }
.pc-app-section-title { margin: 0 0 12px; color: var( --pc-app-ink ); font-size: clamp( 1.8rem, 1.3rem + 2vw, 2.7rem ); letter-spacing: -.035em; }
.pc-bento-grid { display: grid; grid-template-columns: repeat( 12, minmax( 0, 1fr ) ); gap: 20px; align-items: stretch; }
.pc-bento-card { position: relative; min-width: 0; overflow: hidden; padding: clamp( 22px, 3vw, 34px ); border: 1px solid rgba( 54, 104, 105, .19 ); border-radius: 22px; background: linear-gradient( 145deg, rgba( 255,255,255,.73 ), rgba( 222,235,235,.7) ); box-shadow: 0 22px 56px rgba( 37, 72, 76, .09 ), inset 0 1px rgba(255,255,255,.9); backdrop-filter: blur( 12px ); transition: border-color .45s ease, box-shadow .45s ease, transform .65s cubic-bezier(.2,.8,.2,1); }
.pc-bento-card::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .42; background: linear-gradient( 130deg, rgba( 6,171,134,.09), transparent 42% ); }
.pc-bento-card:hover { transform: translateY(-3px); border-color: rgba(6,171,134,.4); box-shadow: 0 28px 64px rgba(37,72,76,.13), 0 0 28px rgba(6,171,134,.08), inset 0 1px rgba(255,255,255,.9); }
.pc-bento-card h3 { position: relative; margin: 0 0 10px; color: var(--pc-app-ink); font-size: clamp(1.2rem,1rem + .65vw,1.55rem); line-height: 1.2; letter-spacing: -.025em; }
.pc-bento-card p { position: relative; color: var(--pc-app-muted); line-height: 1.65; }
.pc-bento-card-fleet { grid-column: span 7; min-height: 380px; }
.pc-bento-card-supply { grid-column: span 5; }
.pc-bento-card-tools { grid-column: span 5; min-height: 300px; }
.pc-bento-card-analytics { grid-column: span 7; min-height: 300px; display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 16px; }
.pc-bento-dashboard, .pc-bento-meter, .pc-bento-chart { position: relative; margin-top: 22px; padding: 16px; border: 1px solid rgba(35,107,102,.17); border-radius: 14px; background: rgba(237,246,245,.76); box-shadow: 0 14px 34px rgba(38,80,78,.09), inset 0 1px white; color: #40585a; font: 500 10px/1.45 ui-monospace, SFMono-Regular, Consolas, monospace; }
.pc-bento-dashboard-top, .pc-bento-dashboard-head, .pc-bento-dashboard-row { display: grid; grid-template-columns: 1.6fr 1.25fr .6fr .5fr; gap: 8px; align-items: center; padding: 9px 2px; border-bottom: 1px solid rgba(35,107,102,.1); }
.pc-bento-dashboard-top { display:flex; justify-content:space-between; color:#078d71; font-size:9px; letter-spacing:.08em; }
.pc-bento-dashboard-live i { display:inline-block; width:6px; height:6px; margin-right:5px; border-radius:50%; background:#06ab86; box-shadow:0 0 9px #06ab86; }
.pc-bento-dashboard-head { color:#819496; font-size:9px; }
.pc-bento-dashboard-row:last-child { border:0; }
.pc-bento-dashboard-row b { color:#078d71; font-weight:600; }
.pc-bento-meter-row { display:grid; grid-template-columns:1fr auto; gap:10px; margin:14px 0; }
.pc-bento-meter-row b { color:#078d71; }
.pc-bento-meter-track { grid-column:1/-1; height:5px; overflow:hidden; border-radius:9px; background:rgba(48,99,96,.12); }
.pc-bento-meter-track i { display:block; width:var(--pc-meter-level); height:100%; border-radius:inherit; background:linear-gradient(90deg,#06ab86,#82d6bd); box-shadow:0 0 12px rgba(6,171,134,.45); }
.pc-bento-card-links { display:flex; gap:10px; flex-wrap:wrap; }
.pc-bento-card-links a { padding:7px 10px; border:1px solid rgba(6,171,134,.3); border-radius:999px; color:#087b67; font-size:12px; text-decoration:none; }
.pc-bento-tools-visual { position:absolute; right:7%; bottom:12%; display:flex; align-items:center; gap:16px; opacity:.4; transform:rotate(-7deg); }
.pc-bento-qr { width:74px; height:74px; display:grid; grid-template-columns:repeat(5,1fr); gap:3px; padding:6px; border:1px solid rgba(6,171,134,.4); border-radius:8px; }
.pc-bento-qr i { background:rgba(6,171,134,.55); border-radius:1px; }.pc-bento-qr i:nth-child(3n),.pc-bento-qr i:nth-child(4n+1) { background:transparent; }
.pc-bento-phone { width:52px; height:96px; padding:20px 7px 8px; border:1px solid rgba(6,171,134,.55); border-radius:10px; box-shadow:inset 0 0 18px rgba(6,171,134,.12); }
.pc-bento-phone i { display:block; height:4px; margin:7px 0; border-radius:3px; background:rgba(6,171,134,.55); }
.pc-bento-chart { height:190px; display:flex; flex-direction:column; justify-content:flex-end; padding:20px; perspective:600px; transform:rotateX(7deg); }
.pc-bento-chart-bars { height:135px; display:flex; align-items:flex-end; gap:9px; border-bottom:1px solid rgba(35,107,102,.22); background:repeating-linear-gradient(0deg,transparent 0 32px,rgba(35,107,102,.08) 33px); }
.pc-bento-chart-bars i { flex:1; height:var(--pc-bar-height); border-radius:4px 4px 0 0; background:linear-gradient(180deg,rgba(6,171,134,.85),rgba(6,171,134,.2)); box-shadow:0 0 14px rgba(6,171,134,.15); }
.pc-bento-chart-labels { display:flex; justify-content:space-between; margin-top:9px; color:#718788; font-size:9px; }
:root[data-pc-theme='dark'] .pc-app-page { --pc-app-ink:#eff8f6; --pc-app-muted:#a7bfbd; background:radial-gradient(ellipse at 50% 25%,rgba(6,171,134,.12),transparent 44rem),repeating-linear-gradient(0deg,transparent 0 55px,rgba(203,243,234,.035) 56px),repeating-linear-gradient(90deg,transparent 0 55px,rgba(203,243,234,.035) 56px),#11191b; }
:root[data-pc-theme='dark'] .pc-app-page::before { opacity:.18; }
:root[data-pc-theme='dark'] .pc-app-eyebrow { color:#51d8b7; }
:root[data-pc-theme='dark'] .pc-bento-card { border-color:rgba(151,219,207,.17); background:linear-gradient(145deg,rgba(32,49,50,.88),rgba(22,35,37,.8)); box-shadow:0 22px 56px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.05); }
:root[data-pc-theme='dark'] .pc-bento-card:hover { border-color:rgba(6,171,134,.55); box-shadow:0 26px 62px rgba(0,0,0,.26),0 0 30px rgba(6,171,134,.11),inset 0 1px rgba(255,255,255,.07); }
:root[data-pc-theme='dark'] :is(.pc-bento-dashboard,.pc-bento-meter,.pc-bento-chart) { color:#c0d3d1; border-color:rgba(151,219,207,.14); background:rgba(13,25,27,.65); box-shadow:inset 0 1px rgba(255,255,255,.035),0 12px 32px rgba(0,0,0,.17); }
:root[data-pc-theme='dark'] .pc-bento-card-links a { color:#75e0c5; }
@media(max-width:900px) { .pc-bento-card-fleet,.pc-bento-card-analytics { grid-column:span 7; }.pc-bento-card-supply,.pc-bento-card-tools { grid-column:span 5; }.pc-bento-grid { gap:14px; }.pc-bento-card { padding:22px; } }
@media(max-width:640px) { .pc-app-page { padding:58px 18px 72px; }.pc-app-intro { margin-bottom:52px; }.pc-bento-grid { grid-template-columns:1fr; gap:13px; }.pc-bento-card-fleet,.pc-bento-card-supply,.pc-bento-card-tools,.pc-bento-card-analytics { grid-column:1; min-height:0; }.pc-bento-card-fleet { min-height:340px; }.pc-bento-card-analytics { display:block; }.pc-bento-chart { height:170px; }.pc-bento-dashboard { padding:11px 9px; font-size:8px; }.pc-bento-dashboard-top,.pc-bento-dashboard-head,.pc-bento-dashboard-row { gap:4px; }.pc-bento-tools-visual { opacity:.24; right:5%; bottom:8%; }.pc-bento-card-tools p:not(.pc-bento-card-links) { max-width:85%; } }
@media(prefers-reduced-motion:reduce) { .pc-bento-card { transition:none; } }

.pc-hero__inner {
	display: grid;
	gap: clamp( 40px, 5vw, 64px );
	align-items: center;
	max-width: var( --pc-section-max );
	margin-inline: auto;
}

@media ( min-width: 1000px ) {
	.pc-hero__inner {
		grid-template-columns: minmax( 0, 0.85fr ) minmax( 0, 1.15fr );
	}
}

.pc-hero__title {
	margin: 0 0 var( --pc-space-6 );
	color: var( --pc-color-white );
	font-size: var( --pc-display-1 );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.05;
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.pc-hero__accent {
	color: var( --pc-color-orange-contrast );
}

.pc-hero__title mark.has-teal-color {
	color: var( --pc-color-orange-contrast ) !important;
}

.pc-hero__lead {
	max-width: 46ch;
	margin: 0 0 var( --pc-space-6 );
	color: var( --pc-color-white );
	font-size: var( --pc-lead-size );
	font-weight: var( --pc-font-weight-semibold );
	line-height: 1.55;
}

/* Hero je složené z nativních bloků – vynulovat okraje z flow layoutu,
 * odsazení řídí jednotlivé prvky přes margin-bottom. */
.pc-hero .pc-hero__inner > *,
.pc-hero .pc-hero__copy > * {
	margin-block-start: 0;
}

.pc-hero .pc-hero__inner > * {
	margin-block-end: 0;
}

/* Vyšší specificita okrajů přebíjí styly editoru pro h1 a p z theme.json. */
.pc-hero .pc-hero__title,
.pc-hero .pc-hero__lead {
	margin: 0 0 var( --pc-space-6 );
}

.pc-hero .pc-hero__more {
	margin: 0 0 var( --pc-space-7 );
	font-size: var( --pc-font-size-base );
	font-weight: var( --pc-font-weight-semibold );
}

.pc-hero__more a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var( --pc-color-white );
	text-decoration: none;
}

.pc-hero__more a::after {
	content: "";
	width: 14px;
	height: 14px;
	background-color: currentColor;
	-webkit-mask: var( --pc-icon-chevron-right ) center / contain no-repeat;
	mask: var( --pc-icon-chevron-right ) center / contain no-repeat;
}

.pc-hero__more a:hover,
.pc-hero__more a:focus-visible {
	color: var( --pc-color-teal-light );
}

.pc-hero {
	--pc-icon-chevron-right: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M5 3l4 4-4 4' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E" );
	--pc-icon-info: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='8' r='6.4' stroke='%23000' stroke-width='1.4'/%3E%3Cpath d='M8 7.2v3.4M8 5.2v.9' stroke='%23000' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E" );
	--pc-icon-chevron-down: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6.5l4 4 4-4' stroke='%23000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E" );
}

.pc-hero .pc-hero__actions {
	gap: var( --pc-space-4 );
	margin: 0;
}

/* Tlačítka (core/button) ve stylu .pc-btn */
.pc-hero .wp-block-button__link {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var( --pc-space-2 );
	min-height: 48px;
	padding: 0 26px;
	border: 1px solid var( --pc-color-teal );
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-teal );
	color: var( --pc-color-white );
	font-size: var( --pc-font-size-base );
	font-weight: var( --pc-font-weight-semibold );
	line-height: 1;
	text-decoration: none;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.pc-hero .wp-block-button__link:hover,
.pc-hero .wp-block-button__link:focus-visible {
	border-color: var( --pc-color-dark-teal );
	background-color: var( --pc-color-dark-teal );
	color: var( --pc-color-white );
}

.pc-hero .wp-block-button.is-style-outline > .wp-block-button__link {
	padding: 0 26px;
	border: 1px solid var( --pc-color-orange-contrast );
	background-color: transparent;
	color: var( --pc-color-orange-contrast );
}

.pc-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.pc-hero .wp-block-button.is-style-outline > .wp-block-button__link:focus-visible {
	background-color: var( --pc-color-dark-orange );
	color: var( --pc-color-white );
}

.pc-btn-icon--info .wp-block-button__link::before,
.pc-btn-icon--down .wp-block-button__link::before {
	content: "";
	flex: none;
	width: 16px;
	height: 16px;
	background-color: currentColor;
	-webkit-mask: var( --pc-icon-info ) center / contain no-repeat;
	mask: var( --pc-icon-info ) center / contain no-repeat;
}

.pc-btn-icon--down .wp-block-button__link::before {
	-webkit-mask-image: var( --pc-icon-chevron-down );
	mask-image: var( --pc-icon-chevron-down );
}

/* --- Náhled aplikace --- */

.pc-hero__visual,
.wp-block-printchart-app-preview {
	position: relative;
	min-width: 0;
}

.pc-appshot {
	display: grid;
	grid-template-columns: 168px minmax( 0, 1fr );
	border-radius: 10px;
	background-color: var( --pc-color-white );
	box-shadow: 0 30px 70px rgba( 0, 0, 0, 0.45 );
	overflow: hidden;
	font-size: 11px;
	line-height: 1.4;
	color: var( --pc-color-font-body );
}

.pc-appshot__side {
	padding: 14px 12px;
	background-color: #10181a;
	color: rgba( 255, 255, 255, 0.72 );
}

.pc-appshot__brand {
	margin-bottom: 12px;
	color: var( --pc-color-white );
}

.pc-appshot__user {
	display: flex;
	flex-direction: column;
	padding-bottom: 12px;
	margin-bottom: 4px;
	border-bottom: 1px solid rgba( 255, 255, 255, 0.1 );
	color: var( --pc-color-white );
	font-weight: var( --pc-font-weight-semibold );
}

.pc-appshot__user span {
	color: rgba( 255, 255, 255, 0.45 );
	font-size: 10px;
	font-weight: var( --pc-font-weight-regular );
}

.pc-appshot__group {
	margin: 14px 0 6px;
	color: rgba( 255, 255, 255, 0.35 );
	font-size: 9px;
	font-weight: var( --pc-font-weight-semibold );
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pc-appshot__nav {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pc-appshot__nav li {
	padding: 5px 8px;
	border-radius: 4px;
}

.pc-appshot__nav li.is-active {
	background-color: rgba( 6, 171, 134, 0.18 );
	color: var( --pc-color-teal-light );
	font-weight: var( --pc-font-weight-semibold );
}

.pc-appshot__main {
	display: flex;
	flex-direction: column;
	min-width: 0;
	background-color: var( --pc-color-white );
}

.pc-appshot__head {
	padding: 12px 14px;
	border-bottom: 1px solid var( --pc-color-grey-light );
	color: var( --pc-color-font-dark );
	font-size: 14px;
	font-weight: var( --pc-font-weight-bold );
}

.pc-appshot__toolbar {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 10px 14px;
}

.pc-appshot__search {
	flex: 1 1 110px;
	min-width: 90px;
	padding: 5px 10px;
	border: 1px solid var( --pc-color-grey-medium );
	border-radius: var( --pc-radius-pill );
	color: var( --pc-color-icons );
}

.pc-appshot__chip {
	padding: 5px 12px;
	border: 1px solid var( --pc-color-grey-light );
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-grey-faint );
	color: var( --pc-color-font-body );
	font-weight: var( --pc-font-weight-medium );
	white-space: nowrap;
}

.pc-appshot__chip.is-on {
	border-color: var( --pc-color-teal );
	background-color: var( --pc-color-teal );
	color: var( --pc-color-white );
}

.pc-appshot__table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.pc-appshot__table th,
.pc-appshot__table td {
	padding: 0 10px;
	height: 30px;
	border-bottom: 1px solid var( --pc-color-grey-light );
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.pc-appshot__table th {
	background-color: var( --pc-color-grey-faint );
	color: var( --pc-color-font-dark );
	font-size: 10px;
	font-weight: var( --pc-font-weight-semibold );
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.pc-appshot__table tbody tr:nth-child( even ) {
	background-color: var( --pc-table-zebra );
}

.pc-pill {
	display: inline-block;
	padding: 2px 8px;
	border-radius: var( --pc-radius-pill );
	font-size: 10px;
	font-style: normal;
	font-weight: var( --pc-font-weight-semibold );
	white-space: nowrap;
}

.pc-pill--ok { background-color: var( --pc-color-teal-light ); color: var( --pc-color-dark-teal ); }
.pc-pill--warn { background-color: var( --pc-color-light-orange ); color: var( --pc-color-dark-orange ); }
.pc-pill--err { background-color: var( --pc-color-error-bg ); color: var( --pc-color-error ); }
.pc-pill--run { background-color: var( --pc-color-grey-light ); color: var( --pc-color-font-body ); }
.pc-pill--low { background-color: var( --pc-color-grey-faint ); color: var( --pc-color-icons ); }
.pc-pill--mid { background-color: var( --pc-color-light-orange ); color: var( --pc-color-dark-orange ); }
.pc-pill--high { background-color: var( --pc-color-error-bg ); color: var( --pc-color-error ); }

.pc-appshot__pager {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 14px;
	color: var( --pc-color-icons );
}

.pc-appshot__pager b {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-font-dark );
	color: var( --pc-color-white );
	font-size: 10px;
}

.pc-appshot__card {
	position: absolute;
	right: -8px;
	bottom: -28px;
	width: 232px;
	padding: 14px;
	border: 1px solid var( --pc-color-grey-light );
	border-radius: 10px;
	background-color: var( --pc-color-white );
	box-shadow: 0 18px 40px rgba( 0, 0, 0, 0.35 );
	font-size: 11px;
	line-height: 1.45;
	color: var( --pc-color-font-body );
}

.pc-appshot__card-head {
	color: var( --pc-color-font-dark );
	font-size: 12px;
	font-weight: var( --pc-font-weight-bold );
}

.pc-appshot__card-sn,
.pc-appshot__card-note {
	margin: 4px 0 0;
	color: var( --pc-color-icons );
	font-size: 10px;
}

.pc-appshot__stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
	margin: 12px 0 10px;
	color: var( --pc-color-icons );
	font-size: 10px;
}

.pc-appshot__stats span {
	display: block;
	color: var( --pc-color-font-dark );
	font-size: 15px;
	font-weight: var( --pc-font-weight-bold );
	letter-spacing: -0.01em;
}

.pc-appshot__meter {
	height: 6px;
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-grey-light );
	overflow: hidden;
}

.pc-appshot__meter i {
	display: block;
	height: 100%;
	background-color: var( --pc-color-teal );
}

@media ( max-width: 599px ) {
	.pc-appshot {
		grid-template-columns: minmax( 0, 1fr );
	}
	.pc-appshot__side {
		display: none;
	}
	.pc-appshot__card {
		position: static;
		width: auto;
		margin-top: var( --pc-space-4 );
		box-shadow: none;
	}
}

/* Galerie snímků PrintChartu; při chybějících snímcích použije stávající náhled aplikace v úvodu. */
.pc-gallery {
	width: 100%;
	min-width: 0;
}

.pc-gallery__stage {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1.55;
	border: 1px solid rgba( 203, 243, 234, 0.2 );
	border-radius: 10px;
	background: linear-gradient( 145deg, rgba( 8, 18, 20, 0.98 ), rgba( 20, 34, 35, 0.96 ) );
	box-shadow: 0 30px 70px rgba( 0, 0, 0, 0.35 );
	isolation: isolate;
	touch-action: pan-y;
}

.pc-gallery__stage::before {
	position: absolute;
	z-index: 0;
	inset: 0;
	background: radial-gradient( ellipse at 54% 45%, rgba( 6, 171, 134, 0.08 ), transparent 70% );
	content: "";
	pointer-events: none;
}

.pc-gallery__slide {
	position: absolute;
	z-index: 1;
	inset: 0;
	display: grid;
	place-items: center;
	opacity: 0;
	visibility: hidden;
	transform: translate3d( 12px, 0, 0 ) scale( 0.996 );
	transition: opacity 0.8s ease, transform 0.8s ease, visibility 0s linear 0.8s;
}

.pc-gallery__slide.is-active {
	opacity: 1;
	visibility: visible;
	transform: translate3d( 0, 0, 0 ) scale( 1 );
	transition: opacity 0.8s ease, transform 0.8s ease, visibility 0s;
}

.pc-gallery__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.pc-gallery__arrow {
	position: absolute;
	z-index: 3;
	top: 50%;
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
	padding: 0;
	border: 1px solid rgba( 255, 255, 255, 0.38 );
	border-radius: 50%;
	background: rgba( 11, 20, 22, 0.78 );
	box-shadow: 0 8px 20px rgba( 0, 0, 0, 0.2 );
	color: white;
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
	transform: translateY( -50% );
	transition: background-color 0.18s ease, border-color 0.18s ease;
}

.pc-gallery__arrow:hover,
.pc-gallery__arrow:focus-visible {
	border-color: rgba( 203, 243, 234, 0.78 );
	background-color: rgba( 6, 81, 68, 0.9 );
}

.pc-gallery__arrow--prev { left: 12px; }
.pc-gallery__arrow--next { right: 12px; }

.pc-gallery__navigation {
	display: flex;
	align-items: center;
	gap: 9px;
	padding-top: 12px;
}

.pc-gallery__rotation {
	position: relative;
	display: grid;
	flex: 0 0 34px;
	width: 34px;
	height: 34px;
	place-items: center;
	padding: 0;
	border: 1px solid rgba( 255, 255, 255, 0.24 );
	border-radius: 50%;
	background: rgba( 16, 24, 26, 0.5 );
	color: var( --pc-color-teal-light );
	cursor: pointer;
}

.pc-gallery__rotation-icon,
.pc-gallery__rotation-icon::after {
	display: block;
	width: 3px;
	height: 12px;
	border-radius: 2px;
	background: currentColor;
	content: "";
}

.pc-gallery__rotation-icon {
	position: relative;
	transform: translateX( -3px );
}

.pc-gallery__rotation-icon::after {
	position: absolute;
	left: 6px;
}

.pc-gallery__rotation.is-paused .pc-gallery__rotation-icon {
	width: 0;
	height: 0;
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 11px solid currentColor;
	border-radius: 0;
	background: transparent;
	transform: translateX( 1px );
}

.pc-gallery__rotation.is-paused .pc-gallery__rotation-icon::after {
	display: none;
}

.pc-gallery__thumbs {
	display: flex;
	min-width: 0;
	gap: 9px;
	overflow-x: auto;
	padding: 0 2px 4px;
	scrollbar-width: thin;
}

.pc-gallery__thumb {
	flex: 0 0 76px;
	height: 52px;
	padding: 2px;
	overflow: hidden;
	border: 1px solid rgba( 255, 255, 255, 0.24 );
	border-radius: 5px;
	background: transparent;
	cursor: pointer;
	opacity: 0.72;
	transition: opacity 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.pc-gallery__thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.pc-gallery__thumb.is-active {
	border-color: var( --pc-color-teal );
	opacity: 1;
}

.pc-gallery__thumb:hover,
.pc-gallery__thumb:focus-visible {
	transform: translateY( -2px );
	opacity: 1;
}

/* Ekosystém navazuje na stávající systém karet a typografie PrintChartu. */
.pc-editable-section--ecosystem .pc-section-heading { text-align: center; }
.pc-ecosystem { --pc-ecosystem-gap: clamp( 28px, 6vw, 88px ); display: grid; grid-template-columns: minmax( 260px, .95fr ) minmax( 0, 1.45fr ); align-items: center; gap: var( --pc-ecosystem-gap ); max-width: 1050px; margin: 44px auto 0; }
.pc-ecosystem__platform, .pc-ecosystem__extension { position: relative; display: flex; align-items: flex-start; gap: 18px; overflow: hidden; border: 1px solid var( --pc-color-grey-light ); border-radius: 10px; background: linear-gradient( 145deg, #fff 0%, #f5faf8 100% ); color: var( --pc-color-font-body ); box-shadow: 0 12px 34px rgba( 13, 29, 33, .07 ); }
.pc-ecosystem__platform { min-height: 210px; align-items: center; padding: clamp( 24px, 3vw, 40px ); border-color: rgba( 6, 171, 134, .72 ); background: linear-gradient( 145deg, #dff5ec 0%, #effaf6 100% ); box-shadow: 0 20px 45px rgba( 13, 29, 33, .12 ), inset 4px 0 0 #06ab86, 0 0 0 1px rgba( 6, 171, 134, .08 ); }
.pc-ecosystem__extensions { display: grid; gap: 18px; }
.pc-ecosystem__extension { padding: 22px 24px; border-color: rgba( 6, 171, 134, .2 ); background: linear-gradient( 145deg, #fff 0%, #eaf6f1 100% ); transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.pc-ecosystem__extension::before { position: absolute; top: 18px; bottom: 18px; left: 0; width: 3px; border-radius: 0 3px 3px 0; background: var( --pc-color-teal ); content: ""; opacity: .55; transition: opacity .18s ease; }
.pc-ecosystem__extension:hover { transform: translateY(-3px); border-color: var( --pc-color-teal ); box-shadow: 0 16px 34px rgba( 13, 29, 33, .12 ), inset 3px 0 0 rgba( 6, 171, 134, .6 ); }
.pc-ecosystem__extension:hover::before { opacity: 1; }
.pc-ecosystem__mark { display: grid; flex: 0 0 42px; width: 42px; height: 42px; place-items: center; border: 1px solid rgba( 6, 171, 134, .28 ); border-radius: 8px; color: var( --pc-color-teal ); font-size: 13px; font-weight: 700; }
.pc-ecosystem__extension .pc-ecosystem__mark { background: #e4f5ee; }
.pc-ecosystem__platform .pc-ecosystem__mark { flex-basis: 54px; width: 54px; height: 54px; font-size: 16px; }
.pc-ecosystem__platform .pc-ecosystem__mark { border-color: #037e62; background: #037e62; color: #fff; box-shadow: 0 7px 18px rgba( 3, 126, 98, .2 ); }
.pc-ecosystem__platform h3 { color: #037e62; }
.pc-ecosystem__label { margin: 0 0 5px; color: var( --pc-color-teal ); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.pc-ecosystem__platform h3, .pc-ecosystem__extension h3 { margin: 0 0 8px; color: var( --pc-color-font-dark ); font-size: 20px; }
.pc-ecosystem__platform h3 { font-size: 27px; }
.pc-ecosystem__platform p:last-child, .pc-ecosystem__description { margin: 0; }
.pc-ecosystem__extension .pc-card__link { display: inline-block; margin-top: 9px; }
.pc-ecosystem__connector { position: absolute; top: 50%; left: calc( var( --pc-ecosystem-gap ) * -1 ); width: var( --pc-ecosystem-gap ); height: 1px; background: rgba( 6, 171, 134, .45 ); transition: background .18s ease, height .18s ease; }
.pc-ecosystem__extension:hover .pc-ecosystem__connector { height: 2px; background: var( --pc-color-teal ); }

/* Světlý režim ekosystému používá plné produktové barvy a kontrastní povrchy. */
:root[data-pc-theme='light'] .pc-editable-section--ecosystem {
	background-color: #f2f6f4;
	background-image:
		radial-gradient( ellipse 55% 70% at 18% 48%, rgba( 6, 171, 134, .09 ), transparent 72% ),
		linear-gradient( rgba( 9, 53, 45, .025 ) 1px, transparent 1px ),
		linear-gradient( 90deg, rgba( 9, 53, 45, .025 ) 1px, transparent 1px );
	background-size: auto, 38px 38px, 38px 38px;
}

:root[data-pc-theme='light'] .pc-editable-section--ecosystem .pc-eyebrow {
	border: 1px solid rgba( 6, 171, 134, .16 );
	background: #e1f3ed;
	color: #06785f;
}

:root[data-pc-theme='light'] .pc-editable-section--ecosystem .pc-title {
	color: #102b29;
}

:root[data-pc-theme='light'] .pc-ecosystem__platform {
	border-color: #087b65;
	background:
		radial-gradient( circle at 8% 15%, rgba( 128, 237, 207, .2 ), transparent 34% ),
		linear-gradient( 145deg, #0b6f5d 0%, #075646 100% );
	color: rgba( 238, 252, 248, .78 );
	box-shadow: 0 24px 50px rgba( 7, 86, 70, .22 ), inset 4px 0 0 #6ce1c2, inset 0 1px rgba( 255, 255, 255, .16 );
}

:root[data-pc-theme='light'] .pc-ecosystem__platform h3 {
	color: #fff;
}

:root[data-pc-theme='light'] .pc-ecosystem__platform .pc-ecosystem__label {
	color: #9cebd6;
}

:root[data-pc-theme='light'] .pc-ecosystem__platform .pc-ecosystem__mark {
	border-color: rgba( 255, 255, 255, .34 );
	background: #f2fffb;
	color: #07634f;
	box-shadow: 0 10px 24px rgba( 0, 0, 0, .18 );
}

:root[data-pc-theme='light'] .pc-ecosystem__extension {
	border-color: #d4ddda;
	background: linear-gradient( 145deg, #fff 0%, #f5f7f6 100% );
	box-shadow: 0 16px 38px rgba( 20, 43, 39, .11 ), inset 0 1px rgba( 255, 255, 255, .9 );
}

:root[data-pc-theme='light'] .pc-ecosystem__extension h3 {
	color: #142321;
}

:root[data-pc-theme='light'] .pc-ecosystem__extension:first-child {
	--pc-extension-accent: #b96f3d;
}

:root[data-pc-theme='light'] .pc-ecosystem__extension:last-child {
	--pc-extension-accent: #8062c2;
}

:root[data-pc-theme='light'] .pc-ecosystem__extension::before,
:root[data-pc-theme='light'] .pc-ecosystem__extension .pc-ecosystem__connector {
	background: var( --pc-extension-accent );
}

:root[data-pc-theme='light'] .pc-ecosystem__extension .pc-ecosystem__mark {
	border-color: color-mix( in srgb, var( --pc-extension-accent ) 40%, #fff );
	background: color-mix( in srgb, var( --pc-extension-accent ) 11%, #fff );
	color: var( --pc-extension-accent );
}

:root[data-pc-theme='light'] .pc-ecosystem__extension .pc-ecosystem__label,
:root[data-pc-theme='light'] .pc-ecosystem__extension .pc-card__link {
	color: var( --pc-extension-accent );
}

:root[data-pc-theme='light'] .pc-ecosystem__extension:hover {
	border-color: var( --pc-extension-accent );
	box-shadow: 0 20px 44px rgba( 20, 43, 39, .15 ), inset 3px 0 0 var( --pc-extension-accent );
}

:root[data-pc-theme='dark'] .pc-ecosystem__platform {
	border-color: rgba( 81, 216, 183, .72 );
	background: linear-gradient( 145deg, #17463d 0%, #18312f 100% );
	color: #c1cfcd;
	box-shadow: 0 20px 48px rgba( 0, 0, 0, .24 ), inset 4px 0 0 #51d8b7, 0 0 0 1px rgba( 81, 216, 183, .12 ), inset 0 1px rgba( 255, 255, 255, .06 );
}

:root[data-pc-theme='dark'] .pc-ecosystem__extension {
	border-color: rgba( 203, 243, 234, .15 );
	background: linear-gradient( 145deg, #202d2e 0%, #192426 100% );
	color: #b7c5c3;
	box-shadow: 0 16px 38px rgba( 0, 0, 0, .2 ), inset 0 1px rgba( 255, 255, 255, .045 );
}

:root[data-pc-theme='dark'] .pc-ecosystem__extension:hover {
	border-color: rgba( 81, 216, 183, .58 );
	box-shadow: 0 20px 42px rgba( 0, 0, 0, .28 ), 0 0 24px rgba( 6, 171, 134, .08 ), inset 3px 0 0 rgba( 81, 216, 183, .85 );
}

:root[data-pc-theme='dark'] .pc-ecosystem__platform h3,
:root[data-pc-theme='dark'] .pc-ecosystem__extension h3 { color: #f1f7f5; }

:root[data-pc-theme='dark'] .pc-ecosystem__platform h3 { color: #72e3c3; }

:root[data-pc-theme='dark'] .pc-ecosystem__label { color: #58dabc; }

:root[data-pc-theme='dark'] .pc-ecosystem__mark {
	border-color: rgba( 81, 216, 183, .32 );
	background: rgba( 6, 171, 134, .12 );
	color: #66ddbf;
}

:root[data-pc-theme='dark'] .pc-ecosystem__platform .pc-ecosystem__mark {
	border-color: #8be9d1;
	background: #cbf3ea;
	color: #075b49;
}

:root[data-pc-theme='dark'] .pc-ecosystem__extension::before { background: #51d8b7; opacity: .7; }

:root[data-pc-theme='dark'] .pc-ecosystem__extension .pc-ecosystem__mark { background: rgba( 6, 171, 134, .14 ); }

:root[data-pc-theme='dark'] .pc-ecosystem__extension .pc-card__link { color: #66ddbf; }

:root[data-pc-theme='dark'] .pc-ecosystem__connector { background: rgba( 81, 216, 183, .55 ); }

/* Spodní lišta novinek drží obsah stránky dostupný a má snadno ovladatelné zavření. */
.pc-news { position: fixed; z-index: 60; bottom: max( 16px, env( safe-area-inset-bottom ) ); left: 50%; display: flex; width: min( 1120px, calc( 100vw - 48px ) ); max-height: min( 160px, calc( 100vh - 32px ) ); align-items: center; gap: 20px; overflow-y: auto; padding: 17px 58px 17px 20px; border: 1px solid var( --pc-color-grey-light ); border-radius: 8px; background: var( --pc-color-white ); color: var( --pc-color-font-body ); box-shadow: 0 12px 38px rgba( 0, 0, 0, .2 ); opacity: 0; pointer-events: none; transform: translate( -50%, calc( 100% + 20px ) ); transition: opacity .22s ease, transform .28s cubic-bezier( .2, .75, .25, 1 ); }
.pc-news.is-visible { opacity: 1; pointer-events: auto; transform: translate( -50%, 0 ); }
.pc-news__label { flex: 0 0 auto; padding: 7px 11px; border: 1px solid rgba( 6, 171, 134, .24 ); border-radius: 4px; background: rgba( 6, 171, 134, .09 ); color: var( --pc-color-dark-teal ); font-size: 11px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.pc-news__label time { display: block; margin-top: 4px; color: var( --pc-color-icons ); font-size: 10px; font-weight: 400; letter-spacing: 0; text-transform: none; }
.pc-news__body { min-width: 0; flex: 1 1 auto; }
.pc-news__body h2 { margin: 0 0 4px; color: var( --pc-color-font-dark ); font-size: 18px; line-height: 1.3; }
.pc-news__body p { margin: 0; font-size: 14px; line-height: 1.45; }
.pc-news__link { display: inline-flex; min-height: 40px; flex: 0 0 auto; align-items: center; justify-content: center; padding: 0 18px; border: 1px solid var( --pc-color-teal ); border-radius: 4px; background: var( --pc-color-teal ); color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; transition: background-color .18s ease, border-color .18s ease; }
.pc-news__link:hover, .pc-news__link:focus-visible { border-color: var( --pc-color-dark-teal ); background: var( --pc-color-dark-teal ); color: #fff; }
.pc-news__close { position: absolute; top: 50%; right: 12px; display: grid; width: 34px; height: 34px; place-items: center; padding: 0; border: 1px solid var( --pc-color-grey-light ); border-radius: 50%; background: transparent; color: var( --pc-color-font-body ); font-size: 22px; line-height: 1; cursor: pointer; transform: translateY( -50% ); }
.pc-news__close:hover, .pc-news__close:focus-visible { border-color: var( --pc-color-teal ); color: var( --pc-color-dark-teal ); }
.pc-news__image { display: block; width: 64px; height: 64px; flex: 0 0 64px; border: 1px solid var( --pc-color-grey-light ); border-radius: 5px; object-fit: cover; }
:root[data-pc-theme='dark'] .pc-news { border-color: rgba( 139, 233, 209, .25 ); background: #17201f; color: #c3cecc; box-shadow: 0 12px 38px rgba( 0, 0, 0, .42 ); }
:root[data-pc-theme='dark'] .pc-news__label { border-color: rgba( 105, 221, 192, .28 ); background: rgba( 6, 171, 134, .14 ); color: #69ddc0; }
:root[data-pc-theme='dark'] .pc-news__body h2 { color: #f2f5f4; }
:root[data-pc-theme='dark'] .pc-news__close { border-color: rgba( 255, 255, 255, .2 ); color: #d6dfdd; }

/* Detail novinky sdílí šířku, barvy a typografii ostatních obsahových stránek. */
.pc-news-page { padding: clamp( 36px, 6vw, 78px ) 24px; }
.pc-news-article { width: min( 100%, 820px ); margin: 0 auto; padding: clamp( 24px, 5vw, 56px ); border: 1px solid var( --pc-color-grey-light ); border-radius: 9px; background: var( --pc-color-white ); box-shadow: 0 12px 34px rgba( 19, 23, 24, .07 ); }
.pc-news-article__back { display: inline-block; margin-bottom: 30px; color: var( --pc-color-dark-teal ); font-size: 14px; text-decoration: none; }
.pc-news-article__back:hover, .pc-news-article__back:focus-visible { text-decoration: underline; }
.pc-news-article__header { padding-bottom: 25px; border-bottom: 1px solid var( --pc-color-grey-light ); }
.pc-news-article__eyebrow { margin: 0 0 14px; color: var( --pc-color-dark-teal ); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.pc-news-article__eyebrow span { padding-inline: 5px; color: var( --pc-color-icons ); }
.pc-news-article__title { max-width: 700px; margin: 0; color: var( --pc-color-font-dark ); font-size: clamp( 34px, 5vw, 52px ); line-height: 1.12; letter-spacing: -.035em; }
.pc-news-article__date { margin: 15px 0 0; color: var( --pc-color-icons ); font-size: 14px; }
.pc-news-article__image { overflow: hidden; margin: 30px 0 0; border: 1px solid var( --pc-color-grey-light ); border-radius: 6px; background: var( --pc-color-grey-faint ); }
.pc-news-article__image img { display: block; width: 100%; height: auto; }
.pc-news-article__content { max-width: 680px; margin: 30px auto 0; color: var( --pc-color-font-body ); font-size: 17px; line-height: 1.75; }
.pc-news-article__content h2 { margin: 34px 0 12px; color: var( --pc-color-font-dark ); font-size: clamp( 23px, 3vw, 29px ); line-height: 1.25; }
.pc-news-article__content p { margin: 0 0 18px; }
.pc-news-article__content ul { padding-left: 1.25em; }
.pc-news-article__content li { margin: 0 0 8px; }
.pc-news-article__footer { max-width: 680px; margin: 28px auto 0; padding-top: 22px; border-top: 1px solid var( --pc-color-grey-light ); }
.pc-news-article__button { display: inline-flex; min-height: 46px; align-items: center; gap: 12px; padding: 0 20px; border: 1px solid var( --pc-color-teal ); border-radius: 4px; background: var( --pc-color-teal ); color: #fff; font-weight: 600; text-decoration: none; transition: background-color .18s ease, transform .18s ease; }
.pc-news-article__button:hover { transform: translateY( -1px ); background: var( --pc-color-dark-teal ); }
:root[data-pc-theme='dark'] .pc-news-article { border-color: rgba( 139, 233, 209, .2 ); background: #171f1e; box-shadow: 0 14px 38px rgba( 0, 0, 0, .18 ); }
:root[data-pc-theme='dark'] .pc-news-article__back, :root[data-pc-theme='dark'] .pc-news-article__eyebrow { color: #69ddc0; }
:root[data-pc-theme='dark'] .pc-news-article__header, :root[data-pc-theme='dark'] .pc-news-article__footer { border-color: rgba( 255, 255, 255, .12 ); }
@media ( max-width: 767px ) { .pc-news-page { padding: 24px 14px 40px; } .pc-news-article { padding: 22px 19px; } .pc-news-article__back { margin-bottom: 22px; } .pc-news-article__content { font-size: 16px; } }

@media ( max-width: 767px ) {
	.pc-ecosystem { --pc-ecosystem-gap: 22px; grid-template-columns: 1fr; gap: var( --pc-ecosystem-gap ); margin-top: 28px; }
	.pc-ecosystem__platform { min-height: 0; }
	.pc-ecosystem__platform::after { content: ""; position: absolute; bottom: calc( var( --pc-ecosystem-gap ) * -1 ); left: -1px; width: 1px; height: var( --pc-ecosystem-gap ); background: rgba( 6, 171, 134, .5 ); }
	.pc-ecosystem__extensions { gap: 16px; padding-left: 20px; border-left: 1px solid rgba( 6, 171, 134, .5 ); }
	.pc-ecosystem__extension { padding: 18px; }
	.pc-ecosystem__connector { top: 21px; left: -21px; width: 20px; }
	.pc-gallery__thumb { flex-basis: 80px; height: 56px; }
	.pc-news { bottom: max( 10px, env( safe-area-inset-bottom ) ); display: grid; width: calc( 100vw - 20px ); max-height: min( 42vh, 320px ); max-height: min( 42svh, 320px ); grid-template-columns: 54px minmax( 0, 1fr ); gap: 9px 12px; padding: 15px 44px 15px 15px; border-radius: 8px; }
	.pc-news__label { grid-column: 1 / -1; justify-self: start; padding: 5px 9px; }
	.pc-news__label time { display: inline; margin: 0 0 0 8px; }
	.pc-news__image { width: 54px; height: 54px; grid-column: 1; grid-row: 2; }
	.pc-news__body { grid-column: 1 / -1; grid-row: 2; }
	.pc-news.has-image .pc-news__body { grid-column: 2; }
	.pc-news__body h2 { font-size: 16px; }
	.pc-news__body p { font-size: 13px; }
	.pc-news__link { min-height: 38px; grid-column: 1 / -1; justify-self: start; padding-inline: 15px; }
	.pc-news__close { top: 13px; right: 11px; transform: none; }
}
@media ( prefers-reduced-motion: reduce ) {
	.pc-gallery__image, .pc-gallery__thumb, .pc-ecosystem__extension, .pc-ecosystem__connector, .pc-news, .pc-news__link { transition: none; }
}

/* --------------------------------------------------------------------------
 * Čísla
 * ----------------------------------------------------------------------- */

.pc-stats {
	display: grid;
	gap: var( --pc-space-6 );
	grid-template-columns: repeat( 2, 1fr );
	max-width: var( --pc-section-max );
	margin-inline: auto;
}

@media ( min-width: 900px ) {
	.pc-stats {
		grid-template-columns: repeat( 4, 1fr );
	}
}

.pc-stat__value {
	display: block;
	color: var( --pc-color-teal );
	font-size: var( --pc-display-2 );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.pc-stat:nth-child( even ) .pc-stat__value {
	color: var( --pc-color-orange-contrast );
}

.pc-stat__label {
	display: block;
	margin-top: var( --pc-space-2 );
	color: var( --pc-color-font-body );
	font-size: var( --pc-font-size-base );
}

/* --------------------------------------------------------------------------
 * Karty
 * ----------------------------------------------------------------------- */

.pc-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var( --pc-space-3 );
	height: 100%;
	padding: var( --pc-space-7 );
	border: var( --pc-border-subtle );
	border-radius: var( --pc-card-radius-lg );
	background-color: var( --pc-color-white );
}

.pc-section--ink .pc-card {
	border-color: rgba( 255, 255, 255, 0.1 );
	background-color: #1c2325;
}

.pc-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin-bottom: var( --pc-space-2 );
	border-radius: 12px;
	background-color: var( --pc-color-teal-light );
	color: var( --pc-color-dark-teal );
	font-size: var( --pc-font-size-lg );
	font-weight: var( --pc-font-weight-bold );
}

.pc-card:nth-child( even ) .pc-card__icon {
	background-color: var( --pc-color-light-orange );
	color: var( --pc-color-dark-orange );
}

.pc-section--ink .pc-card__icon {
	background-color: rgba( 6, 171, 134, 0.2 );
	color: var( --pc-color-teal-light );
}

.pc-section--ink .pc-card:nth-child( even ) .pc-card__icon {
	background-color: rgba( 255, 120, 23, 0.18 );
	color: var( --pc-color-orange );
}

.pc-card__title {
	margin: 0;
	color: var( --pc-color-font-dark );
	font-size: var( --pc-font-size-lg );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.3;
}

.pc-section--ink .pc-card__title {
	color: var( --pc-color-white );
}

.pc-card__text {
	margin: 0;
	color: var( --pc-color-font-body );
	font-size: var( --pc-font-size-base );
	line-height: 1.6;
}

.pc-section--ink .pc-card__text {
	color: #a9b2b3;
}

/* --------------------------------------------------------------------------
 * Split (text + vizuál)
 * ----------------------------------------------------------------------- */

.pc-split {
	display: grid;
	gap: clamp( 32px, 5vw, 64px );
	align-items: start;
}

.pc-split--center {
	align-items: center;
}

@media ( min-width: 900px ) {
	.pc-split {
		grid-template-columns: 1fr 1fr;
	}
	.pc-split--reverse > :first-child {
		order: 2;
	}
}

.pc-checklist {
	margin: 0 0 var( --pc-space-6 );
	padding: 0;
	list-style: none;
	display: grid;
	gap: var( --pc-space-3 );
}

.pc-checklist li {
	position: relative;
	padding-left: 30px;
	color: var( --pc-color-font-body );
	font-size: var( --pc-font-size-base );
	line-height: 1.6;
}

.pc-checklist li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 4px;
	width: 18px;
	height: 18px;
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-teal );
	background-image: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2 4.8 8.5 9.5 3.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E" );
	background-size: 14px 14px;
	background-position: center;
	background-repeat: no-repeat;
}

.pc-section--ink .pc-checklist li {
	color: #aeb7b8;
}

.pc-panel {
	display: grid;
	gap: var( --pc-space-4 );
	align-content: start;
	padding: var( --pc-space-7 );
	border: var( --pc-border-subtle );
	border-radius: var( --pc-card-radius-lg );
	background-color: var( --pc-color-grey-faint );
}

.pc-panel--accent {
	border-color: transparent;
	background-color: var( --pc-color-teal-light );
}

/* --------------------------------------------------------------------------
 * Kroky
 * ----------------------------------------------------------------------- */

.pc-steps {
	display: grid;
	gap: var( --pc-space-6 );
	counter-reset: pc-step;
}

@media ( min-width: 900px ) {
	.pc-steps {
		grid-template-columns: repeat( 3, 1fr );
	}
}

.pc-step {
	position: relative;
	padding: var( --pc-space-7 );
	border: 1px solid rgba( 255, 255, 255, 0.1 );
	border-radius: var( --pc-card-radius-lg );
	background-color: #1c2325;
}

.pc-step__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	margin-bottom: var( --pc-space-5 );
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-teal );
	color: var( --pc-color-white );
	font-size: var( --pc-font-size-base );
	font-weight: var( --pc-font-weight-bold );
}

/* --------------------------------------------------------------------------
 * Ceník
 * ----------------------------------------------------------------------- */

.pc-plans {
	display: grid;
	gap: var( --pc-space-6 );
	align-items: stretch;
}

@media ( min-width: 700px ) {
	.pc-plans {
		grid-template-columns: repeat( 2, 1fr );
	}
}

@media ( min-width: 1100px ) {
	.pc-plans {
		grid-template-columns: repeat( 4, 1fr );
	}
}

.pc-plan {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: var( --pc-space-7 );
	border: var( --pc-border-subtle );
	border-radius: var( --pc-card-radius-lg );
	background-color: var( --pc-color-white );
}

.pc-plan--featured {
	border-color: var( --pc-color-teal );
	box-shadow: 0 12px 32px rgba( 6, 171, 134, 0.14 );
}

.pc-plan__badge {
	position: absolute;
	top: -13px;
	left: var( --pc-space-7 );
	padding: 5px 12px;
	border-radius: var( --pc-radius-pill );
	background-color: var( --pc-color-teal );
	color: var( --pc-color-white );
	font-size: var( --pc-font-size-xs );
	font-weight: var( --pc-font-weight-semibold );
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.pc-plan__name {
	margin: 0 0 var( --pc-space-1 );
	color: var( --pc-color-font-dark );
	font-size: var( --pc-display-3 );
	font-weight: var( --pc-font-weight-bold );
}

.pc-plan__for {
	margin: 0 0 var( --pc-space-5 );
	color: var( --pc-color-icons );
	font-size: var( --pc-font-size-sm );
	line-height: 1.5;
	min-height: 3em;
}

.pc-plan__price {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 4.5em;
	margin: 0 0 var( --pc-space-6 );
	padding-bottom: var( --pc-space-6 );
	border-bottom: var( --pc-border-subtle );
	color: var( --pc-color-font-dark );
	font-size: var( --pc-font-size-xl );
	font-weight: var( --pc-font-weight-bold );
	line-height: 1.25;
}

.pc-plan__price small {
	display: block;
	margin-top: var( --pc-space-1 );
	color: var( --pc-color-icons );
	font-size: var( --pc-font-size-sm );
	font-weight: var( --pc-font-weight-regular );
}

.pc-plan .pc-checklist {
	flex: 1 1 auto;
	margin-bottom: var( --pc-space-6 );
}

.pc-plan .pc-checklist li.is-off {
	color: var( --pc-color-icons );
	opacity: 0.75;
}

.pc-plan .pc-checklist li.is-off::before {
	background-color: var( --pc-color-grey-medium );
	background-image: url( "data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4 4l4 4M8 4l-4 4' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E" );
}

.pc-plan .pc-btn {
	width: 100%;
}

/* --------------------------------------------------------------------------
 * Závěrečné CTA a patička
 * ----------------------------------------------------------------------- */

.pc-cta {
	padding: clamp( 40px, 6vw, 72px );
	border-radius: var( --pc-card-radius-lg );
	background-color: var( --pc-color-dark-teal );
	background-image: radial-gradient( ellipse 42% 90% at 96% 0%, rgba( 255, 120, 23, 0.2 ), transparent 72% ), radial-gradient( 70% 120% at 15% 0%, rgba( 6, 171, 134, 0.75 ), transparent 65% );
	color: var( --pc-color-white );
	text-align: center;
}

.pc-cta .pc-title,
.pc-cta .pc-lead {
	color: var( --pc-color-white );
}

.pc-cta .pc-lead {
	margin-inline: auto;
	opacity: 0.85;
}

.pc-site-footer {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background-color: var( --pc-color-font-dark );
	background-image: radial-gradient( ellipse at 12% 0%, rgba( 6, 171, 134, 0.07 ), transparent 34% );
	color: var( --pc-color-white );
	padding: 34px var( --pc-space-6 ) 18px;
	font-size: var( --pc-font-size-base );
}

.pc-site-footer::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient( 90deg, transparent, rgba( 203, 243, 234, 0.32 ), transparent );
}

.pc-site-footer__inner.wp-block-group {
	display: grid;
	grid-template-columns: minmax( 180px, 0.85fr ) minmax( 0, 2fr );
	align-items: start;
	gap: clamp( 32px, 6vw, 72px );
	max-width: var( --pc-section-max );
	margin-inline: auto;
}

.pc-site-footer__brand {
	flex: 0 1 auto;
}

.pc-site-footer__claim {
	margin: 12px 0 0;
	color: rgba( 255, 255, 255, 0.72 );
	font-size: var( --pc-font-size-base );
	line-height: 1.5;
}

/* Čtyři editovatelné skupiny navigace patičky. */
.pc-site-footer__cols.wp-block-group {
	display: grid;
	grid-template-columns: repeat( 4, minmax( 0, 1fr ) );
	align-items: start;
	gap: 24px;
}

.pc-site-footer__cols > div {
	min-width: 0;
	align-self: flex-start;
}

.pc-site-footer h3 {
	margin: 0 0 10px;
	color: var( --pc-color-white );
	font-size: var( --pc-font-size-base );
	font-weight: var( --pc-font-weight-semibold );
}

.pc-footer-flow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px;
	max-width: var( --pc-section-max );
	margin: 24px auto;
	padding: 16px 0;
	border-block: 1px solid rgba( 255, 255, 255, 0.12 );
	color: rgba( 255, 255, 255, 0.68 );
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.pc-footer-flow i {
	width: 24px;
	height: 1px;
	background: rgba( 6, 171, 134, 0.75 );
}

.pc-footer-flow b {
	color: #06ab86;
}

.pc-site-footer ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 6px;
}

.pc-site-footer a {
	color: rgba( 255, 255, 255, 0.88 );
	font-size: var( --pc-font-size-base );
	text-decoration: none;
}

.pc-site-footer a:hover,
.pc-site-footer a:focus-visible {
	color: var( --pc-color-teal );
}

.pc-site-footer .pc-logo:hover,
.pc-site-footer .pc-logo:focus-visible,
.pc-site-footer .pc-logo:active {
	color: rgba( 255, 255, 255, 0.88 );
}

.pc-site-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: var( --pc-section-max );
	gap: 12px 24px;
	margin: 24px auto 0;
	color: rgba( 255, 255, 255, 0.72 );
	font-size: var( --pc-font-size-sm );
}

.pc-site-footer__bottom .pc-site-footer__bottom {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
}

.pc-site-footer__legal {
	display: flex;
	align-items: center;
	gap: 20px;
}

.pc-footer-tech {
	position: absolute;
	right: max( 24px, calc( ( 100vw - var( --pc-section-max ) ) / 2 ) );
	bottom: 66px;
	width: 136px;
	height: 46px;
	border: 1px solid rgba( 203, 243, 234, 0.12 );
	border-radius: 8px;
	background-image: linear-gradient( 90deg, rgba( 203, 243, 234, 0.07 ) 1px, transparent 1px ), linear-gradient( rgba( 203, 243, 234, 0.07 ) 1px, transparent 1px );
	background-size: 12px 12px;
	opacity: 0.75;
	pointer-events: none;
}

.pc-footer-tech::before,
.pc-footer-tech::after {
	content: "";
	position: absolute;
	display: block;
	background: rgba( 203, 243, 234, 0.48 );
}

.pc-footer-tech::before {
	left: 10px;
	top: 10px;
	width: 64px;
	height: 18px;
	background: linear-gradient( 90deg, rgba( 203, 243, 234, 0.48 ) 0 44px, transparent 44px ), linear-gradient( rgba( 203, 243, 234, 0.34 ) 0 1px, transparent 1px );
	background-size: 100% 1px, 100% 9px;
	background-repeat: no-repeat, repeat-y;
}

.pc-footer-tech::after {
	left: 52px;
	top: 20px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	box-shadow: 0 0 8px rgba( 203, 243, 234, 0.7 );
}

/* Přepínač režimu v hlavičce. */
.pc-theme-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	margin-left: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	transition: transform 180ms ease;
}

.pc-theme-toggle:hover {
	transform: translateY( -1px );
}

.pc-theme-toggle:active {
	transform: scale( 0.96 );
}

.pc-theme-toggle:focus-visible {
	border-radius: var( --pc-radius-pill );
	outline: 2px solid var( --pc-color-teal-light );
	outline-offset: 4px;
}

.pc-theme-toggle__track {
	position: relative;
	width: 48px;
	height: 28px;
	border: 2px solid #aeb8c8;
	border-radius: var( --pc-radius-pill );
	background: #ffffff;
	transition: background-color 260ms ease, border-color 260ms ease;
}

.pc-theme-toggle__thumb {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #8f9bad;
	transition: transform 260ms cubic-bezier( 0.2, 0.8, 0.2, 1 ), background-color 260ms ease;
}

.pc-theme-toggle__moon,
.pc-theme-toggle__sun {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 13px;
	height: 13px;
	fill: none;
	stroke: #ffffff;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: opacity 180ms ease, transform 260ms cubic-bezier( 0.2, 0.8, 0.2, 1 );
}

.pc-theme-toggle__moon {
	opacity: 1;
	transform: translate( -50%, -50% ) rotate( 0 );
}

.pc-theme-toggle__sun {
	opacity: 0;
	transform: translate( -50%, -50% ) rotate( -75deg ) scale( 0.65 );
}

.pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__track {
	border-color: var( --pc-color-teal );
	background-color: var( --pc-color-teal );
}

.pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__thumb {
	transform: translateX( 20px );
	background-color: #ffffff;
}

.pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__moon {
	opacity: 0;
	transform: translate( -50%, -50% ) rotate( 75deg ) scale( 0.65 );
}

.pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__sun {
	opacity: 1;
	transform: translate( -50%, -50% ) rotate( 0 ) scale( 1 );
	stroke: var( --pc-color-teal );
}

@keyframes pc-switch-select {
	from { opacity: 0.65; transform: scale( 0.94 ); }
	to { opacity: 1; transform: scale( 1 ); }
}

/* Světlý režim používá neutrální tóny z barevné palety Printchart. */
:root[data-pc-theme='light'] {
	--pc-color-teal: #757d87;
	--pc-color-dark-teal: #3c4446;
	--pc-color-teal-light: #e1e6ea;
	--pc-bg-page: #f1f2f3;
	--pc-bg-surface: #ffffff;
	--pc-bg-control: #f1f2f3;
	--pc-border-color: #c3ced9;
	--pc-border-color-subtle: #e1e6ea;
}

/* Stavové stránky respektují stejný přepínač barevného režimu jako web. */
:root[data-pc-theme='dark'] .pc-status-page {
	--pc-status-bg: var( --pc-color-font-dark );
	background-image:
		radial-gradient( circle at 82% 48%, rgba( 6, 171, 134, 0.15 ), transparent 27rem ),
		linear-gradient( 135deg, var( --pc-color-font-dark ), var( --pc-color-font-dark ) );
	color: var( --pc-color-white );
}

:root[data-pc-theme='dark'] .pc-status-page .pc-display {
	color: var( --pc-color-white );
}

:root[data-pc-theme='dark'] .pc-status-page .pc-lead {
	color: #aeb7b8;
}

:root[data-pc-theme='dark'] .pc-status-page .pc-btn--ghost {
	border-color: rgba( 255, 255, 255, 0.28 );
	color: var( --pc-color-white );
}

:root[data-pc-theme='dark'] .pc-status-page .pc-btn--ghost:hover,
:root[data-pc-theme='dark'] .pc-status-page .pc-btn--ghost:focus-visible {
	border-color: var( --pc-color-teal );
	color: var( --pc-color-teal-light );
}

:root[data-pc-theme='dark'] .pc-status-visual {
	border-color: rgba( 255, 255, 255, 0.1 );
	background: #1c2325;
	box-shadow: 0 28px 80px rgba( 0, 0, 0, 0.32 );
}

:root[data-pc-theme='dark'] .pc-status-visual__top {
	border-color: rgba( 255, 255, 255, 0.1 );
}

:root[data-pc-theme='dark'] .pc-status-visual__top i,
:root[data-pc-theme='dark'] .pc-status-visual__label,
:root[data-pc-theme='dark'] .pc-status-visual__legend {
	color: #aeb7b8;
}

:root[data-pc-theme='dark'] .pc-status-visual__label b {
	background: rgba( 255, 255, 255, 0.1 );
	color: var( --pc-color-white );
}

:root[data-pc-theme='dark'] .pc-status-visual--ready .pc-status-visual__label b {
	background: rgba( 6, 171, 134, 0.18 );
	color: var( --pc-color-teal-light );
}

:root[data-pc-theme='dark'] .pc-status-visual__chart {
	border-color: rgba( 255, 255, 255, 0.14 );
}

:root[data-pc-theme='dark'] .pc-status-visual__steps::before {
	background: rgba( 255, 255, 255, 0.16 );
}

:root[data-pc-theme='dark'] .pc-status-visual__steps span {
	color: #aeb7b8;
}

:root[data-pc-theme='dark'] .pc-status-visual__steps span::before {
	border-color: #1c2325;
}

:root[data-pc-theme='dark'] .pc-status-visual__skeleton i {
	border-color: rgba( 255, 255, 255, 0.12 );
	background: rgba( 255, 255, 255, 0.06 );
}

:root[data-pc-theme='dark'] .pc-status-visual__skeleton i::before {
	background: #757d87;
}

:root[data-pc-theme='dark'] .pc-status-visual__skeleton i::after {
	background: rgba( 255, 255, 255, 0.18 );
}

:root[data-pc-theme='dark'] .pc-status-visual__chart {
	background-image: repeating-linear-gradient( to bottom, transparent 0, transparent 37px, rgba( 255, 255, 255, 0.08 ) 38px, transparent 39px );
}

:root[data-pc-theme='dark'] .pc-status-visual__chart span {
	background: rgba( 203, 243, 234, 0.45 );
}

:root[data-pc-theme='dark'] .pc-status-visual__chart span:nth-child( 3n ) {
	background: rgba( 6, 171, 134, 0.5 );
}

:root[data-pc-theme='dark'] .pc-status-visual__chart span:nth-child( 4n ) {
	background: var( --pc-color-teal );
}

:root[data-pc-theme='light'] body {
	background-color: #f1f2f3;
}

:root[data-pc-theme='light'] .pc-landing {
	background-color: transparent;
	background-image: linear-gradient( 145deg, #ffffff 0%, #f7f7f8 44%, #e1e6ea 100% );
	background-attachment: fixed;
}

:root[data-pc-theme='light'] .pc-section--light,
:root[data-pc-theme='light'] .pc-section--white {
	background-color: transparent;
}

:root[data-pc-theme='light'] .pc-site-header,
:root[data-pc-theme='light'] .pc-site-footer {
	background-color: #f1f2f3;
	color: #3c4446;
}

:root[data-pc-theme='light'] .pc-site-header {
	background-color: #fff;
	box-shadow: 0 1px 0 rgba( 19, 23, 24, 0.08 );
}

:root[data-pc-theme='light'] .pc-site-footer {
	background-color: #064c3b;
	background-image: radial-gradient( ellipse at 88% 100%, rgba( 214, 54, 63, 0.28 ), transparent 38% ), linear-gradient( 215deg, #075a43 0%, #064c3b 55%, #043a30 100% );
}

:root[data-pc-theme='light'] .pc-site-footer::before {
	background: linear-gradient( 90deg, transparent, rgba( 203, 243, 234, 0.42 ), transparent );
}

:root[data-pc-theme='light'] .pc-site-header .pc-logo,
:root[data-pc-theme='light'] .pc-site-header .pc-nav a {
	color: #000000;
}

:root[data-pc-theme='light'] .pc-site-header .pc-logo:hover,
:root[data-pc-theme='light'] .pc-site-header .pc-logo:focus-visible,
:root[data-pc-theme='light'] .pc-site-header .pc-logo:active {
	color: #000000;
}

:root[data-pc-theme='light'] .pc-site-footer .pc-logo,
:root[data-pc-theme='light'] .pc-site-footer a,
:root[data-pc-theme='light'] .pc-site-footer h3 {
	color: #fff;
}

:root[data-pc-theme='light'] .pc-site-footer__claim,
:root[data-pc-theme='light'] .pc-site-footer__bottom {
	color: rgba( 255, 255, 255, 0.78 );
}

:root[data-pc-theme='light'] .pc-site-footer a:hover,
:root[data-pc-theme='light'] .pc-site-footer a:focus-visible {
	color: #cbf3ea;
}

:root[data-pc-theme='light'] .pc-site-footer .pc-logo:hover,
:root[data-pc-theme='light'] .pc-site-footer .pc-logo:focus-visible,
:root[data-pc-theme='light'] .pc-site-footer .pc-logo:active {
	color: #fff;
}

:root[data-pc-theme='light'] .pc-switch {
	border-color: #c3ced9;
}

:root[data-pc-theme='light'] .pc-switch a {
	color: #3c4446;
}

:root[data-pc-theme='light'] .pc-switch a[aria-current='page'],
:root[data-pc-theme='light'] .pc-switch a.is-active {
	background-color: #06ab86;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-site-header .pc-btn .wp-block-button__link {
	border-color: #06ab86;
	background-color: #06ab86;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-theme-toggle {
	color: #3c4446;
}

:root[data-pc-theme='light'] .pc-theme-toggle:hover,
:root[data-pc-theme='light'] .pc-theme-toggle:focus-visible {
	color: #131718;
}

:root[data-pc-theme='light'] .pc-theme-toggle__track {
	border-color: #aeb8c8;
	background-color: #ffffff;
}

:root[data-pc-theme='light'] .pc-theme-toggle__thumb {
	background-color: #8f9bad;
}

:root[data-pc-theme='light'] .pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__track {
	border-color: #06ab86;
	background-color: #06ab86;
}

:root[data-pc-theme='light'] .pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__thumb {
	background-color: #fff;
}

:root[data-pc-theme='light'] .pc-theme-toggle[aria-pressed='true'] .pc-theme-toggle__sun {
	stroke: #06ab86;
}

:root[data-pc-theme='light'] .pc-btn--primary,
:root[data-pc-theme='light'] .pc-site-header .pc-btn {
	border-color: #06ab86;
	background-color: #06ab86;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-btn--primary:hover,
:root[data-pc-theme='light'] .pc-btn--primary:focus-visible,
:root[data-pc-theme='light'] .pc-site-header .pc-btn:hover,
:root[data-pc-theme='light'] .pc-site-header .pc-btn:focus-visible {
	border-color: #037e62;
	background-color: #037e62;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-site-header .pc-btn .wp-block-button__link:hover,
:root[data-pc-theme='light'] .pc-site-header .pc-btn .wp-block-button__link:focus-visible {
	border-color: #037e62;
	background-color: #037e62;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-hero .wp-block-button__link {
	border-color: #06ab86;
	background-color: #06ab86;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-hero .wp-block-button__link:hover,
:root[data-pc-theme='light'] .pc-hero .wp-block-button__link:focus-visible {
	border-color: #037e62;
	background-color: #037e62;
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-hero .wp-block-button.is-style-outline > .wp-block-button__link {
	border-color: var( --pc-color-dark-orange );
	background-color: transparent;
	color: var( --pc-color-dark-orange );
}

:root[data-pc-theme='light'] .pc-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover,
:root[data-pc-theme='light'] .pc-hero .wp-block-button.is-style-outline > .wp-block-button__link:focus-visible {
	background-color: var( --pc-color-dark-orange );
	color: #ffffff;
}

:root[data-pc-theme='light'] .pc-hero__title mark.has-teal-color {
	color: var( --pc-color-dark-orange ) !important;
}

:root[data-pc-theme='light'] .pc-hero,
:root[data-pc-theme='light'] .pc-section--ink {
	background-color: #dff4ed;
	background-image: radial-gradient( ellipse 62% 88% at 88% 8%, rgba( 6, 171, 134, 0.24 ), transparent 70% ), linear-gradient( 120deg, #effaf6 0%, #d4f0e6 55%, #c3e9dc 100% );
	color: #263b35;
}

:root[data-pc-theme='light'] .pc-hero::before,
:root[data-pc-theme='light'] .pc-hero::after {
	filter: none;
	opacity: 0.58;
}

:root[data-pc-theme='light'] .pc-section::before {
	filter: brightness( 0.8 ) saturate( 0.76 );
	opacity: 0.13;
}

:root[data-pc-theme='light'] .pc-section--ink::before {
	opacity: 0.2;
}

:root[data-pc-theme='light'] .pc-hero :is(.pc-hero__title, .pc-hero__lead, .pc-hero__more a),
:root[data-pc-theme='light'] .pc-section--ink :is(.pc-display, .pc-title, .pc-subtitle) {
	color: #131718;
}

:root[data-pc-theme='light'] .pc-section--ink :is(.pc-lead, .pc-checklist li, .pc-card__text) {
	color: #3c4446;
}

:root[data-pc-theme='light'] .pc-section--ink .pc-card {
	border-color: #c3ced9;
	background-color: #ffffff;
}

:root[data-pc-theme='light'] .pc-section--ink .pc-card__title {
	color: #131718;
}

:root[data-pc-theme='light'] .pc-section--ink .pc-card__icon {
	background-color: #e1e6ea;
	color: #3c4446;
}

:root[data-pc-theme='light'] .pc-section--ink .pc-card:nth-child( even ) .pc-card__icon,
:root[data-pc-theme='light'] .pc-section:not( .pc-section--ink ) .pc-card:nth-child( even ) .pc-card__icon {
	background-color: var( --pc-color-light-orange );
	color: var( --pc-color-dark-orange );
}

:root[data-pc-theme='light'] .pc-step {
	border-color: #c3ced9;
	background-color: #ffffff;
}

:root[data-pc-theme='light'] .pc-cta {
	background-color: #ddf4eb;
	background-image: radial-gradient( ellipse at 90% 5%, rgba( 6, 171, 134, 0.25 ), transparent 66% ), linear-gradient( 120deg, #f0faf6 0%, #c8ecdf 100% );
	color: #263b35;
}

:root[data-pc-theme='light'] .pc-cta :is(.pc-title, .pc-lead) {
	color: #131718;
}

@media ( max-width: 767px ) {
	.pc-site-footer {
		padding: 28px var( --pc-space-5 ) 16px;
	}
	.pc-site-footer__inner.wp-block-group {
		grid-template-columns: 1fr;
		gap: 24px;
	}
	.pc-site-footer__cols.wp-block-group {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
		gap: 22px 16px;
	}
	.pc-site-footer__cols {
		margin-left: 0;
	}
	.pc-site-footer__bottom {
		align-items: flex-start;
		margin-top: 20px;
	}
	.pc-site-footer__legal {
		gap: 14px;
	}
	.pc-footer-tech {
		right: 16px;
		bottom: 74px;
		width: 76px;
		height: 32px;
		opacity: 0.45;
	}
}

/* --------------------------------------------------------------------------
 * Jednotné prostorové datové pozadí, propracovaný světlý režim a zakončení patičky.
 * ----------------------------------------------------------------------- */
.pc-hero::after {
	opacity: 0.76;
}

.pc-hero::before {
	display: none;
}

.pc-section::before {
	filter: drop-shadow( 0 16px 24px rgba( 0, 0, 0, 0.16 ) );
	opacity: 0.23;
}

.pc-hero__inner {
	text-shadow: 0 1px 18px rgba( 0, 0, 0, 0.22 );
}

.pc-site-footer {
	padding: 0 var( --pc-space-6 ) 18px;
	background-color: #131718;
	background-image: none;
}

.pc-site-footer__feature,
.pc-site-footer__nav,
.pc-site-footer__bottom {
	width: min( 100%, var( --pc-section-max ) );
	margin-inline: auto;
}

.pc-site-footer__feature {
	position: relative;
	display: grid;
	grid-template-columns: minmax( 220px, 0.88fr ) minmax( 0, 1.12fr );
	align-items: center;
	min-height: 132px;
	border-bottom: 1px solid rgba( 203, 243, 234, 0.13 );
}

.pc-site-footer__feature-copy {
	position: relative;
	z-index: 1;
}

.pc-site-footer__feature .pc-logo {
	color: #fff;
}

.pc-site-footer__subscribe {
	position: relative;
	z-index: 1;
	width: min( 100%, 390px );
	justify-self: end;
}

.pc-site-footer__subscribe > label {
	display: block;
	margin-bottom: 7px;
	color: rgba( 255, 255, 255, 0.82 );
	font-size: var( --pc-font-size-sm );
}

.pc-footer-signup__control {
	display: flex;
	align-items: center;
	gap: 7px;
	min-height: 42px;
	padding: 4px;
	border: 1px solid rgba( 203, 207, 208, 0.14 );
	border-radius: 10px;
	background: rgba( 31, 34, 35, 0.92 );
	box-shadow: inset 0 1px rgba( 255, 255, 255, 0.04 ), 0 8px 22px rgba( 0, 0, 0, 0.14 );
}

.pc-footer-signup__control:focus-within { border-color: rgba( 203, 207, 208, 0.34 ); box-shadow: 0 0 0 2px rgba( 203, 207, 208, 0.08 ), inset 0 1px rgba( 255, 255, 255, 0.04 ); }

.pc-footer-signup__field {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	gap: 9px;
	min-width: 0;
	padding-inline: 7px;
}

.pc-footer-signup__field svg {
	flex: none;
	width: 13px;
	height: 13px;
	fill: none;
	stroke: rgba( 203, 207, 208, 0.64 );
	stroke-width: 1.25;
}

.pc-footer-signup__field input {
	width: 100%;
	min-width: 0;
	padding: 4px 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: rgba( 255, 255, 255, 0.9 );
	font: inherit;
	font-size: var( --pc-font-size-sm );
}

.pc-footer-signup__field input::placeholder {
	color: rgba( 230, 233, 233, 0.48 );
}

.pc-footer-signup__control button {
	flex: none;
	min-height: 32px;
	padding: 0 12px;
	border: 1px solid rgba( 210, 218, 219, 0.16 );
	border-radius: 7px;
	background: rgba( 87, 96, 98, 0.34 );
	color: rgba( 230, 233, 233, 0.48 );
	font: inherit;
	font-size: var( --pc-font-size-xs );
	font-weight: var( --pc-font-weight-medium );
}

.pc-site-footer__nav {
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: clamp( 24px, 5vw, 72px );
	padding-block: 24px 22px;
}

.pc-site-footer__nav .pc-footer-group {
	min-width: 0;
}

.pc-site-footer__nav h2 {
	margin: 0 0 10px;
	color: rgba( 203, 243, 234, 0.58 );
	font-size: var( --pc-font-size-xs );
	font-weight: var( --pc-font-weight-semibold );
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.pc-site-footer__nav ul {
	display: grid;
	gap: 5px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pc-site-footer__nav a,
.pc-site-footer__bottom a {
	color: rgba( 255, 255, 255, 0.82 );
	font-size: var( --pc-font-size-sm );
	text-decoration: none;
	transition: color 180ms ease;
}

.pc-site-footer__nav a:hover,
.pc-site-footer__nav a:focus-visible,
.pc-site-footer__bottom a:hover,
.pc-site-footer__bottom a:focus-visible {
	color: var( --pc-color-teal-light );
}

.pc-site-footer__bottom {
	margin-top: 0;
	padding-top: 14px;
	border-top: 1px solid rgba( 203, 243, 234, 0.1 );
}

.pc-site-footer__bottom .pc-site-footer__bottom {
	border: 0;
}

.pc-site-footer__bottom :is(p, .pc-site-footer__copyright) {
	margin: 0;
}

.pc-site-footer__legal {
	gap: 18px;
}

/* Světlý režim zachovává zelené prvky značky a přidává chladnější barevnou hloubku. */
:root[data-pc-theme='light'] {
	--pc-color-teal: #06ab86;
	--pc-color-dark-teal: #037e62;
	--pc-color-teal-light: #c8eee5;
	--pc-color-orange-contrast: var( --pc-color-dark-orange );
	--pc-bg-page: #e9eef1;
	--pc-bg-surface: rgba( 249, 251, 252, 0.78 );
	--pc-bg-control: #e5ebef;
	--pc-border-color: #bdcbd1;
	--pc-border-color-subtle: rgba( 123, 150, 159, 0.23 );
}

:root[data-pc-theme='light'] body {
	background-color: #e9eef1;
	background-image:
		radial-gradient( ellipse at 76% 5%, rgba( 6, 171, 134, 0.09 ), transparent 36rem ),
		linear-gradient( 135deg, #f0f3f5 0%, #e7edf0 52%, #e2eaed 100% );
}

:root[data-pc-theme='light'] .pc-landing {
	background-color: transparent;
	background-image:
		radial-gradient( ellipse at 82% 8%, rgba( 6, 171, 134, 0.07 ), transparent 32rem ),
		repeating-linear-gradient( 0deg, transparent 0 55px, rgba( 86, 117, 126, 0.025 ) 56px ),
		repeating-linear-gradient( 90deg, transparent 0 55px, rgba( 86, 117, 126, 0.025 ) 56px ),
		linear-gradient( 135deg, #eff3f5, #e5ecef 56%, #e9eef1 );
	background-attachment: fixed;
}

:root[data-pc-theme='light'] .pc-section--light,
:root[data-pc-theme='light'] .pc-section--white {
	background-color: rgba( 244, 247, 248, 0.34 );
}

:root[data-pc-theme='light'] .pc-hero,
:root[data-pc-theme='light'] .pc-section--ink {
	background-color: #e3ebee;
	background-image:
		radial-gradient( ellipse 60% 92% at 82% 9%, rgba( 6, 171, 134, 0.15 ), transparent 68% ),
		repeating-linear-gradient( 0deg, transparent 0 48px, rgba( 86, 117, 126, 0.035 ) 49px ),
		linear-gradient( 125deg, #e9eff1 0%, #dce7eb 56%, #e7edef 100% );
	color: #263638;
}

:root[data-pc-theme='light'] .pc-hero::before,
:root[data-pc-theme='light'] .pc-hero::after {
	filter: brightness( 0.72 ) saturate( 0.88 ) drop-shadow( 0 16px 24px rgba( 55, 79, 87, 0.16 ) );
	opacity: 0.7;
}

:root[data-pc-theme='light'] .pc-hero__inner {
	text-shadow: 0 1px 16px rgba( 249, 251, 252, 0.55 );
}

:root[data-pc-theme='light'] .pc-section::before {
	filter: brightness( 0.75 ) saturate( 0.8 ) drop-shadow( 0 12px 20px rgba( 55, 79, 87, 0.13 ) );
	opacity: 0.19;
}

:root[data-pc-theme='light'] .pc-section--ink::before {
	opacity: 0.23;
}

:root[data-pc-theme='light'] .pc-section--ink :is(.pc-display, .pc-title, .pc-subtitle, .pc-card__title),
:root[data-pc-theme='light'] .pc-hero :is(.pc-hero__title, .pc-hero__lead, .pc-hero__more a) {
	color: #172426;
}

:root[data-pc-theme='light'] .pc-section--ink :is(.pc-lead, .pc-checklist li, .pc-card__text) {
	color: #405255;
}

:root[data-pc-theme='light'] :is(.pc-section--ink .pc-card, .pc-step) {
	border-color: rgba( 115, 145, 154, 0.3 );
	background-color: rgba( 247, 250, 251, 0.67 );
	box-shadow: 0 18px 44px rgba( 49, 73, 81, 0.08 ), inset 0 1px rgba( 255, 255, 255, 0.7 );
	backdrop-filter: blur( 9px );
}

:root[data-pc-theme='light'] .pc-cta {
	background-color: #e0e9ec;
	background-image: radial-gradient( ellipse at 92% 4%, rgba( 255, 120, 23, 0.13 ), transparent 52% ), radial-gradient( ellipse at 88% 5%, rgba( 6, 171, 134, 0.14 ), transparent 66% ), linear-gradient( 125deg, #e9eff1, #dce8eb );
	color: #243538;
}

:root[data-pc-theme='light'] .pc-cta :is(.pc-title, .pc-lead) {
	color: #172426;
}

:root[data-pc-theme='light'] .pc-site-header {
	background-color: rgba( 235, 240, 242, 0.9 );
	box-shadow: 0 1px 0 rgba( 59, 83, 91, 0.12 ), 0 8px 28px rgba( 44, 67, 75, 0.045 );
	backdrop-filter: blur( 14px );
}

:root[data-pc-theme='light'] .pc-site-header .pc-logo,
:root[data-pc-theme='light'] .pc-site-header .pc-nav a {
	color: #172426;
}

:root[data-pc-theme='light'] .pc-site-footer {
	background-color: #131718;
	background-image: none;
	color: #fff;
}

:root[data-pc-theme='light'] .pc-site-footer :is(.pc-site-footer__feature .pc-logo, .pc-site-footer__nav a, .pc-site-footer__bottom a) {
	color: rgba( 255, 255, 255, 0.84 );
}

:root[data-pc-theme='light'] .pc-site-footer__nav h2 {
	color: rgba( 203, 243, 234, 0.65 );
}

:root[data-pc-theme='dark'] .pc-section--light,
:root[data-pc-theme='dark'] .pc-section--white {
	background-color: #171e20;
	background-image:
		radial-gradient( ellipse at 82% 15%, rgba( 6, 171, 134, 0.08 ), transparent 34rem ),
		repeating-linear-gradient( 0deg, transparent 0 53px, rgba( 203, 243, 234, 0.022 ) 54px ),
		repeating-linear-gradient( 90deg, transparent 0 53px, rgba( 203, 243, 234, 0.022 ) 54px );
	color: #d6dcdd;
}

:root[data-pc-theme='dark'] .pc-section:not(.pc-section--ink) :is(.pc-display, .pc-title, .pc-subtitle, .pc-card__title) {
	color: #f4f7f7;
}

:root[data-pc-theme='dark'] .pc-section:not(.pc-section--ink) :is(.pc-lead, .pc-card__text, .pc-checklist li, .pc-stat__label) {
	color: #aeb7b8;
}

:root[data-pc-theme='dark'] .pc-section:not(.pc-section--ink) :is(.pc-card, .pc-step) {
	border-color: rgba( 203, 243, 234, 0.12 );
	background-color: rgba( 28, 35, 37, 0.78 );
	box-shadow: 0 18px 44px rgba( 0, 0, 0, 0.2 ), inset 0 1px rgba( 255, 255, 255, 0.035 );
	backdrop-filter: blur( 8px );
}

:root[data-pc-theme='dark'] .pc-section:not(.pc-section--ink) .pc-card__icon {
	background-color: rgba( 6, 171, 134, 0.18 );
	color: #cbf3ea;
}

:root[data-pc-theme='dark'] .pc-section .pc-card:nth-child( even ) .pc-card__icon {
	background-color: rgba( 255, 120, 23, 0.18 );
	color: var( --pc-color-orange );
}

:root[data-pc-theme='dark'] .pc-cta {
	border: 1px solid rgba( 203, 243, 234, 0.12 );
	background-color: #171e20;
	background-image:
		radial-gradient( ellipse at 92% 0%, rgba( 255, 120, 23, 0.16 ), transparent 48% ),
		radial-gradient( ellipse at 88% 0%, rgba( 6, 171, 134, 0.18 ), transparent 58% ),
		linear-gradient( 130deg, #1b2325, #131718 );
	box-shadow: 0 24px 60px rgba( 0, 0, 0, 0.18 );
}

:root[data-pc-theme='dark'] .pc-cta .pc-eyebrow {
	color: #cbf3ea;
}

:root[data-pc-theme='dark'] .pc-hero .wp-block-button.is-style-outline > .wp-block-button__link {
	border-color: var( --pc-color-orange );
	color: var( --pc-color-orange );
}

:root[data-pc-theme='dark'] .pc-hero .wp-block-button.is-style-outline > .wp-block-button__link:hover,
:root[data-pc-theme='dark'] .pc-hero .wp-block-button.is-style-outline > .wp-block-button__link:focus-visible {
	border-color: var( --pc-color-dark-orange );
	background-color: var( --pc-color-dark-orange );
	color: var( --pc-color-white );
}

.pc-hero .pc-btn-icon--down > .wp-block-button__link {
	border-color: var( --pc-color-orange-contrast );
	color: var( --pc-color-orange-contrast );
}

.pc-hero .pc-btn-icon--down > .wp-block-button__link:hover,
.pc-hero .pc-btn-icon--down > .wp-block-button__link:focus-visible {
	border-color: var( --pc-color-dark-orange );
	background-color: var( --pc-color-dark-orange );
	color: var( --pc-color-white );
}

.pc-hero__actions > .wp-block-button:nth-child( 2 ) .wp-block-button__link {
	border-color: var( --pc-color-orange-contrast );
	color: var( --pc-color-orange-contrast );
}

.pc-hero__actions > .wp-block-button:nth-child( 2 ) .wp-block-button__link:hover,
.pc-hero__actions > .wp-block-button:nth-child( 2 ) .wp-block-button__link:focus-visible {
	border-color: var( --pc-color-dark-orange );
	background-color: var( --pc-color-dark-orange );
	color: var( --pc-color-white );
}

.pc-hero__actions .wp-block-button.is-style-outline > .wp-block-button__link {
	border-color: var( --pc-color-orange-contrast ) !important;
	background-color: transparent !important;
	color: var( --pc-color-orange-contrast ) !important;
}

.pc-hero__actions .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.pc-hero__actions .wp-block-button.is-style-outline > .wp-block-button__link:focus-visible {
	border-color: var( --pc-color-dark-orange ) !important;
	background-color: var( --pc-color-dark-orange ) !important;
	color: var( --pc-color-white ) !important;
}

:root[data-pc-theme='dark'] .pc-hero .pc-btn--ghost {
	border-color: var( --pc-color-orange );
	color: var( --pc-color-orange );
}

.pc-hero .pc-btn--ghost {
	border-color: var( --pc-color-orange-contrast );
	color: var( --pc-color-orange-contrast );
}

.pc-hero .pc-btn--ghost:hover,
.pc-hero .pc-btn--ghost:focus-visible {
	border-color: var( --pc-color-dark-orange );
	background-color: var( --pc-color-dark-orange );
	color: var( --pc-color-white );
}

@media ( max-width: 767px ) {
	.pc-site-footer {
		padding-inline: var( --pc-space-5 );
	}
	.pc-site-footer__feature {
		grid-template-columns: 1fr;
		gap: 20px;
		min-height: 0;
		padding-block: 24px;
	}
	.pc-site-footer__feature-copy {
		align-self: start;
		padding-top: 0;
	}
	.pc-site-footer__subscribe {
		justify-self: start;
	}
	.pc-site-footer__nav {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
		gap: 22px 16px;
	}
	.pc-site-footer__bottom {
		align-items: flex-start;
	}
}

@media ( max-width: 420px ) {
	.pc-site-footer__feature {
		padding-block: 21px;
	}
	.pc-site-footer__nav a {
		font-size: 11px;
	}
}

/* Jedna proměnlivá vrstva grafů prochází úvodní stránkou bez opakování v každé sekci. */
.pc-landing {
	position: relative;
	isolation: isolate;
	background-color: #111719;
	background-image: none;
}

.pc-landing::before {
	position: absolute;
	z-index: 0;
	inset: 0;
	content: "";
	background: url( "../img/section-data-viz.svg?rev=premium-3" ) center / 100% 100% no-repeat;
	opacity: 0.32;
	pointer-events: none;
	mask-image: linear-gradient( to bottom, transparent 0%, transparent 11%, #000 18%, #000 93%, transparent 100% );
	animation: pc-data-atmosphere-flow 32s ease-in-out infinite alternate;
}

.pc-landing > .pc-section:not(.pc-hero) {
	z-index: 1;
	background-color: rgba( 19, 23, 24, 0.2 );
	background-image: none;
}

.pc-landing > .pc-section--ink:not(.pc-hero) {
	background-color: rgba( 17, 23, 25, 0.28 );
}

.pc-landing > .pc-section--light:not(.pc-hero),
.pc-landing > .pc-section--white:not(.pc-hero) {
	background-color: rgba( 31, 40, 42, 0.2 );
}

.pc-landing > .pc-section:not(.pc-hero)::before,
.pc-landing > .pc-section:not(.pc-hero)::after {
	display: none;
}

.pc-landing > .pc-hero {
	z-index: 1;
}

@keyframes pc-data-atmosphere-flow {
	from { opacity: 0.28; }
	to { opacity: 0.36; }
}

:root[data-pc-theme='light'] .pc-landing {
	background-color: #e9eef1;
	background-image: linear-gradient( 135deg, #eff3f5 0%, #e5ecef 56%, #e9eef1 100% );
}

:root[data-pc-theme='light'] .pc-landing::before {
	filter: brightness( 0.74 ) saturate( 0.72 );
	animation-name: pc-data-atmosphere-flow-light;
}

:root[data-pc-theme='light'] .pc-landing > .pc-section:not(.pc-hero) {
	background-color: rgba( 237, 243, 245, 0.28 );
	background-image: none;
}

:root[data-pc-theme='light'] .pc-landing > .pc-section--ink:not(.pc-hero) {
	background-color: rgba( 221, 233, 237, 0.26 );
}

:root[data-pc-theme='light'] .pc-landing > .pc-section--light:not(.pc-hero),
:root[data-pc-theme='light'] .pc-landing > .pc-section--white:not(.pc-hero) {
	background-color: rgba( 245, 248, 249, 0.28 );
}

@keyframes pc-data-atmosphere-flow-light {
	from { opacity: 0.2; }
	to { opacity: 0.27; }
}

@media ( prefers-reduced-motion: reduce ) {
	.pc-landing::before { animation: none; }
}

@media ( prefers-reduced-motion: reduce ) {
	.pc-hero::before,
	.pc-hero::after {
		animation: none;
	}
}

/* Hero ponechává datové pozadí klidné a screenshot odděluje jemným světelným polem. */
.pc-hero::after {
	opacity: 0.92;
	filter: saturate( 1.08 ) contrast( 1.08 ) drop-shadow( 0 12px 18px rgba( 0, 0, 0, 0.18 ) );
	animation: none;
}

.pc-hero__visual {
	isolation: isolate;
}

.pc-hero__visual::before {
	position: absolute;
	z-index: -1;
	inset: 4% 1%;
	border-radius: 50%;
	background: radial-gradient( ellipse at center, rgba( 5, 16, 15, 0.72 ) 0 43%, rgba( 6, 171, 134, 0.2 ) 63%, transparent 78% );
	content: "";
	filter: blur( 16px );
	pointer-events: none;
}

.pc-gallery__stage {
	border-color: rgba( 203, 243, 234, 0.22 );
	box-shadow: 0 28px 64px rgba( 0, 0, 0, 0.38 ), 0 0 26px rgba( 6, 171, 134, 0.08 ), inset 0 1px rgba( 255, 255, 255, 0.06 );
}

.pc-hero__visual > img {
	height: auto;
	aspect-ratio: 1.55;
	background: linear-gradient( 145deg, rgba( 11, 22, 24, 0.96 ), rgba( 23, 36, 38, 0.96 ) );
	object-fit: contain;
	box-shadow: 0 28px 64px rgba( 0, 0, 0, 0.38 ), 0 0 26px rgba( 6, 171, 134, 0.08 );
}

:root[data-pc-theme='dark'] .pc-hero {
	background-color: #091714;
	background-image:
		linear-gradient( to bottom, transparent 68%, rgba( 17, 23, 25, 0.5 ) 88%, #111719 100% ),
		radial-gradient( ellipse 64% 88% at 74% 42%, rgba( 13, 195, 151, 0.54 ), transparent 76% ),
		radial-gradient( ellipse 42% 68% at 55% 92%, rgba( 6, 171, 134, 0.3 ), transparent 80% ),
		radial-gradient( ellipse 38% 54% at 8% 18%, rgba( 255, 120, 23, 0.045 ), transparent 74% );
}

:root[data-pc-theme='light'] .pc-hero {
	background-color: #e3ebee;
	background-image:
		linear-gradient( to bottom, transparent 72%, rgba( 233, 238, 241, 0.62 ) 90%, #e9eef1 100% ),
		radial-gradient( ellipse 60% 92% at 82% 9%, rgba( 6, 171, 134, 0.15 ), transparent 68% ),
		repeating-linear-gradient( 0deg, transparent 0 48px, rgba( 86, 117, 126, 0.035 ) 49px ),
		linear-gradient( 125deg, #e9eff1 0%, #dce7eb 56%, #e7edef 100% );
}

:root[data-pc-theme='light'] .pc-hero__visual::before {
	background: radial-gradient( ellipse at center, rgba( 6, 171, 134, 0.13 ), transparent 72% );
}

:root[data-pc-theme='light'] .pc-hero::after {
	filter: brightness( 0.8 ) saturate( 1.22 ) contrast( 1.1 );
	opacity: 0.8;
}

:root[data-pc-theme='light'] .pc-gallery__stage {
	border-color: rgba( 40, 83, 79, 0.2 );
	background: linear-gradient( 145deg, #e6f0ed, #dbe8e4 );
	box-shadow: 0 26px 58px rgba( 22, 54, 53, 0.2 ), 0 0 24px rgba( 6, 171, 134, 0.08 ), inset 0 1px rgba( 255, 255, 255, 0.7 );
}

@media ( max-width: 767px ) {
	.pc-gallery__stage { aspect-ratio: 1.38; }
	.pc-hero__visual::before { inset: 4% 0; }
	.pc-hero::after { opacity: 0.54; }
}

@media ( prefers-reduced-motion: reduce ) {
	.pc-hero::after { animation: none; }
	.pc-gallery__slide,
	.pc-gallery__thumb,
	.pc-gallery__arrow { transition: none; }
}
