/* Glue + visual polish to match theme kit (vermoont.cz) */
:root {
	--vermoont-cyan: #00a0e9;
	--vermoont-cyan-2: #31b8f6;
	--vermoont-bg: #101010;
	--vermoont-fg: #f4f4f4;
}

html {
	background: var(--vermoont-bg);
}

body.vrm-kit-11,
body {
	margin: 0;
	background-color: var(--e-global-color-ba7cab5, var(--vermoont-bg));
	color: var(--e-global-color-a83c27c, var(--vermoont-fg));
	font-family: "Montserrat", system-ui, sans-serif;
	font-size: 1rem;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

.vrm-heading-title,
h1,
h2,
h3,
h4 {
	font-family: "Syne", "Montserrat", sans-serif;
	font-weight: 600;
	line-height: 1.2;
}

.vrm *,
.vrm *::before,
.vrm *::after {
	box-sizing: border-box;
}

.vrm-section {
	position: relative;
	/* visible so entrance animations (fadeInUp/Left) are not clipped */
	overflow: visible;
}

.vrm-section:has(.vrm-background-slideshow),
.vrm-section:has(> .vrm-background-overlay) {
	overflow: hidden;
}

.vrm-section .vrm-container {
	display: flex;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1400px; /* theme kit / produkce vermoont.cz */
}

.vrm-section.vrm-section-boxed > .vrm-container {
	max-width: 1400px;
}

.vrm-section-height-min {
	display: flex;
}

.vrm-section-height-min > .vrm-container {
	width: 100%;
	align-items: center;
}

.vrm-section-items-middle > .vrm-container {
	align-items: center;
}

.vrm-background-overlay {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.vrm-column {
	min-height: 1px;
	position: relative;
	display: flex;
}

.vrm-widget-wrap {
	position: relative;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
}

.vrm-element-populated {
	padding: 10px;
}

.vrm-col-10 {
	width: 10%;
}
.vrm-col-14 {
	width: 14.285%;
}
.vrm-col-16 {
	width: 16.666%;
}
.vrm-col-20 {
	width: 20%;
}
.vrm-col-25 {
	width: 25%;
}
.vrm-col-33 {
	width: 33.333%;
}
.vrm-col-40 {
	width: 40%;
}
.vrm-col-50 {
	width: 50%;
}
.vrm-col-60 {
	width: 60%;
}
.vrm-col-66 {
	width: 66.666%;
}
.vrm-col-75 {
	width: 75%;
}
.vrm-col-80 {
	width: 80%;
}
.vrm-col-100 {
	width: 100%;
}

@media (max-width: 1024px) {
	.vrm-section .vrm-container {
		flex-wrap: wrap;
	}
	.vrm-column {
		width: 100% !important;
	}
	.vrm-section[style*="background-attachment:fixed"] {
		background-attachment: scroll !important;
	}
}

/* Inquiry form submit only — theme buttons keep kit/post CSS (ghost borders etc.) */
.form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	width: auto;
	padding: 0.85rem 1.6rem;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	background: var(--e-global-color-primary, var(--vermoont-cyan));
	color: #fff !important;
	text-decoration: none;
	font-family: "Syne", sans-serif;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	transition: background 0.25s ease;
}

.form button:hover {
	background: var(--e-global-color-accent, var(--vermoont-cyan-2));
}

/* Icon boxes / icons */
.vrm-icon-box-icon i,
.vrm-icon-box-icon {
	color: var(--e-global-color-primary, var(--vermoont-cyan));
	font-size: 2.25rem;
	line-height: 1;
}

/* icon-newsletter has a smaller ink box than sibling contact icons */
.vrm-121 .vrm-element-4f0c5fd2 .vrm-icon-box-icon i {
	font-size: 2.75rem;
}

.vrm-icon-box-title {
	font-family: "Syne", sans-serif;
	font-weight: 600;
	margin: 0.6rem 0 0.35rem;
}

.vrm-icon-box-description {
	color: var(--e-global-color-a83c27c, var(--vermoont-fg));
	opacity: 0.92;
	margin: 0;
}

/* Proč si vybrat nás — ikona svisle na střed vůči textu */
.vrm-121 .vrm-element-1056c277 .vrm-widget-icon-box .vrm-icon-box-wrapper {
	align-items: center;
}

.vrm-icon-list-item {
	list-style: none;
}

.vrm-icon-list-items {
	margin: 0;
	padding: 0;
}

/* Funfacts / statistics */
.vrmkit-funfact .number-percentage-wraper {
	display: inline-flex;
	align-items: flex-start;
	justify-content: center;
	gap: 0.1em;
	line-height: 1;
}

.vrmkit-funfact .number-percentage,
.vrmkit-funfact .number,
.vrmkit-funfact .super {
	font-family: "Syne", sans-serif;
	font-weight: 700;
	color: var(--e-global-color-primary, var(--vermoont-cyan));
	font-size: clamp(2.4rem, 5vw, 3.6rem);
	line-height: 1.05;
}

.vrmkit-funfact .super {
	font-size: 0.55em;
	margin-top: 0.15em;
}

.vrmkit-funfact .funfact-title {
	font-family: "Montserrat", sans-serif;
	font-weight: 500;
	font-size: 1rem;
	margin: 0.55rem 0 0;
	color: var(--vermoont-fg);
}

/* Nav — match production theme (Syne 16px, #F4F4F4, no uppercase) */
/* post-121.css sets .vrmkit-menu-container { max-width:350px } which wraps the bar */
.vrm-121 .vrm-element-750aadba .vrmkit-menu-container,
.vk-nav .vrmkit-menu-container {
	max-width: none !important;
	width: 100%;
	background: transparent !important;
}

.vk-nav {
	position: relative;
	width: 100%;
}

.vk-nav .vrmkit-navbar-nav,
.vk-nav ul.vrmkit-menu-container {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
}

.vk-nav .vrmkit-navbar-nav > li,
.vk-nav ul.vrmkit-menu-container > li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.vk-nav a,
.vk-nav .vrmkit-menu-nav-link {
	display: block;
	padding: 0.55rem 0.85rem;
	color: var(--e-global-color-a83c27c, var(--vermoont-fg));
	text-decoration: none;
	font-family: "Syne", sans-serif;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
	transition: color 0.2s ease;
}

.vk-nav a:hover,
.vk-nav .vrmkit-menu-nav-link:hover {
	color: var(--e-global-color-primary, var(--vermoont-cyan));
}

.vrm-nav-toggle,
.vrm-nav-overlay {
	display: none;
}

/* Hero CTA pair — desktop keeps left/right; mobile centers as a group */
@media (max-width: 1024px) {
	.vrm-element-45013459 > .vrm-container {
		flex-wrap: nowrap !important;
		align-items: center;
		gap: 0.75rem;
	}

	.vrm-element-45013459 > .vrm-container > .vrm-column {
		width: auto !important;
	}

	.vrm-element-45013459 .vrm-element-5cc1c061 {
		flex: 1 1 auto;
		min-width: 0;
	}

	.vrm-element-45013459 .vrm-element-2480d240 {
		flex: 0 0 auto;
		margin-left: auto;
	}

	.vrm-element-45013459 .vrm-element-5217c4bc img {
		width: min(220px, 56vw) !important;
	}

	.vrm-nav-toggle {
		display: inline-flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 5px;
		width: 44px;
		height: 44px;
		padding: 0;
		margin: 0;
		border: 1px solid var(--e-global-color-primary, var(--vermoont-cyan));
		border-radius: 0.25rem;
		background: var(--e-global-color-ba7cab5, var(--vermoont-bg));
		color: var(--e-global-color-primary, var(--vermoont-cyan));
		cursor: pointer;
		z-index: 30;
	}

	.vrm-nav-toggle__bar {
		display: block;
		width: 18px;
		height: 2px;
		background: currentColor;
		transition: transform 0.2s ease, opacity 0.2s ease;
	}

	.vk-nav.is-open .vrm-nav-toggle__bar:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}

	.vk-nav.is-open .vrm-nav-toggle__bar:nth-child(2) {
		opacity: 0;
	}

	.vk-nav.is-open .vrm-nav-toggle__bar:nth-child(3) {
		transform: translateY(-7px) rotate(-45deg);
	}

	.vrm-nav-overlay {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 20;
		background: rgba(0, 0, 0, 0.55);
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity 0.25s ease, visibility 0.25s ease;
	}

	.vk-nav.is-open .vrm-nav-overlay {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.vk-nav .vrmkit-navbar-nav,
	.vk-nav ul.vrmkit-menu-container,
	.vk-wid-con .vrmkit-navbar-nav,
	.vrm-121 .vrm-element-750aadba .vrmkit-menu-container {
		display: none !important;
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		left: auto !important;
		bottom: 0 !important;
		z-index: 25;
		width: min(20rem, 86vw) !important;
		height: 100dvh !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 4.5rem 1.25rem 2rem !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		gap: 0.15rem;
		background: #101010 !important;
		box-shadow: -12px 0 32px rgba(0, 0, 0, 0.45);
		overflow-x: hidden;
		overflow-y: auto;
	}

	.vk-nav.is-open .vrmkit-navbar-nav,
	.vk-nav.is-open ul.vrmkit-menu-container,
	.vk-nav.is-open.vk-wid-con .vrmkit-navbar-nav,
	.vrm-121 .vk-nav.is-open .vrmkit-menu-container {
		display: flex !important;
	}

	.vk-nav .vrmkit-menu-nav-link {
		padding: 0.85rem 0.35rem;
		font-size: 1.05rem;
		white-space: normal;
		border-bottom: 1px solid rgba(244, 244, 244, 0.12);
	}

	body.vrm-nav-open {
		overflow: hidden;
	}

	/* Hero CTAs: centered pair instead of right/left stagger */
	.vrm-element-4b0dd94e > .vrm-container {
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		gap: 0.75rem;
	}

	.vrm-element-4b0dd94e > .vrm-container > .vrm-column {
		width: auto !important;
		flex: 0 0 auto;
	}

	.vrm-element-4b0dd94e .vrm-button-wrapper,
	.vrm-hero-cta {
		text-align: center !important;
	}

	.vrm-element-4b0dd94e .vrm-button,
	.vrm-element-4b0dd94e .vrm-button-link {
		min-width: 8.5rem;
	}
}

@media (max-width: 480px) {
	.vrm-element-4b0dd94e > .vrm-container {
		flex-direction: column;
	}

	.vrm-element-4b0dd94e > .vrm-container > .vrm-column {
		width: 100% !important;
	}

	.vrm-element-4b0dd94e .vrm-button,
	.vrm-element-4b0dd94e .vrm-button-link {
		width: min(100%, 16rem);
	}
}

@media (min-width: 1025px) {
	.vrm-hero-cta--services {
		text-align: right;
	}

	.vrm-hero-cta--contact {
		text-align: left;
	}
}

/* Image accordion polish */
.vk-image-accordion {
	gap: 10px !important;
}

.vk-ia-item {
	min-height: 220px !important;
	box-shadow: inset 0 0 0 1px rgba(244, 244, 244, 0.08);
}

/* Testimonials — theme style2 (reference section) */
.vrm-121 .vrm-element-3e75ad50 .vk-wid-con {
	width: 100%;
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-testimonial-slider {
	position: relative;
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-single-testimonial-slider.vk_testimonial_style_2 {
	background-color: #101010 !important;
	border: 1px solid #f4f4f4;
	box-shadow: none !important;
	padding: 4em !important;
	color: #f4f4f4;
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-commentor-content > p {
	margin: 0 0 1.25rem;
	color: #f4f4f4;
	font-family: "Montserrat", sans-serif;
	font-size: 1.2rem;
	font-style: italic;
	font-weight: 400;
	line-height: 1.5;
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-border-hr {
	display: inline-block;
	width: 40px;
	height: 2px;
	margin: 0 0 1rem;
	background: var(--vermoont-cyan);
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-profile-info {
	display: block;
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-author-name {
	display: block;
	color: #f4f4f4;
	font-family: "Syne", sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.2;
	margin: 0 0 0.25rem;
}

.vrm-121 .vrm-element-3e75ad50 .vrmkit-author-des {
	display: block;
	color: var(--vermoont-cyan);
	font-family: "Montserrat", sans-serif;
	font-size: 1rem;
	line-height: 1.4;
}

.vrm-121 .vrm-element-3e75ad50 .swiper-pagination {
	position: static;
	margin-top: 1.25rem;
	text-align: left;
}

.vrm-121 .vrm-element-3e75ad50 .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	background: #ededed;
	opacity: 1;
	margin: 0 4px 0 0 !important;
}

.vrm-121 .vrm-element-3e75ad50 .swiper-pagination-bullet-active {
	background: #62606b;
}

/* Reference section — keep columns + swipers constrained (Swiper can explode width otherwise) */
.vrm-121 .vrm-element-2da9f607 > .vrm-container {
	align-items: stretch;
}

.vrm-121 .vrm-element-27278166,
.vrm-121 .vrm-element-4782670e {
	min-width: 0;
}

.vrm-121 .vrm-element-3e75ad50 {
	position: relative;
	z-index: 1;
	max-width: 100%;
	overflow: hidden;
}

.vrm-121 .vrm-element-3e75ad50 .vk-wid-con,
.vrm-121 .vrm-element-3e75ad50 .vrmkit-testimonial-slider,
.vrm-121 .vrm-element-3e75ad50 .vk-main-swiper {
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

.vrm-121 .vrm-element-3309780 {
	position: relative;
	z-index: 2;
	max-width: 100%;
}

.vrm-121 .vrm-element-3309780 .vrm-image-carousel-wrapper {
	position: relative;
	overflow: hidden;
}

.vrm-121 .vrm-element-3309780 .swiper-slide-image {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.vrm-121 .vrm-element-3309780 .vrm-swiper-button {
	color: #fff;
	opacity: 0.85;
}

.vrm-121 .vrm-element-3309780 .vrm-swiper-button:hover {
	opacity: 1;
}

@media (max-width: 767px) {
	.vrm-121 .vrm-element-3e75ad50 .vrmkit-single-testimonial-slider.vk_testimonial_style_2 {
		padding: 2em !important;
	}
}

/* Forms — fill bordered contact column (no artificial max-width) */
.vermoont-inquiry-slot,
.vermoont-inquiry-slot .form {
	width: 100%;
	max-width: none;
	min-width: 0;
}

.form {
	display: grid;
	gap: 0.85rem;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.form label {
	display: grid;
	gap: 0.3rem;
	width: 100%;
	min-width: 0;
	font-size: 0.85rem;
	font-family: "Syne", sans-serif;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.form input,
.form textarea {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding: 0.75rem 0.9rem;
	border: 1px solid rgba(244, 244, 244, 0.25);
	border-radius: 0;
	background: rgba(0, 0, 0, 0.35);
	color: #fff;
	font-family: "Montserrat", sans-serif;
}

.form input:focus,
.form textarea:focus {
	outline: 1px solid var(--vermoont-cyan);
	border-color: var(--vermoont-cyan);
}

.form .hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

.form__turnstile {
	margin: 0.35rem 0 0.85rem;
	min-height: 65px;
}

.form__turnstile iframe {
	max-width: 100%;
}

/* Divider */
.vrm-divider-separator {
	display: block;
	width: 100%;
	border-top: 1px solid rgba(244, 244, 244, 0.25);
}

/* Images */
.vrm-widget-image img {
	display: inline-block;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

.vrm-widget-image a {
	display: inline-block;
	line-height: 0;
}

/* Logo in page header — production renders ~190×74 */
.vrm-121 .vrm-element-5217c4bc img {
	width: 190px !important;
	max-width: 100%;
	height: auto;
}

/* Page header bar */
.vrm-121 .vrm-element-45013459 {
	z-index: 20;
}

.vrm-121 .vrm-element-45013459 .vrm-container {
	align-items: center;
	min-height: 74px;
}

/* Hero background slideshow (theme-compatible markup, light JS) */
.vrm-background-slideshow {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}

.vrm-background-slideshow__slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 1s ease-in-out;
}

.vrm-background-slideshow__slide.is-active {
	opacity: 1;
}

.vrm-background-slideshow__slide__image {
	position: absolute;
	inset: 0;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/* Hero vertical centering (theme min-height section) */
.vrm-121 .vrm-element-4fb92cf5.vrm-section-height-min > .vrm-container {
	align-items: center;
	min-height: inherit;
	position: relative;
	z-index: 1;
}
.vrm-121 .vrm-element-4fb92cf5 > .vrm-background-overlay {
	z-index: 0;
}

/* Footer cyan glow (radial overlay at bottom) */
.vrm-121 .vrm-element-6ac1cbbb > .vrm-background-overlay {
	background-color: transparent !important;
	background-image: radial-gradient(
		at bottom center,
		var(--e-global-color-8f13fcf, var(--vermoont-cyan)) 0%,
		var(--e-global-color-ba7cab5, var(--vermoont-bg)) 50%
	) !important;
	opacity: 0.25;
}
.vrm-121 .vrm-element-4fb92cf5 .vrm-heading-title {
	color: #fff;
}
.vrm-121 .vrm-element-4fb92cf5 .vrm-widget-text-editor {
	color: #f4f4f4;
}

/* Accent shapes / icon pack */
[class^="icon"],
[class*=" icon"] {
	font-family: "vrmkit" !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}

/* Hover / entrance helpers */
.vrm-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

/* SVG/PNG icon-box images size from .vrm-icon font-size (Elementor-compatible) */
.vrm-icon img,
.vrm-icon-box-icon img,
img.vk-icon-img {
	width: 1em;
	height: auto;
	max-width: none;
	display: block;
}

/*
 * První tři karty (Ozvučení / Světelná / Podium):
 * fontové ikony renderují ~36px, SVG u Podium bralo 1em = 50px a posouvalo text níž.
 */
.vrm-element-135dd9bc .vrm-icon-box-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	height: 36px;
}

.vrm-element-135dd9bc .vrm-icon {
	width: 36px;
	height: 36px;
	font-size: 36px !important;
}

.vrm-element-135dd9bc .vrm-icon img,
.vrm-element-135dd9bc img.vk-icon-img {
	width: 36px !important;
	height: 36px !important;
	object-fit: contain;
}

.vrm-button,
.vrm-button-link {
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.vrm-button:hover,
.vrm-button-link:hover {
	transform: translateY(-1px);
}

.vk-ia-item {
	transition: flex 0.45s ease, filter 0.35s ease, transform 0.35s ease;
}

.vk-nav a {
	transition: color 0.2s ease, opacity 0.2s ease;
}
