.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Lufga regular";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"gravesend-sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Lufga regular";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lufga regular";--e-global-typography-accent-font-weight:500;font-family:"Lufga regular", Sans-serif;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 h1{font-family:"gravesend-sans", Sans-serif;}.elementor-kit-6 h2{font-family:"Lufga regular", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --color-text:#344756; --color-brand:#F27F5B; --color-brand-hover:#F4A085; --color-text-secondary:#4D5F6F; --color-bg-beige:#EFEDE2; --e-gv-2313b93:#F9F9F9; --color-white:#FFFFFF; --color-green:#007C57; --e-gv-7859fcb:#9ABB98; --e-gv-aba6fbd:#1D1D1D; --e-gv-066bb53:#686B6A; --e-gv-e48d3a9:Inter; --fs-14:14px; --e-gv-9e79158:15px; --fs-16:16px; --fs-18:18px; --fs-22:22px; --fs-28:28px; --fs-30:30px; --fs-40:40px; --fs-50:50px; --fs-60:60px; --e-gv-f0db28b:5px; --e-gv-0b87199:10px; --e-gv-557d15e:15px; --e-gv-a5ec2b3:20px; --e-gv-ff9db86:30px; --e-gv-93aad2d:50px; --e-gv-e189013:80px; --e-gv-b07b678:100px; --container-width:1320px; --color-green-bright:#008C35; }
/* Start custom CSS *//* Homepage "Příběh našich staveb": native Nested Carousel (.tw-car) with the crossfade of the old custom slider – Swiper still handles arrows, autoplay, swipe and loop, the slides just stack and fade instead of sliding. */
.tw-car { padding: 0 40px !important; box-sizing: border-box; }
.tw-car .swiper-wrapper { transform: none !important; display: grid !important; }
.tw-car .swiper-slide { grid-area: 1 / 1; width: 100% !important; margin: 0 !important; opacity: 0; visibility: hidden; transition: opacity .8s ease, visibility 0s linear .8s !important; }
.tw-car .swiper-slide-active { opacity: 1; visibility: visible; transition: opacity .8s ease !important; }
.tw-car .elementor-swiper-button { position: absolute !important; top: 30% !important; bottom: auto !important; transform: none !important; width: 18px !important; height: 18px !important; margin: 0 !important; opacity: .8; cursor: pointer; }
.tw-car .elementor-swiper-button svg { width: 18px; height: 18px; fill: var(--color-text); transition: fill .3s; }
.tw-car .elementor-swiper-button:hover svg { fill: var(--color-brand); }
.tw-car .elementor-swiper-button-prev { left: 11px !important; right: auto !important; }
.tw-car .elementor-swiper-button-next { right: 11px !important; left: auto !important; }
@media (max-width: 767.98px) { .tw-car { padding: 0 20px !important; } .tw-car .elementor-swiper-button-prev { left: 1px !important; } .tw-car .elementor-swiper-button-next { right: 1px !important; } }
/* Homepage hero: native Nested Carousel (.tw-hero-car) filling the 1280×500 hero stage, push transition like the old LayerSlider. */
.elementor .tw-hero-car { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; z-index: 1; margin: 0 !important; padding: 0 !important; }
.tw-hero-car .e-n-carousel, .tw-hero-car .swiper-wrapper, .tw-hero-car .swiper-slide { height: 100% !important; }
.tw-hero-car .swiper-slide > .e-con { height: 100%; min-height: 0; padding: 0 !important; position: relative; }
.tw-hero-car .swiper-wrapper { transition-timing-function: cubic-bezier(.45, 0, .55, 1) !important; }
/* Editor only: atomic widgets get an editor wrapper there, so the absolutely positioned hero photo, badge and texts must position against the slide, not the wrapper. */
.elementor-editor-active .js-hero-slide .elementor-element:not(.e-con):not(.e-div-block) { position: static !important; }
/* Forms: spinner in the submit button while sending (class set by Custom JS). */
form.tw-sending [type="submit"] { position: relative; color: transparent !important; pointer-events: none; }
form.tw-sending [type="submit"]::after { content: ''; position: absolute; top: 50%; left: 50%; width: 18px; height: 18px; margin: -9px 0 0 -9px; border: 2px solid #fff; border-right-color: transparent; border-radius: 50%; animation: tw-spin .7s linear infinite; }
@keyframes tw-spin { to { transform: rotate(360deg); } }

/* Icons (btn-*, ico-*): add the global class to a button / element, the icon takes the text colour. Files are in the Media Library. */
.btn-home::after, .btn-download::after { content: ''; display: inline-block; width: 16px; height: 16px; margin-inline-start: 8px; vertical-align: -2px; background-color: currentColor; -webkit-mask: var(--tw-icon) center / contain no-repeat; mask: var(--tw-icon) center / contain no-repeat; }
.btn-home { --tw-icon: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/home.svg'); }
.btn-home::after { width: 18px; margin-inline-start: 5px; }
.btn-download { --tw-icon: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/download.svg'); }
.btn-pdf::before { content: ''; display: inline-block; width: 13px; height: 16px; margin-inline-end: 8px; vertical-align: -2px; background-color: currentColor; -webkit-mask: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/file-pdf.svg') center / contain no-repeat; mask: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/file-pdf.svg') center / contain no-repeat; }
.btn-arrow-prev::before, .btn-arrow-next::before { content: ''; display: block; width: 14px; height: 24px; margin: 0 auto; background-color: var(--color-text); -webkit-mask: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/arrow.svg') center / contain no-repeat; mask: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/arrow.svg') center / contain no-repeat; transition: background-color .3s; }
.btn-arrow-prev::before { transform: scaleX(-1); }
.btn-arrow-prev:hover::before, .btn-arrow-next:hover::before { background-color: var(--color-brand); }
.ico-upload { background-color: #e3e3e3; -webkit-mask: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/cloud-upload-alt.svg') center / contain no-repeat; mask: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/cloud-upload-alt.svg') center / contain no-repeat; }

/* Accessibility: the footer credit link must differ from the text not only by colour. */
.elementor-location-footer a[href*="wextra.cz"] { text-decoration: underline !important; }

/* js-gallery: images open in a lightbox slideshow (Custom JS). */
.js-gallery .tw-gallery-item img { cursor: zoom-in; }

/* Lightbox is always full screen – keep it at 0/0 even if Elementor measures it before its content is laid out. */
.elementor-lightbox .dialog-lightbox-widget-content { top: 0 !important; left: 0 !important; }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Lufga regular';
	font-style: normal;
	font-weight: normal;
	font-display: swap;
	src: url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/Lufga-Regular.woff2') format('woff2'),
		url('https://www.tabor-wood.cz/wp-content/uploads/2026/09/Lufga-Regular.woff') format('woff');
}
/* End Custom Fonts CSS */