@charset "UTF-8";

:root { --highlight: #00456b; --highlight-hover: #005477; --gray: #f4f4f4; --yellow: #c9a227; --yellow-hover: #d9b53f; }

*, *::before, *::after {box-sizing: inherit;}
html {box-sizing: border-box;margin: 0;padding: 0;}
body {margin: 0;padding: 0;min-height: 100vh;display: flex;flex-direction: column;}
body>main {flex: 1;overflow-x:hidden;}
p {margin: 0;padding:0;}

/* Wrappery a helpery pro content */
:root {
    --max-content-width: 1150px;
    --content-max-width: 1150px;
    --content-max-width--extra: calc(var(--content-max-width) / 2);
    --content-padding-left: 0;
    --content-padding-right: 0;
    --content-padding-top: 36px;
    --content-padding-bottom: 36px;
    --content-margin-top: 36px;
    --content-margin-bottom: 36px;
}
.content-max-width {margin-left: auto;margin-right: auto;max-width: var(--content-max-width);}
.content-max-width--extra {max-width: var(--content-max-width--extra, 600px);margin: auto;}
.content-padding-x {padding-left: var(--content-padding-left);padding-right: var(--content-padding-right);}
.content-padding-y {padding-top: var(--content-padding-top);padding-bottom: var(--content-padding-bottom);}
.content-padding-t {padding-top: var(--content-padding-top);}
.content-padding-b {padding-bottom: var(--content-padding-bottom);}
.content-margin-y {margin-top: var(--content-margin-top);margin-bottom: var(--content-margin-bottom);}
.content-margin-t {margin-top: var(--content-margin-top);}
.content-margin-b {margin-bottom: var(--content-margin-bottom);}
.content {margin-left: auto;margin-right: auto;max-width: var(--content-max-width);padding-left: var(--content-padding-left);padding-right: var(--content-padding-right);padding-top: var(--content-padding-top);padding-bottom: var(--content-padding-bottom);}

@media screen and (max-width: 1200px) {
    :root {
        --content-padding-left: 1rem;
        --content-padding-right: 1rem;
    }
    .content-max-width {max-width: 100vw;max-width: 100dvw;}
}
@media screen and (max-width: 600px) {
    :root {
        --content-padding-left: 3%;
        --content-padding-right: 3%;
        --content-margin-top: 1rem;
        --content-margin-bottom: 1rem;
    }
}

/******************************************************************************/

.content-menu {display: grid;grid-template-areas: "menu line text";grid-template-columns: 200px auto 1fr;gap: 1em;}
.content-menu::before {content: "";grid-area: line;display: block;background: currentColor;width: 1px;height: 100%;opacity: .2;}
.content-menu__text {grid-area: text;max-width: 650px;margin:auto;}
.content-menu__left {grid-area: menu;}
.content-menu>div>h1,
.content-menu>div>.h1 {margin-top: 0;}

@media (max-width: 850px) {
    .content-menu {grid-template-columns: 1fr;grid-template-areas: "menu" "line" "text";}
    .content-menu::before {display: none;}
    .content-menu__left {position: relative;}
    .content-menu__left::before {content: "";display: block;position: absolute;left: 0;bottom: -1em;background: currentColor;width: 100%;height: 1px;opacity: .2;}
}
/******************************************************************************/

input, textarea, select { padding: 4px 5px; }
select option[disabled="disabled"] { color: #990033; }
fieldset { background: rgba(230, 230, 230, 0.25); border: 1px solid #dedede; border-radius: 5px; float: left; margin-right: 10px; padding: 5px 10px; }
fieldset legend .fa { color: #aaa; padding: 0 2px; }
fieldset legend .fa:hover { color: #444; }
.input { padding: 7px; width: calc(100% - 16px); }
.select { padding: 7px; width: 100%; }
.submit { padding: 10px; width: 100%; }
.responsive-design { font-size: 1em; }
details summary {cursor: pointer;white-space: nowrap;}

/******************************************************************************/

.ui-widget, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: oswald; font-size: 1em; }
.custom-combobox-toggle { margin: -2px 0 0 1px; padding: 8px 2px 8px 1px; }

a[href^="tel"] { color: inherit; text-decoration: none; } /*, a[href^="mail"]*/
a[x-apple-data-detectors] { color: inherit !important; text-decoration: none !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important; }

/******************************************************************************/

.highlight { color: var(--higlight); }
.highlight2 { color: var(--yellow); }
.nu { text-decoration: none; }
.nu:hover { text-decoration: underline; }
.un { text-decoration: underline; }
.un:hover { text-decoration: none; }
.nn { text-decoration: none; }
.nn:hover { text-decoration: none; }
.nc { text-decoration: none; }
.nc:hover { color: #eb2332; color: #1aa9e6; }
.ui-tooltip { background: #444; border: 0; border-radius: 2px; box-shadow: none; color: #fff; font-family: oswald; font-size: 12px; }
.hidden { display: none; }
.clear { clear: both; }
.text-shadow { text-shadow: 1px 2px 3px #222; }
.center { text-align: center; }
.uppercase { text-transform: uppercase; }
.go-back { display: inline-block; margin-top: 0em; text-transform: lowercase; }

/******************************************************************************/
/* hlášky */

.msg-ok { background: #0a0; color: #fff; margin-bottom: 1em; padding: 5px 15px; }
.msg-error { background: #c00; color: #fff; margin-bottom: 1em; padding: 5px 15px; }
.msg-ok a, .msg-error a { color: #fff; }

/******************************************************************************/

.wrap1 { clear: both; position: relative; width: 100%;}
.wrap2 {
    /* dev */
    /* outline: 1px solid #ffc8c8;  */
}
.wrap2.is-limited {max-width: var(--max-content-width, 1280px);margin-left: auto;margin-right: auto;}
.anchor {display: block;height: 0;width: 0;}


.wrap1--footer {
    background: var(--color-bg-1);
    color: var(--color-fg-3);
    padding-top: 50px;
    padding-bottom: 100px;
}
.wrap1--footer-2 {
    background: var(--color-bg-1);
    color: var(--color-fg-3);
    padding-bottom: 2em;
    text-align: right;
}
.wrap1--about-us-1 {
    margin-top: 60px;
}
.wrap1--hr-1 {
    margin-top: 90px;
    margin-bottom: 64px;
}
.wrap1--realization-1 {
    padding-top: 33px;
    --h1-line-color: white;
}
.wrap1--realization-2 {}
.wrap1--quality-1 {
    margin-top: 86px;
    margin-bottom: 58px;
}
.wrap1--news-1 {}
.wrap1--news-2 {
    padding-top: 30px;
    padding-bottom: 52px;
}
.wrap1--services-1 {}
.wrap1--services-2 {
    margin-bottom: 80px;
}
.wrap1--bg-blue {
    background: var(--color-bg-1);
    color: var(--color-fg-3);
}
.wrap1--bg-silver {
    background: var(--color-bg-2);
    color: var(--color-fg-2);
}
.wrap1--bg-white-silver {
    --bg-line-height: 150px;
    background-image: linear-gradient(180deg, var(--color-bg-3) var(--bg-line-height,110px), var(--color-bg-2) var(--bg-line-height,110px));
}
.wrap1-bg-blue-white {
    --bg-line-height: 76px;
    background-image: linear-gradient(0deg, var(--color-bg-3) var(--bg-line-height,110px), var(--color-bg-1) var(--bg-line-height,110px));
    color: var(--color-fg-3);
}
.wrap1--developerske-projekty {
    background-image: none;
    background-repeat: no-repeat;
    background-size: 650px;
    background-position-y: -220px;
    background-position-x: calc(100vw / 2 + 270px);
}
.wrap1--contact-form {
    margin-top: 2em;
}

@media (max-width: 600px) {
    .wrap1--about-us-1 {
        margin-top: 2em;
    }
    .wrap1--hr-1 {
        margin-top: 2em;
        margin-bottom: 2em;
    }
    .wrap1--realization-1 {
        padding-top: 1em;
    }
    .wrap1--news-2 {
        padding-top: 2em;
        padding-bottom: 2em;
    }
    .wrap1--quality-1 {
        margin-top: 2em;
        margin-bottom: 2em;
    }
    .wrap1--services-2 {
        margin-bottom: 40px;
    }
}

/******************************************************************************/
/* Hlavička */
#wrap-head, #head {background: var(--color-bg-1);color: var(--color-fg-3);}
.head-content {--head-menu-color-1: hsl(212deg 48% 60%);--head-menu-color-2: var(--color-fg-3);display: grid;grid-template-areas: "social social lang" "logo menu menu";grid-template-columns: 1fr auto auto;gap: 1em 4%;justify-items: end;align-items: center;padding-top: 8px;padding-bottom: 38px;position: relative;}
.head-logo {grid-area: logo;justify-self: start;}
.head-social {grid-area: social;font-size: 14px;display: flex;flex-wrap: wrap;gap: 3em;}
.head-social__item {display: flex;gap: .4em;align-items: center;text-decoration-color: transparent;}
.head-social__icon {font-size: 1.6em;display: grid;}
.head-logo__img {display: block;height: 30px;max-width: 90%;min-width: 267px;}
.head-lang {display: flex;grid-area: lang;font-size: 14px;gap: 1em;justify-self: start;line-height: 1;}
.head-lang__item {display: flex;}
.head-lang__link {color: var(--head-menu-color-1);}
.head-lang__link--active {color: var(--head-menu-color-2);text-decoration: underline;}
.head-lang__link:hover {color: var(--color-fg-1);color: #fff;}
.head-menu {grid-area: menu;display: flex;align-items: baseline;color: var(--head-menu-color-1);align-self: end;font-size: 16px;}
.head-menu__list {display: flex;padding: 0;margin: 0;list-style: none;gap: .5em 1.5em;flex-wrap: wrap;justify-content: end;}
.head-menu__item {color: var(--head-menu-color-1);position: relative;transition: .2s color;text-transform: uppercase;line-height: 1.2;}
.head-menu__item::before,
.head-menu__item::after {content: "";display: block;background: var(--head-menu-color-1);width: 100%;height: 1px;position: absolute;left: 0;bottom: 0;}
.head-menu__item::after {background: var(--head-menu-color-2);transform: scaleX(0);transform-origin: right;transition: .4s transform;}
.head-menu__item--active {color: var(--head-menu-color-2);}

.head-menu__item:hover,
.head-menu__item:focus-within {color: var(--head-menu-color-2);}

.head-menu__item--active::after,
.head-menu__item:focus-within::after,
.head-menu__item:hover::after {transform: scaleX(1);transform-origin: left;}
.head-menu__link {text-decoration: none;display: inline-block;white-space: nowrap;}
.head-menu__link {}

.head-menu__mobile-only {display: none;}
.head-menu__button {font-size: 48px;color: currentcolor;text-decoration: none;}

.head-menu__list--2 {position: absolute;z-index: 3;display: block;min-width: 250px;background: var(--color-bg-1);padding: 1em 1em;font-weight: 400;color: var(--color-fg-2);transform: scaleY(0);transform-origin: top;transition: transform;transition-duration: .2s;transition-delay: .3s;}
.head-menu__list--2.head-menu__list--active {font-weight: 500;color: var(--color-fg-1);}
.head-menu__item:hover .head-menu__list--2,
.head-menu__item:focus-within .head-menu__list--2 {transform: scaleY(1);}
.head-menu__list--2 .head-menu__item {font-size: .9em;line-height: 1;}
.head-menu__list--2 .head-menu__item::before {}
.head-menu__list--2 .head-menu__item::after {height: 1px;}
.head-menu__list--2 .head-menu__link {padding: .5em 0;display: block;}
.head-menu__list--2 .head-menu__item--active {color: var(--head-menu-color-2);font-weight: bold;}

body.menu-open .head-menu__button-icon-open {display: none;}
body:not(.menu-open) .head-menu__button-icon-close {display: none;}

#head.fixed  {position: fixed;top: 0;left: 0;right: 0;z-index: 10;box-shadow: var(--box-shadow);}
.is-scroll-direction-enabled #head.fixed  {transform: translateY(-100%);transition: .2s transform;}
.is-scroll-direction-enabled.is-scroll-top #head.fixed ,
.is-scroll-direction-enabled.is-scroll-up #head.fixed {transform: translateY(0%);}

@media (max-width: 850px) {
    .head-content {gap: 0;padding-bottom: 0;}
    .head-menu__list {display: none;}
    .head-menu__mobile-only {display: block;}
    .head-social {display: none;}

    .head-logo__img {min-width: unset;}
}
@media (max-width: 530px) {
    .head-contact {display: none;}
}

/******************************************************************************/
/* Levé menu */

#submenu li {margin-bottom: .25em;}
#submenu li.active {font-weight: bold;}
#submenu a {text-decoration: none;}
#submenu a:hover {text-decoration: underline;}

/******************************************************************************/
/* Mobilní menu */
.mobile-menu {--head-menu-color-1: hsl(212deg 48% 60%);--head-menu-color-2: var(--color-fg-3);}
.mobile-menu {display: none;position: fixed;left: 0;right: 0;bottom: 0;top: 0;background: #00000066;z-index: 99;isolation: isolate;opacity: 0;visibility: hidden;transition: opacity, visibility;transition-duration: .3s, 0s;transition-delay: 0s, .3s;}
.mobile-menu__content {background: var(--color-bg-1);color: var(--head-menu-color-1);display: grid;grid-template-areas: "lang lang" "logo button" "list list";grid-template-columns: 1fr auto;grid-template-rows: auto auto 1fr;min-height: 100vh;max-height: 100vh;padding: 8px 3% 0px 3%;transition: transform;transition-duration: .3s;transform: translateX(-100%);text-transform: uppercase;}
.mobile-menu__logo {grid-area: logo;align-self: center;}
.mobile-menu__lang {grid-area: lang;justify-self: end;}
.mobile-menu__list {grid-area: list;padding: 0;margin: 0;list-style: none;margin-top: 1em;}
.mobile-menu__content>.mobile-menu__list {overflow: auto;padding-bottom: 6em;}
.mobile-menu__item {margin-bottom: .5em;font-size: 18px;}
.mobile-menu__item:not(:last-child) {border-bottom: 1px solid var(--head-menu-color-1);}
.mobile-menu__item--active {color: var(--head-menu-color-2);font-weight: 500;}
.mobile-menu__item:hover {color: var(--head-menu-color-2);}

.mobile-menu__link {text-decoration: none;display: block;padding: 4px;}
.mobile-menu__button {grid-area: button;justify-self: end;}

.mobile-menu__list--2 {margin-top: 0;margin-bottom: 1em;margin-left: .5em;padding-left: .5em;border-left: 1px solid var(--head-menu-color-1);}
.mobile-menu__list--2 .mobile-menu__item {font-size: 0.9em;color: var(--head-menu-color-1);font-weight: 400;}
.mobile-menu__list--2 .mobile-menu__item:hover {color: var(--head-menu-color-2);}
.mobile-menu__list--2 .mobile-menu__item--active {color: var(--head-menu-color-2);font-weight: 500;}

body.menu-open .mobile-menu__content {transform: translateX(0%);}
body.menu-open .mobile-menu {opacity: 1;visibility: visible;transition: opacity, visibility;transition-duration: .3s, 0s;transition-delay: 0s, 0s;}
@media (max-width: 850px) {
    .mobile-menu {display: block;}
}

/******************************************************************************/
/* Rozcestník (Machines) */

.signpost__list {display: grid;grid-template-columns: repeat(auto-fill, minmax(246px, 1fr));gap: 20px;}
.signpost__item {max-width: 300px;}
.signpost__link {text-decoration-line: none;}
.signpost__link:hover {text-decoration-line: underline;}
.signpost .signpost__title {display: grid;align-items: end;}
.signpost__title {min-height: 2em;}
.signpost__img {width: 100%;height: auto;object-fit: cover;aspect-ratio: 271/204;}
.signpost__menu {line-height: 1.625;padding-left: 16px;margin: 26px 0;}
.signpost__menu-item::marker {color: var(--color-fg-1);font-size: .6em;}
.signpost__mini-title {font-weight: bold;}
.signpost__mini+.signpost__menu {margin-top: .5em;}
@media (max-width: 600px) {
    .signpost {display: grid;justify-content: center;}
    .signpost__list {gap: 0;}
    .signpost__title {min-height: unset;}
    .signpost__img {max-height: 180px;}
    .signpost__menu {margin-top: 1em;margin-bottom: 1em;}
}
/******************************************************************************/
/* HP slider */

.slider1 {--swiper-pagination-bullet-width: 6px;--swiper-pagination-bullet-height: 6px;--swiper-pagination-bullet-inactive-color: silver;--swiper-pagination-bullet-inactive-opacity: 1;--swiper-pagination-bullet-color: silver;--swiper-pagination-color: white;--swiper-navigation-color: white;--swiper-pagination-bottom: 8px;display: flex;user-select: none;isolation: isolate;}
.slider1 .swiper-pagination {display: flex;align-items: center;position: absolute;justify-content: center;}
.slider1 .swiper-pagination-bullet-active {--swiper-pagination-bullet-width: 10px;--swiper-pagination-bullet-height: 10px;}
.slider1__arrow {display: grid;align-items: center;cursor: pointer;font-size: 32px;color: var(--color-bg-1);transition: .2s filter;display: none;}
.slider1__arrow:hover {filter: brightness(0.8);}
.slider1__arrow.swiper-button-disabled {opacity: 0;cursor: not-allowed;}
.slider1__arrow.swiper-button-lock {opacity: 0;}
.slider1__content {width: 100%;height: 100%;}
.slider1 .swiper-slide {height: 100%;width: 100%;}
.slider1__slide {display: grid;align-items: center;}
.slider1__slide>* {grid-row: 1;grid-column: 1;}
.slider1__box {width: 100%;}
.slider1__text {background: var(--color-bg-1);color: var(--color-fg-3);padding: 1em;line-height: 1.2;font-size: 40px;text-transform: uppercase;font-weight: 800;display: inline-block;max-width: 100%;}
.slider1__img img {width: 100%;height: 100%;object-fit: cover;}

/* Jiné umístění textu - ve spod obrázku */
.slider1__slide>* {grid-row: unset;}
.slider1__box {text-align: center;padding: 0;margin-top: -2em;}

@media (max-width: 1200px) {
    .slider1__text {font-size: 3.5vw;}
}
@media (max-width: 600px) {
    .slider1__text {font-size: 20px;}
    .slider1__slide>* {grid-row: unset;}
    .slider1__box {text-align: center;padding: 0;margin-top: -2em;}
}

/******************************************************************************/
/* Slider 2 */
.slider2 {--swiper-pagination-bullet-width: 6px;--swiper-pagination-bullet-height: 6px;--swiper-pagination-bullet-inactive-color: silver;--swiper-pagination-bullet-inactive-opacity: 1;--swiper-pagination-bullet-color: silver;--swiper-pagination-color: white;--swiper-navigation-color: white;display: flex;user-select: none;position: relative;}
.slider2 .swiper-pagination-bullet-active {--swiper-pagination-bullet-width: 10px;--swiper-pagination-bullet-height: 10px;}
.slider2__arrow {display: grid;align-items: center;cursor: pointer;font-size: 32px;color: var(--color-bg-3);transition: .2s filter;}
.slider2__arrow:hover {filter: brightness(.8);}
.slider2__arrow--prev {transform: translateX(-200%);margin-right: -1em;}
.slider2__arrow--next {transform: translateX(200%);margin-left: -1em;}
.slider2__arrow.swiper-button-disabled {opacity: 0;cursor: not-allowed;}
.slider2__arrow.swiper-button-lock {opacity: 0;}
.slider2__content {width: 100%;height: 100%;}
.slider2 .swiper-slide {height: auto;width: auto;}
.slider2__slide {display: grid;grid-template-areas: "picture . text" "picture more more";grid-template-columns: 1fr 2em 1fr;grid-template-rows: 1fr auto;}
.slider2__picture {grid-area: picture;}
.slider2__img {width: 100%;height: auto;object-fit: cover;aspect-ratio: 274/213;}
.slider2__text {grid-area: text;line-height: 1.5;font-weight: 300;padding-bottom: 70px;}
.slider2__text ul li::marker {color: currentColor;}
.slider2__more {grid-area: more;background: var(--color-bg-2);height: var(--bg-line-height);display: grid;align-items: end;justify-items: end;max-width: 400px;}
.slider2 .swiper-pagination {bottom: calc(var(--bg-line-height) + 30px);width: 50%;display: flex;align-items: center;margin-left: calc(50% + 1em);z-index: 3;}
@media (max-width: 1280px) {
    .slider2__arrow {position: absolute;bottom: 19px;left: calc(50% + 1rem);z-index: 2;}
    .slider2__arrow--prev {transform: translateX(0);}
    .slider2__arrow--next {transform: translateX(300%);}
}
@media (max-width: 600px) {
    .slider2__slide {grid-template-areas: "picture" "text" "more";grid-template-columns: 1fr;grid-template-rows: auto 1fr auto;}
    .slider2__picture {justify-self: stretch;}
    .slider2__img {max-height: 200px;margin-bottom: 1em;}
    .slider2 .swiper-pagination {width: 100%;margin-left: 0;justify-content: center;z-index: 1;}
    .slider2__arrow {bottom: calc(var(--bg-line-height) + 20px);left: 0;right: unset;}
    .slider2__arrow--next {right: 0;transform: none;left: unset;}
}

/******************************************************************************/
/* Slider 3 */
.slider3 {display: flex;user-select: none;}
.slider3__arrow {display: grid;align-items: center;cursor: pointer;font-size: 32px;color: var(--color-bg-3);transition: .2s filter;}
.slider3__arrow:hover {filter: brightness(0.8);}
.slider3__arrow--prev {transform: translateX(-200%);}
.slider3__arrow--next {transform: translateX(200%);}
.slider3__arrow.swiper-button-disabled {opacity: 0;cursor: not-allowed;}
.slider3__arrow.swiper-button-lock {opacity: 0;}
.slider3__content {width: 100%;height: 100%;}
.slider3 .swiper-slide {height: auto;width: auto;}

.slider3__slide {display: grid;grid-template-areas: "picture text" "picture more";grid-template-columns: 1fr 1fr;grid-template-rows: 1fr auto;gap: 1em 2em;height: 100%;}
.slider3__picture {grid-area: picture;justify-self: end;}
.slider3__img {width: 100%;height: auto;object-fit: cover;aspect-ratio: 254/210;}
.slider3__text {grid-area: text;font-size: 14px;}
.slider3__text h3, .slider3__text .h3 {font-size: 24px;}
.slider3__more {grid-area: more;height: var(--bg-line-height);}

@media (max-width: 1280px) {
    .slider3__arrow--prev {transform: translateX(0);margin-right: 8px;}
    .slider3__arrow--next {transform: translateX(0);margin-left: 8px;}
}
@media (max-width: 600px) {
    .slider3__slide {grid-template-areas: "picture" "text" "more";grid-template-columns: 1fr;grid-template-rows: auto 1fr auto;}
    .slider3__picture {justify-self: stretch;}
    .slider3__img {max-height: 200px;}
}
/******************************************************************************/
/* Slider v4 - foto galerie */
.slider4 {display: flex;user-select: none;}
.slider4__arrow {display: grid;align-items: center;cursor: pointer;font-size: 32px;color: var(--color-bg-1);transition: .2s filter;}
.slider4__arrow:hover {filter: brightness(0.8);}
.slider4__arrow--prev {transform: translateX(-200%);}
.slider4__arrow--next {transform: translateX(200%);}
.slider4__arrow.swiper-button-disabled {opacity: 0;cursor: not-allowed;}
.slider4__arrow.swiper-button-lock {opacity: 0;display: none;}
.slider4__content {width: 100%;height: 100%;}
.slider4 .swiper-slide {height: auto;width: auto;display: grid;align-items: center;}
.slider4__img {width: 100%;height: auto;object-fit: contain;max-height: 300px;}

@media (max-width: 1280px) {
    .slider4__arrow--prev {transform: translateX(0);margin-right: 8px;}
    .slider4__arrow--next {transform: translateX(0);margin-left: 8px;}
}
@media (max-width: 600px) {
    .slider4__img {max-height: 200px;}
}
/******************************************************************************/
/* Slider v5 - slider_projects */
.slider5 {isolation: isolate;}
.slider5 .swiper-pagination {display: none;}
.slider5__slide {display: grid;}
.slider5__image {position: relative;}
.slider5__picture {position: relative;display: block;}
.slider5__picture::before {content: "";display: block;padding-top: calc(640 / 1140 * 100%);}
.slider5__img {position: absolute;width: 100%;height: 100%;object-fit: cover;top: 0;}
.slider5__arrows {display: flex;position: absolute;bottom: 0;left: 50%;}
.slider5__arrow {display: grid;align-items: center;cursor: pointer;font-size: 32px;color: #fff;background: #646464;transition: .2s filter, .2s background;padding: .3rem 4rem;}
.slider5__arrow--prev {background: #9d9d9d;}
.slider5__arrow:hover {background: #000;}
.slider5__arrow.swiper-button-disabled {opacity: 0;cursor: not-allowed;}
.slider5__arrow.swiper-button-lock {opacity: 0;}
.slider5__box {justify-self: center}
.slider5__title a {color: var(--color-fg-1);}
.slider5__title > * > * {font-size: 24px;/* text-decoration: underline solid; */margin: 2rem 0;}
.slider5__text {font-size: 14px;}
.slider5__buttons {margin-top: 2rem;margin-bottom: 2rem;}

@media (max-width: 850px) {
    .slider5__arrows {transform: translateX(-50%);}
}
@media (max-width: 400px) {
    .slider5__arrow {padding: .3rem 1rem;font-size: 26px;}
}

/******************************************************************************/
/* Divě ohraničený box (Quality) */
.box-outlined {position: relative;padding-bottom: 2em;}
.box-outlined::before {content: "";position: absolute;border: 1px solid #b9b9b9;inset: 0;top: 128px;z-index: -1}
.box-outlined__text {margin: 0 15%;padding: 0 1em;background: var(--color-bg-3);text-align: center;}
.box-outlined__photos {display: flex;flex-wrap: wrap;justify-content: center;gap: max(9%, 1em);padding-top: 2em;}
.box-outlined__photos img {max-height: 340px;box-shadow: 0 0 4px hsl(0deg 0% 0% / 20%);}
@media (max-width: 600px) {
    .box-outlined__text {margin-left: 5%;margin-right: 5%;}
}
/******************************************************************************/
/* Rozcestník Služby HP */
.signpost-services__list {display: grid;grid-template-columns: repeat(3, 1fr);grid-auto-rows: 1fr;}
.signpost-services__item {display: grid;grid-template-rows: auto 1fr auto;padding: 1.5em;}
.signpost-services__item:nth-child(2n) {background: var(--color-bg-2);}
.signpost-services__image {overflow: hidden;display: block;}
.signpost-services__image img {width: 100%;height: auto;object-fit: cover;aspect-ratio: 4/3;transition: .3s transform;}
.signpost-services__image img:hover {transform: scale(1.1) rotate(6deg);transition-duration: 2s;transition-timing-function: linear;}
.signpost-services__title {font-size: 24px;color: var(--color-fg-1);text-transform: uppercase;text-decoration-thickness: 1px;text-decoration-line: none;display: inline-block;margin-top: 1rem;margin-bottom: 1rem;justify-self: start;align-self: start;}
.signpost-services__title:hover {text-decoration-thickness: 1px;text-decoration-line: underline;}

@media (max-width: 900px) {
    .signpost-services__list {grid-template-columns: repeat(2, 1fr);}
    .signpost-services__item:nth-child(n) {background: transparent;}
    .signpost-services__item:nth-child(4n-2), .signpost-services__item:nth-child(4n-1) {background: var(--color-bg-2);}
}
@media (max-width: 650px) {
    .signpost-services__item {padding: 1em;}
}
@media (max-width: 600px) {
    .signpost-services__title {font-size: 20px;}
}
@media (max-width: 500px) {
    .signpost-services__list {grid-template-columns: repeat(1, 1fr);grid-auto-rows: auto;}
    .signpost-services__item:nth-child(n) {background: transparent;}
    .signpost-services__item:nth-child(2n) {background: var(--color-bg-2);}
}

/******************************************************************************/
/* Počítadlo */
.wrap1--numbers {background-color: #d29504;position: relative;isolation: isolate;}
.wrap1--numbers::before {content: ' ';display: block;position: absolute;left: 0;top: 0;width: 100%;height: 100%;z-index: -1;opacity: 0.1;background-image: var(--img, url("https://www.gebeshuber.cz/www/img/tmp/stroj.png"));background-repeat: no-repeat;background-size: cover;background-position: center;}
.counter-box {display: grid;grid-template-columns: 1fr auto;}

.counter-box__picture {display: none;width: 340px;margin-top: -64px;}
.counter-box__img {width: 100%;height: auto;}

.counter-box__counters {display: grid;grid-auto-flow: column;align-items: center;gap: 1em;margin: 4em 0;}
.counter-box__counter {display: grid;justify-items: center;}
.counter-box__number {font-weight: 900;font-size: 4.2em;}
.counter-box__text {text-transform: uppercase;font-weight: 600;font-size: 1.25em;text-align: center;}
@media (max-width: 850px) {
    .counter-box {grid-template-columns: 1fr;}
    .counter-box__counters {grid-auto-flow: row;}
    .counter-box__picture {width: 300px;margin-top: -150px;margin-left: -96px;}
}

/******************************************************************************/
/* Patička */
/* .wrap1--footer-1 {
    --footer-color-1: var(--color-fg-3);
    --footer-color-2: var(--color-bg-1);
    background: var(--footer-color-2);
    color: var(--footer-color-1);
    background-image: url("https://www.gebeshuber.cz/www/img/tmp/logo_2.png");
    background-repeat: no-repeat;
    background-size: 500px;
    background-position: calc(100% + 140px) -100px;
    padding-top: 5em;
    padding-bottom: 5em;
} */
.wrap1--footer-1 {--footer-color-1: var(--color-fg-3);--footer-color-2: var(--color-bg-1);background: var(--footer-color-2);color: var(--footer-color-1);background-image: none;background-repeat: no-repeat;background-size: 900px;background-position: right -20px top -450px;padding-top: 5em;padding-bottom: 5em;}

.foot1-kangaroo {grid-area: kangaroo;line-height: 1em;}
.foot1-kangaroo {font-size: 14px;}
.foot1-kangaroo a {text-decoration: none;}
.foot1-kangaroo a:hover {text-decoration: underline;}
.foot1-kangaroo div {display: flex;flex-wrap: wrap;display: inline-block;}
.foot1-kangaroo div a {margin-left: .3em;}
.foot1-kangaroo div a:before {content: "|";margin-right: .3em}


.foot1-content {display: grid;grid-template-areas: "logo menu" "text menu" "social menu" "kangaroo menu";grid-template-columns: 1fr auto;grid-template-rows: auto auto 1fr auto;align-items: start;gap: 1.5em 2em;font-size: 16px;}
.foot1-logo {grid-area: logo;justify-self: start;}
.foot1-logo__img {display: block;max-width: 100%;height: 30px;}
.foot1-logo__picture {display: block;}
.foot1-text {}
.foot1-text--0 {grid-area: text;}
.foot1-text--1 {grid-area: menu;}
.foot1-menu__list {list-style: none;padding: 0;margin: 0;margin-right: 4em;}
.foot1-menu__item {line-height: 1;margin-bottom: 1em;text-transform: uppercase;}
.foot1-menu__item:last-child {margin-bottom: 0;}
.foot1-menu__link {}
.foot1-menu__link:hover {}

.foot1-social {grid-area: social;align-self: end;display: grid;grid-auto-flow: column;gap: 10px;justify-content: start;}
.foot1-social__item {--size: 2em;display: grid;width: var(--size);height: var(--size);border-radius: 100%;background: var(--footer-color-1);color: var(--footer-color-2);justify-content: center;align-items: center;line-height: 1;font-size: calc(var(--size) / 2);transition: .2s transform;}
.foot1-social__item:hover {transform: scale(1.5);}
.foot1-social__icon {display: grid;}

@media (max-width: 850px) {
    .wrap1--footer-1 {padding-block: 3em;}
    .foot1-content {grid-template-areas: "menu" "social" "logo" "text" "kangaroo";grid-template-columns: 1fr;justify-content: center;align-items: center;}
    .foot1-logo {display: grid;justify-content: center;}
    .foot1-menu__list {margin-right: 0;}
}

/******************************************************************************/
/* Služby */
.wrap1--nase-sluzby, .wrap1--sluzby {--content-padding-bottom: 0;background: #e9e9e9;padding-bottom: 5em;}

.services__item {--__color-title: var(--color-fg-1);--__color-text: inherit;--__color-left: #fff;--__color-right: #fff;overflow: hidden;background: linear-gradient(to right, var(--__color-left) 51%, var(--__color-right) 51%);}
.services__item:nth-child(2n) {background: linear-gradient(to right, var(--__color-left) 49%, var(--__color-right) 49%);}
.services__item:nth-child(8n + 1) {--__color-title: #fff;--__color-text: #fff;--__color-left: #2b3245;--__color-right: #e9e9e9;--__btn-bg: var(--color-bg-3);--__btn-fg: var(--color-fg-1);}
.services__item:nth-child(8n + 2) {--__color-title: var(--color-fg-1);--__color-text: inherit;--__color-left: #e9e9e9;--__color-right: #fff;}
.services__item:nth-child(8n + 3) {--__color-title: #fff;--__color-text: #fff;--__color-left: #02428a;--__color-right: #e9e9e9;--__btn-bg: var(--color-bg-3);--__btn-fg: var(--color-fg-1);}
.services__item:nth-child(8n + 4) {--__color-title: #fff;--__color-text: #fff;--__color-left: #e9e9e9;--__color-right: #4b4b4b;--__btn-bg: var(--color-bg-3);--__btn-fg: var(--color-fg-1);}
.services__item:nth-child(8n + 5) {--__color-title: var(--color-fg-1);--__color-text: inherit;--__color-left: #fff;--__color-right: #e9e9e9;}
.services__item:nth-child(8n + 6) {--__color-title: #fff;--__color-text: #fff;--__color-left: #e9e9e9;--__color-right: #2b3245;--__btn-bg: var(--color-bg-3);--__btn-fg: var(--color-fg-1);}
.services__item:nth-child(8n + 7) {--__color-title: #fff;--__color-text: #fff;--__color-left: #02428a;--__color-right: #e9e9e9;--__btn-bg: var(--color-bg-3);--__btn-fg: var(--color-fg-1);}
.services__item:nth-child(8n + 8) {--__color-title: #fff;--__color-text: #fff;--__color-left: #e9e9e9;--__color-right: #4b4b4b;--__btn-bg: var(--color-bg-3);--__btn-fg: var(--color-fg-1);}
.services__body {display: grid;grid-template-columns: 1fr 1fr;grid-template-areas:"right left";}
.services__item:nth-child(2n) .services__body {grid-template-areas:"left right";}
.services__right {grid-area: right;display: grid;grid-template-rows: 1fr auto;padding: 2em 3em 2em 0em;}
.services__item:nth-child(2n) .services__right {padding: 2em 0em 2em 3em;}
.services__left {grid-area: left;display: grid;}
.services__picture {display: grid;position: relative;}
.services__picture::before {content: "";padding-top: calc(368 / 570 * 100 * 1%);}
.services__img {position: absolute;width: 100%;height: 100%;object-fit: cover;background: var(--__color-right);}
.services__item:nth-child(2n) .services__img {background: var(--__color-left);}
.services__content {font-size: 14px;color: var(--__color-title)}
.services h1, .services h2, .services h3, .services h4, .services .h1, .services .h2,  .services .h3,  .services .h4 {font-size: 24px;font-weight: normal;margin-bottom: .5em;margin-top: .5em;color: var(--__color-title);}
/* Služby Možnost změnit na full image */
.services__item--full-image {position: relative;}
.services__item--full-image .services__picture {position: absolute;width: 50%;top: 0;bottom: 0;left: 50%}
.services__item--full-image:nth-child(2n) .services__picture {left: 0%}

@media (max-width: 1200px) {
    .services {--content-padding-left: 0;--content-padding-right: 0;}
    .services__item:nth-child(2n+1) .services__right {padding-left: 1em;}
    .services__item:nth-child(2n) .services__right {padding-right: 1em;}
}
@media (max-width: 650px) {
    .services__item {background: var(--__color-left);}
    .services__item:nth-child(2n) {background: var(--__color-right);}
    .services__body, .services__item:nth-child(2n) .services__body {grid-template-columns: 1fr;grid-template-areas: "right" "left";padding: 2em 0;}
    .services__item:nth-child(2n+1) .services__right {padding: 1em;}
    .services__item:nth-child(2n) .services__right {padding: 1em;}
}


/******************************************************************************/
/* Reference */
.wrap1--reference {background: #e9e9e9;}
.references__list {display: grid;grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));gap: 4em .5em;}
.references__item {text-decoration: none;font-size: 14px;}
.references__picture {display: grid;position: relative;}
.references__picture::before {content: "";display: block;padding-top: calc(234 / 374 * 100 * 1%);}
.references__img {position: absolute;width: 100%;height: 100%;object-fit: cover;}
.references__content {margin-top: 1em;}
.references__buttons {margin-top: 4em;margin-bottom: 2em;}

/******************************************************************************/
/* Reference v2 */
.wrap1--reference-v2 {
    /* --content-padding-top: .5rem; */
    --content-padding-bottom: 0rem;
}
.wrap1--reference-v2 .wrap1 {
    --content-padding-top: 2rem;
    --content-padding-bottom: 2rem;
}
.wrap1--reference-bg-silver {
    background: var(--color-bg-2);
    color: var(--color-fg-2);
}
.references2__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    gap: 3rem 2rem;
}
.references2__item {
    text-decoration: none;
    font-size: 14px;
    border: 1px solid #ccc;
    padding: 1.25rem;
    display: grid;
    grid-template-rows: auto auto 1fr auto;
    background: #fff;
}
.references2__picture {
    display: grid;
    position: relative;
    overflow: hidden;
}
.references2__picture::before {
    content: "";
    display: block;
    padding-top: calc(234 / 374 * 100 * 1%);
    background: var(--color-bg-2);
}
.references2__img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.references2__content {
    margin-top: 2.5em;
}
.references2__title h2 {
    margin-top: 0;
    margin-bottom: 0;
    min-height: calc(2em * 1.25);
    margin-bottom: 1rem;
}
.wrap1--reference-bg-silver .references2__item {
    border: none;
}

@supports (grid-template-rows: subgrid) {
    .references2__list {
        grid-template-rows: auto auto 1fr auto;
    }
    .references2__item {
        grid-row: span 4;
        display: grid;
        grid-template-rows: subgrid;
        gap: 0;
    }
}

/******************************************************************************/
/* Reference v3 */
.wrap1--reference-v3 {
    --content-padding-bottom: 1rem;
}
.wrap1--reference-v3 .wrap1 {
    --content-padding-top: 0rem;
    --content-padding-bottom: 2rem;
} 
.references3__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    gap: 3rem 1.5rem;
}
.references3__item {
    text-decoration: none;
    font-size: 14px;
    display: grid;
    text-align: center;
}
.references3__picture {
    display: grid;
    position: relative;
    overflow: hidden;
}
.references3__picture::before {
    content: "";
    display: block;
    padding-top: calc(234 / 374 * 100 * 1%);
}
.references3__img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: scale-down;
}
.references3__title h2 {
    margin-bottom: .75em;
    text-transform: uppercase;
}
.references3__buttons {margin-top: 1rem;}


@supports (grid-template-rows: subgrid) {
    .references3__list {
        grid-template-rows: auto auto 1fr auto;
    }
    .references3__item {
        grid-row: span 4;
        display: grid;
        grid-template-rows: subgrid;
        gap: 0;
    }
}


/******************************************************************************/
/* Kariera */
.career-list {display: grid; gap: 3em;}
.career {display: grid;grid-template-columns: 1fr 1fr;grid-template-areas: "left right";font-size: 14px;}
.career:nth-child(2n) {grid-template-areas:"right left";}
.career__left {grid-area: left;}
.career__right {grid-area: right;display: grid;grid-template-rows: 1fr auto;}
.career:nth-child(2n+1) .career__right {padding-left: 4em;}
.career:nth-child(2n) .career__right {padding-right: 4em;}
.career h1, .career h2, .career h3, .career h4, .career .h1, .career .h2, .career .h3, .career .h4 {font-size: 24px;font-weight: normal;color: var(--color-fg-1);margin-bottom: 1em;}
.career__picture {display: grid;/* margin: auto; */}
.career__img {width: 100%;height: auto;object-fit: cover;}

@media (max-width: 800px) {
    .career {grid-template-columns: 1fr;grid-template-areas: "right" "left";gap: 1em;}
    .career:nth-child(2n+1) .career__right {padding-left: 0em;}
    .career:nth-child(2n) .career__right {padding-right: 0em;}
    .career__picture {max-width: 400px;}
    .career__right {padding-left: 0;}
}

/******************************************************************************/
/* Kontaktni formular */
.cf-wrap {border: 1px solid #9d9d9d;padding-top: 2rem;padding-bottom: 4rem;margin-bottom: 4rem;}
.cf-wrap {background-image: none;background-repeat: no-repeat;background-size: 650px;background-position-y: -200px;background-position-x: -200px;}
.cf {overflow: hidden;max-width: 500px;margin: auto;padding: 0;font-size: 16px;padding: 0 1em;}
.cf__body {}
.cf__col--info {}
.cf__label {display: grid;margin-bottom: 2.2rem;line-height: 1;gap: .5rem;}
.cf__label:focus-within {color: var(--color-fg-1);}
.cf__label span::after {}
.cf__label input {appearance: none;border: none;outline: none;color: inherit;background: inherit;padding: 0.6em;border: 1px solid currentColor;}
.cf__label textarea {appearance: none;border: none;outline: none;color: inherit;background: inherit;padding: 0;border: 1px solid currentColor;padding: .6em;resize: vertical;}
.cf__col--text .cf__label {grid-template-columns: 1fr;}
.cf__foot-checkbox {display: grid;margin-bottom: 2.2rem;}
.cf .checkbox {--mark-checked-color: var(--color-fg-3);--mark-checked-background: var(--color-bg-1);--mark-size: 1.2em;}
.cf .checkbox__label {font-size: 14px;}

/******************************************************************************/

.hero__picture {display: block;}
.hero__img {width: 100%;object-fit: cover;min-height: 240px;max-height: 240px;}

/******************************************************************************/

.history {display: grid;grid-template-columns: 1fr 1fr;position: relative;gap: 0 54px;}
.history::before {content: "";position: absolute;left: 50%;transform: translateX(-50%);background: silver;width: 1px;bottom: 0;top: 10px;}
.history__item:nth-child(2n) {text-align: left;}
.history__item:nth-child(2n+1) {text-align: right;}
.history__item::before {content: "";display: block;background: var(--color-fg-1);border-radius: 100%;height: 13px;width: 13px;position: absolute;left: 50%;transform: translateX(-50%);}
.history__item--empty::before {content: none;display: none;}
.history__item>:nth-child(1) {font-size: 24px;color: var(--color-fg-1);}
.history__item>:nth-child(2) {font-weight: bold;text-transform: uppercase;}
.history__item--2008 {margin-top: 1em;}
.history__item--2020 {margin-top: 6em;}
.history__item--2021 {margin-top: -2em;}
/******************************************************************************/
.wrap1--machine-box--0 {margin-top: 60px;}
.wrap1--machine-box--1 {background: var(--color-bg-2);padding-top: 100px;padding-bottom: 30px;}
.wrap1--machine-box--last {margin-bottom: 50px;}
.image-bg {display: grid;grid-template-columns: 1fr 1fr;gap: 2em;min-width: 0;width: 100%;}
.image-bg__picture {display: flex;justify-content: end;min-width: 0;}
.wrap1--machine-box--1 .image-bg__picture {grid-column: 2;justify-content: start;}
.machine-box__2col {display: grid;grid-template-columns: 1fr 1fr;gap: 2em;}
.machine-box__2col>* {grid-column: 2;}
.wrap1--machine-box--1 .machine-box__2col>* {grid-column: 1;}
.wrap2--machine-box {display: grid;}
.wrap2--machine-box>* {grid-column: 1;grid-row: 1;}
.machine-box__title {padding-bottom: 1em;font-size: 30px;color: var(--color-fg-1);text-transform: uppercase;text-decoration-thickness: 1px;text-decoration-line: none;}
.machine-box__title:hover {text-decoration-thickness: 1px;text-decoration-line: underline;}
.machines-list__title {font-size: 18px;text-decoration-thickness: 1px;margin-bottom: 8px;display: inline-block;}
.machines-list__item {padding: 16px 0;font-size: 14px;}
.machines-list__item:not(:last-child) {border-bottom: 1px solid silver;}
.machines-list__item:first-child {border-top: 1px solid silver;}
.machines-list__item--perex {padding-top: 0;padding-bottom: 3em;}
.machines-list__item--perex:first-child {border-top: none;}

.machines-list--noone-has-perex {border-top:1px solid silver;}
.machines-list--noone-has-perex .machines-list__item {border-top: none;border-bottom: none;padding: 0;margin: 1.5em 0;}
.machines-list__more {margin-top: 8px;text-align: right;}
.machines-list__more__link {color: var(--color-fg-1);}

.machines-list--one-row .machines-list__item {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;gap: 0 1em;}
.machines-list--one-row .machines-list__title {margin-bottom: 0;}


@media (max-width: 850px) {
    .machine-box__2col {grid-template-columns: 1fr;}
    .machine-box__2col>* {grid-column: auto;}
    .wrap2--machine-box>* {grid-column: auto;grid-row: auto;}

    .image-bg {grid-template-columns: 1fr;}
    .image-bg__picture {justify-content: center;margin-bottom: 1em;}
    .wrap1--machine-box--0 {margin-top: 30px;margin-bottom: 30px;}
    .wrap1--machine-box--1 {padding-top: 30px;padding-bottom: 30px;}
    .wrap1--machine-box--1 .image-bg__picture {grid-column: auto;justify-content: center;}
    .image-bg__img {max-height: 300px;width: 100%;object-fit:contain;}
}
@media (max-width: 600px) {
    .wrap1--machine-box--0 {margin-top: 2em;margin-bottom: 2em;}
    .wrap1--machine-box--1 {padding-top: 2em;padding-bottom: 2em;}
    .machine-box__title {padding-bottom: .5em;font-size: 24px;}
    .machines-list__title {font-size: 20px;margin-bottom: 0;}
    .machines-list--noone-has-perex .machines-list__item {padding: 0;margin: 1em 0;}
}

/******************************************************************************/

.wrap1--machine-box2 {padding-top: 24px;padding-bottom: 60px;}
.wrap1--machine-box2--0, .wrap1--machine-box2--0 .zvyrazneni {background: var(--highlight-hover);color:#fff;}

.machine-box2__2col {display: grid;grid-template-areas: "photo text";grid-template-columns: 1fr 1fr;align-items: center;}
.wrap1--machine-box2--1 .machine-box2__2col {grid-template-areas: "text photo";}

.machine-photos {grid-area: photo;display: grid;grid-template-columns: repeat(3, 1fr);gap: 8px;}
.machine-photo__picture {display: grid;align-items: center;justify-content: center;}
.machine-photo__img {max-width: 100%;height: auto;max-height: 450px;object-fit: scale-down; width: 100px;}
.machine-photos>:first-child {grid-column: 1/-1;}

.machine-text {--margin-beetween: min(90px, 15%);grid-area: text;margin-left: var(--margin-beetween, 90px);}

.wrap1--machine-box2--1 .machine-text {margin-right: var(--margin-beetween, 90px);margin-left: 0;}
@media (max-width: 1200px) {
    .machine-text {--margin-beetween: 5%;}
}
@media (max-width: 700px) {
    .machine-box2__2col {grid-template-areas: "text" "photo";grid-template-columns: 1fr;gap: 1em;}
    .wrap1--machine-box2--1 .machine-box2__2col {grid-template-areas: "text" "photo";}
    .machine-text {--margin-beetween: 0;}
}
@media (max-width: 600px) {
    .wrap1--machine-box2 {padding-top: 1em;padding-bottom: 2em;}
}

/******************************************************************************/
/* Aktuality - Slider */

.wrap1--slider-news {margin-top: 64px;margin-bottom: 180px;}
.slider-news {--swiper-pagination-bullet-horizontal-gap: 8px;--swiper-pagination-bullet-size: 12px;--swiper-pagination-color: #d39603;--news-tag-color-1: #fff;--news-tag-color-2: #d29504;}
.slider-news__head {position: relative;display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;margin-top: 2em;margin-bottom: 2em;}
.slider-news__pagination.swiper-pagination-horizontal {position: static;width: unset;}
.slider-news .swiper-pagination-bullet {border-radius: 0;}

.slider-news .swiper-slide {height: unset;}
.slider-news__slide {display: grid;grid-template-columns: 1fr;grid-template-rows: auto auto 1fr auto;height: 100%;gap: 2em;}

.slider-news__slide-head {position: relative;}
.slider-news__picture {display: flex;position: relative;overflow: hidden;padding: 33.33%;}
.slider-news__img {position: absolute;left: 0;right: 0;top: 0;bottom: 0;object-fit: cover;width: 100%;height: 100%;}

.slider-news__picture {--news-picture-color-1: #182744;background: var(--news-picture-color-1);background-image: url("https://www.gebeshuber.cz/www/img/tmp/logo_2.png");background-repeat: no-repeat;background-size: 500px;background-position: left -236px top -20px;}
.swiper-slide:nth-child(2n) .slider-news__picture {background-position: right -270px top -20px;}

.slider-news .slider-news__slide-title {margin-top: 0;margin-bottom: 0;}

.slider-news__tag {display: grid;grid-auto-flow: column;position: absolute;right: 0;top: 2em;isolation: isolate;}
.slider-news__tag-content {text-transform: uppercase;font-weight: 300;color: var(--news-tag-color-1);background: var(--news-tag-color-2);line-height: 1;padding: .5em 1em;}
.slider-news__tag::before {content: "";display: block;width: 2em;background: var(--news-tag-color-2);transform: skew(34deg);margin-right: -1em;height: calc(100%);z-index: -1;/* transform: translateX(0px); */}
/* .slider-news__tag::before {content: "";display: block;width: 1em;background-image: linear-gradient(to bottom left, var(--news-tag-color-2) 50%, transparent 50%);transform: translateX(0px);} */

.slider-news__text {--line: 6;max-height: calc(var(--line) * 1.25em);line-height: 1.25;overflow: hidden;text-overflow: ellipsis;}
@media (max-width: 600px) {
    .wrap1--slider-news {margin-bottom: 100px;}
}

/* Optimalizace problikávání při načtení */
.slider-news__content:not(.swiper-initialized) .swiper-slide {width: 32%;margin-right: 2%;}
@media (max-width: 1000px) {
    .slider-news__content:not(.swiper-initialized) .swiper-slide {width: 47%;margin-right: 3%;}
}
@media (max-width: 600px) {
    .slider-news__content:not(.swiper-initialized) .swiper-slide {width: 100%;margin-right: 0%;}
}

/******************************************************************************/
/* Aktuality - seznam */
.news-list a { border-bottom: 1px solid transparent; display: inline-block; text-decoration: none; }
.news-list a:hover { border-bottom: 1px solid #000; color: #000; }
.news-list a .date {margin-right: 25px;display: inline-block;width: 9ch;}
.news-list a .more { color: #999; }

/******************************************************************************/
/* Foto galerie - Mřížka */
.gallery-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 1em;}
.gallery-grid__figure {margin: 0;padding: 0;}
.gallery-grid__picture {display: block;position: relative;max-height: 250px;}
.gallery-grid__picture::before {content: "";padding-top: 100%;display: block;}
.gallery-grid__img {width: 100%;height: 100%;object-fit: cover;position: absolute;left: 0;right: 0;top: 0;bottom: 0;}

/* ! *****************************************************************************/
/* ! *****************************************************************************/

@keyframes shake1 {
    0% { transform: translate(1px, 1px) rotate(0deg); }
    10% { transform: translate(-1px, -2px) rotate(-1deg); }
    20% { transform: translate(-3px, 0px) rotate(1deg); }
    30% { transform: translate(3px, 2px) rotate(0deg); }
    40% { transform: translate(1px, -1px) rotate(1deg); }
    50% { transform: translate(-1px, 2px) rotate(-1deg); }
    60% { transform: translate(-3px, 1px) rotate(0deg); }
    70% { transform: translate(3px, 1px) rotate(-1deg); }
    80% { transform: translate(-1px, -1px) rotate(1deg); }
    90% { transform: translate(1px, 2px) rotate(0deg); }
    100% { transform: translate(1px, -2px) rotate(-1deg); }
}
@keyframes shake2 {
    0% { transform: rotate(0deg); }
    10% { transform: rotate(-10deg); }
    20% { transform: rotate(10deg); }
    30% { transform: rotate(0deg); }
    40% { transform: rotate(10deg); }
    50% { transform: rotate(-10deg); }
    60% { transform: rotate(0deg); }
    70% { transform: rotate(-10deg); }
    80% { transform: rotate(10deg); }
    90% { transform: rotate(0deg); }
    100% { transform: rotate(-10deg); }
}

/******************************************************************************/
/* obsah */

#homepage #content { display: none; }

/* #breadcrumbs { margin-bottom: 1em; } */
#breadcrumbs {background: transparent;border: none;padding: 0;margin-top: 2em;font-size:14px;}
#breadcrumbs>* {margin: 0 4px;}
#breadcrumbs>:last-child {color: var(--color-fg-1); }
#breadcrumbs a:hover, #breadcrumbs a:focus {color: var(--highlight);}

#content { margin: auto; padding: 8px 0; }
#content .text { line-height: 1.75em; font-weight: var(--fw-light); }

#content.view-menu-left .content { background: url('../img/bg_content.png') 225px 0 repeat-y; }

/******************************************************************************/
/* pomocná kotva; řeší zafixované menu */

.anchor { position: absolute; top: -100px; }

/******************************************************************************/
/* obsah - levá + pravá strana */

.wrap-left.view-menu-left { display: inline-block; padding-right: 25px; vertical-align: top; width: 200px; }
.wrap-right.view-menu-left { display: inline-block; padding-left: 25px; vertical-align: top; width: calc(100% - 250px); }

#content .wrap-left ul { margin-top: 0; }

/******************************************************************************/
/* fotografie */

.wrap-photo { display: flex;flex-wrap: wrap;justify-content: center;text-align: center; }
.wrap-photo { margin: 1rem 0; }
.wrap-photo img { max-width: 100%; max-height: 15rem; object-fit: contain; }

.photo { display: inline-block; margin: 5px; }
.photo img { height: auto; vertical-align: top; width: 147px; }
.photo:hover img { opacity: 0.95; }

.photo-product { display: inline-block; margin: 1em 28px 8px 0; }
.photo-product .title { font-weight: 300; margin-bottom:.5em; }
.photo-product img {width: 240px;height: 240px;object-fit: cover;}

/******************************************************************************/
/* mapa */

#map-title { }
#map-title .content { font-size: 50px; font-weight: bold; padding: 100px 0; text-align: center; }

#map { position: relative; text-align: center; overflow: hidden; margin: 2em 0;}
/* #map>div {margin-top: -59px;} */
#map .wrap2 { width: 100%; }
#map .content { padding: 0; }

#google-maps { }
#google-maps iframe { pointer-events: none; z-index: -1; }

/******************************************************************************/
/* Contact form */

/* #contact-form { background: #3b3330; color: #eee; } */
#contact-form { background-color: var(--contact-form-bg-color); color: var(--contact-form-fg-color-prim); margin-top: 3rem;padding-top: 2rem; }
#contact-form a { color: var(--contact-form-fg-color-link); }


#contact-form .content>* { flex: 1 1 0px; }
#contact-form .content img { object-fit: cover; width: 100%; height: 100%; max-height: 57em; max-width: 100vw; }
.mapsitna { display: none; }

.wrap-contact-form { padding: 2rem 0 2rem 0; }

.contact-form2 { display: flex; flex-direction: column; /* padding: 2em; */ }
.contact-form2 .basic { display: grid; grid-template-columns: 1fr 1fr; justify-items: right; grid-gap: 0 10vw;font-size: 14px; }
.contact-form2 input[type="submit"] {color: var(--contact-form-submit-fg-color);background-color: var(--contact-form-submit-bg-color);width: min-content;margin-left: auto;padding: .7rem 4rem;text-transform: capitalize;font-size: inherit;font-weight: unset;border-radius: var(--contact-form-submit-radius);appearance: none;-moz-appearance: none;-webkit-appearance: none;font-weight: 400;}
.contact-form2 input[type="submit"] {filter: var(--hp-filter-shadow-dark);transition: 0.3s transform, 0.3s background-color;}
.contact-form2 input[type="submit"]:hover, .contact-form2 input[type="submit"]:focus {transform: scale(1.1);background-color: var(--contact-form-submit-bg-color-hover);}

.contact-form2 .basic * { color: var(--contact-form-fg-color-prim); }
.contact-form2 .basic label { width: 100%; border-bottom: 1px solid var(--contact-form-line-color); display: flex; white-space: nowrap; padding: 2rem 0 .1rem 0; }
/* .contact-form2 .required::before { content: '* '; } */
.contact-form2 .not-required > span::after { content: '* '; }
.contact-form2 label > span { font-weight: 500; }
.contact-form2 .basic > label > span { min-width: 130px; }
.contact-form2 .basic label span { padding: 0 .5em 0 .1em; }
.contact-form2 .basic input,
.contact-form2 .basic textarea {border: none;border-radius: unset;width: 100%;height: 1.5em;background-color: transparent;appearance: none; -moz-appearance: none; -webkit-appearance: none;padding-top: 0;padding-bottom: 0;resize: vertical;}
.contact-form2 .basic .textarea {grid-column: 2;grid-row: 1/5;}
.contact-form2 .checkbox { align-self: flex-end; margin: 3rem 0 2rem 0; max-width: 50%; }

.contact-form2 .basic input, .contact-form2 .basic textarea {height: 100%;padding: 0;}
.contact-form2 .basic label.textarea {flex-direction: column;}
.contact-form2 .basic label span {opacity: 0.5;text-transform: uppercase;font-size: 1em;}
.contact-form2 input[type="submit"] {font-weight: 400;text-transform: uppercase;}

.contact-form2 .additional { display: flex; margin: 3rem 0 2rem 0; justify-content: space-between;font-size: 14px; }
.contact-form2 .additional .checkbox { margin: 0; }
.contact-form2 .additional .legend { text-transform: uppercase; }
.contact-form2 span, .contact-form2 .basic label span { font-weight: 600;}

/* checkbox */
.checkbox {
    --mark-border-color: var(--contact-form-line-color);
    --mark-border: 1px solid var(--mark-border-color);
    --mark-color: #000;
    --mark-background: transparent;
    --mark-checked-color: #fff;
    --mark-checked-background: var(--highlight, #00456b);
    --mark-size: 1.5em;
    --mark-transition-duration: 0.3s;
}
.checkbox { color: inherit; display: inline-grid; grid-template-columns: auto 1fr; grid-template-areas: "input label"; position: relative; justify-content: center; align-items: center; gap: 0.8em;grid-gap: 0.8em; cursor: pointer; }
.checkbox__input { box-sizing: content-box; grid-area: input; display: grid; grid-template-areas: "mark"; width: var(--mark-size); height: var(--mark-size); border: var(--mark-border, 1px solid currentColor); color: var(--mark-color, currentColor); background: var(--mark-background, transparent); box-shadow: inset 0px 0px 0.1em var(--mark-border-color); }
.checkbox__mark { grid-area: mark; transition: color, background-color; transition-duration: var(--mark-transition-duration); height: var(--mark-size);}
.checkbox__mark > * { opacity: 0; transform: scale(0); transform-origin: left bottom; transition: opacity, transform; transition-duration: var(--mark-transition-duration); }
.checkbox__mark svg { width: 100%; height: 100%; }
.checkbox__input input { grid-area: mark; width: 100%; height: 100%; margin: 0; padding: 0; z-index: -10; appearance: none; -moz-appearance: none; -webkit-appearance: none; }
.checkbox__input input:focus ~ .checkbox__mark {outline: 2px solid;}

.checkbox input:focus { border: none; outline: none; }
.checkbox input:focus + .checkbox__mark, .contact-form2 input[type="submit"]:focus { outline: var(--default-focus-outline); }
.checkbox__input input:checked + .checkbox__mark { color: var(--mark-checked-color); background-color: var(--mark-checked-background); }
.checkbox__input input:checked + .checkbox__mark > * { opacity: 1; transform: scale(1); }
.checkbox__label{user-select:none;}


/* Pomocné */

.f-weight { font-weight: 700; }

.m-0 { margin: 0 !important; }
.m-1 { margin: 0.5rem !important; }
.m-2 { margin: 1rem !important; }
.m-3 { margin: 1.5rem !important; }
.m-4 { margin: 2rem !important; }

.mx-0 { margin-left: 0 !important; margin-right: 0 !important;}
.mx-1 { margin-left: 0.5rem !important; margin-right: 0.5rem !important;}
.mx-2 { margin-left: 1rem !important; margin-right: 1rem !important;}
.mx-3 { margin-left: 1.5rem !important; margin-right: 1.5rem !important;}
.mx-4 { margin-left: 2rem !important; margin-right: 2rem !important;}

.ml-0 { margin-left: 0 !important; }
.ml-1 { margin-left: 0.5rem !important; }
.ml-2 { margin-left: 1rem !important; }
.ml-3 { margin-left: 1.5rem !important; }
.ml-4 { margin-left: 2rem !important; }

.mr-0 { margin-right: 0 !important;}
.mr-1 { margin-right: 0.5rem !important;}
.mr-2 { margin-right: 1rem !important;}
.mr-3 { margin-right: 1.5rem !important;}
.mr-4 { margin-right: 2rem !important;}

.my-0 { margin-top: 0 !important; margin-bottom: 0 !important;}
.my-1 { margin-top: 0.5rem !important; margin-bottom: 0.5rem !important;}
.my-2 { margin-top: 1rem !important; margin-bottom: 1rem !important;}
.my-3 { margin-top: 1.5rem !important; margin-bottom: 1.5rem !important;}
.my-4 { margin-top: 2rem !important; margin-bottom: 2rem !important;}

.mb-0 { margin-bottom: 0 !important;}
.mb-1 { margin-bottom: 0.5rem !important;}
.mb-2 { margin-bottom: 1rem !important;}
.mb-3 { margin-bottom: 1.5rem !important;}
.mb-4 { margin-bottom: 2rem !important;}

.mt-0 { margin-top: 0 !important; }
.mt-1 { margin-top: 0.5rem !important; }
.mt-2 { margin-top: 1rem !important; }
.mt-3 { margin-top: 1.5rem !important; }
.mt-4 { margin-top: 2rem !important; }

.p-0 { padding: 0 !important; }
.p-1 { padding: 0.5rem !important; }
.p-2 { padding: 1rem !important; }
.p-3 { padding: 1.5rem !important; }
.p-4 { padding: 2rem !important; }

.px-0 { padding-left: 0 !important; padding-right: 0 !important;}
.px-1 { padding-left: 0.5rem !important; padding-right: 0.5rem !important;}
.px-2 { padding-left: 1rem !important; padding-right: 1rem !important;}
.px-3 { padding-left: 1.5rem !important; padding-right: 1.5rem !important;}
.px-4 { padding-left: 2rem !important; padding-right: 2rem !important;}

.pl-0 { padding-left: 0 !important; }
.pl-1 { padding-left: 0.5rem !important; }
.pl-2 { padding-left: 1rem !important; }
.pl-3 { padding-left: 1.5rem !important; }
.pl-4 { padding-left: 2rem !important; }

.pr-0 { padding-right: 0 !important;}
.pr-1 { padding-right: 0.5rem !important;}
.pr-2 { padding-right: 1rem !important;}
.pr-3 { padding-right: 1.5rem !important;}
.pr-4 { padding-right: 2rem !important;}

.py-0 { padding-top: 0 !important; padding-bottom: 0 !important;}
.py-1 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important;}
.py-2 { padding-top: 1rem !important; padding-bottom: 1rem !important;}
.py-3 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important;}
.py-4 { padding-top: 2rem !important; padding-bottom: 2rem !important;}

.pb-0 { padding-bottom: 0 !important;}
.pb-1 { padding-bottom: 0.5rem !important;}
.pb-2 { padding-bottom: 1rem !important;}
.pb-3 { padding-bottom: 1.5rem !important;}
.pb-4 { padding-bottom: 2rem !important;}
.pb-5 { padding-bottom: 2.5rem !important;}
.pb-6 { padding-bottom: 3rem !important;}
.pb-7 { padding-bottom: 3.5rem !important;}
.pb-8 { padding-bottom: 4rem !important;}

.pt-0 { padding-top: 0 !important; }
.pt-1 { padding-top: 0.5rem !important; }
.pt-2 { padding-top: 1rem !important; }
.pt-3 { padding-top: 1.5rem !important; }
.pt-4 { padding-top: 2rem !important; }
.pt-5 { padding-top: 2.5rem !important; }
.pt-6 { padding-top: 3rem !important; }
.pt-7 { padding-top: 3.5rem !important; }
.pt-8 { padding-top: 4rem !important; }

.line-height-1 { line-height: 1em }
.line-height-1-1 { line-height: 1.1em }
.line-height-1-2 { line-height: 1.2em }

/******************************************************************************/
/* TinyMCE Responsive */
@media only screen and (max-width: 900px), (max-device-width: 900px) {
    /* tabulka - ceník */
    .table-price-list { width: 100%; }
    
    /* tabulka - adresa */
    .table-address, .table-address thead, .table-address tbody, .table-address tr, .table-address tr th, .table-address tr td { display: block; height: auto !important; text-align: left !important; width: auto !important; }
    .table-address tr td { margin-bottom: 1em; padding: 0 !important; }
    .table-address tr td:last-child { margin-bottom: 0; }
    
    .table-opening-hours { display: table; margin-bottom: 1.5em; }
    .table-opening-hours thead { display: table-header-group; }
    .table-opening-hours tbody { display: table-row-group; }
    .table-opening-hours tr { display: table-row; }
    .table-opening-hours tr td { display: table-cell; padding: 0 15px !important; }
    
    /* tabulka - kontakty */
    .table-contacts, .table-contacts thead, .table-contacts tbody, .table-contacts tr, .table-contacts tr th, .table-contacts tr td { display: block; height: auto !important; text-align: left !important; width: auto !important; }
    .table-contacts tr td { margin-bottom: 2em; padding: 0 !important; }
    .table-contacts tr:last-child td:last-child { margin-bottom: 0; }
}
    
@media only screen and (max-width: 770px), (max-device-width: 770px) {
    /* responzivní tabulka */
    .responzivni-tabulka, .responzivni-tabulka thead, .responzivni-tabulka tbody, .responzivni-tabulka tr, .responzivni-tabulka tr th, .responzivni-tabulka tr td { display: block; height: auto !important; text-align: left !important; width: auto !important; }
    .responzivni-tabulka tr td { margin-bottom: 1em; padding: 0 !important; }
    .responzivni-tabulka tr:last-child td:last-child { margin-bottom: 0; }
}

/******************************************************************************/
/* ! KLUCI OD PODLAHY – úvodní stránka (styly dle XD)                         */
/******************************************************************************/

:root {
    --gold: #c9a227;
    --gold-hover: #b8901f;
    --blue: #00456b;
    --blue-2: #254e67;
    --review-text: #0a0a0a;
    --review-author: #848484;
}

/* --- Tlačítka --- */
.button--cta { --__btn-bg: var(--gold); --__btn-fg: #fff; font-weight: 500; font-size: 14px; }
.button--cta:hover { --color-1: var(--gold-hover); --color-2: #fff; }
.button--primary { --__btn-bg: var(--blue); --__btn-fg: #fff; font-weight: 500; }
.button--primary:hover { --color-1: var(--gold); --color-2: #fff; }
.button--white { --__btn-bg: #fff; --__btn-fg: var(--blue); font-weight: 500; font-size: 14px; }
.button--white:hover { --color-1: var(--gold); --color-2: #fff; }

/* --- Hlavička (světlá) --- */
#wrap-head, #head { background: #fff; color: var(--color-fg-2); box-shadow: 0 1px 0 rgba(0,0,0,.06); }
.head-content { --head-menu-color-1: var(--blue); --head-menu-color-2: var(--gold); padding-top: 16px; padding-bottom: 16px; }
.head-logo__img { height: 46px; min-width: 0; max-width: 100%; }
.head-social { color: var(--blue); gap: 1.4em; font-size: 14px; }
.head-social__item { color: var(--blue); font-weight: 400; }
.head-social__icon { color: var(--gold); }
.head-search { justify-self: end !important; }
.head-search__link { color: var(--blue); font-size: 19px; display: inline-grid; text-decoration: none; transition: .2s color; }
.head-search__link:hover { color: var(--gold); }
.head-menu { color: var(--blue); font-size: 16px; }
.head-menu__item { color: var(--blue); font-weight: 400; text-transform: none; }
/* Submenu (dropdown pod položkou hlavního menu) – tmavé pozadí, proto světlý text a aktivní/hover zlatě */
.head-menu__list--2 .head-menu__item { color: #fff; }
.head-menu__list--2 .head-menu__item::before { background: rgba(255,255,255,.25); }
.head-menu__list--2 .head-menu__item::after { background: var(--gold); }
.head-menu__list--2 .head-menu__item--active,
.head-menu__list--2 .head-menu__item:hover,
.head-menu__list--2 .head-menu__item:focus-within { color: var(--gold); }

/* --- Hero slider --- */
.wrap1--hero { background: var(--blue); }
.hero-slider { position: relative; }
.hero-slider .slider1__arrow { display: grid; position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 48px; height: 48px; border-radius: 50%; background: rgba(255,255,255,.35); color: #fff; align-items: center; justify-items: center; font-size: 22px; }
.hero-slider .slider1__arrow--prev { left: 7%; }
.hero-slider .slider1__arrow--next { right: 7%; }
.hero-slider .slider1__arrow:hover { background: rgba(255,255,255,.6); }
.hero-slider__slide { position: relative; display: block; }
.hero-slider__img { display: block; }
.hero-slider__img img { display: block; width: 100%; height: 620px; max-height: 80vh; object-fit: cover; }
.hero-slider__slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(0,15,25,.65) 0%, rgba(0,15,25,.35) 45%, rgba(0,15,25,0) 75%); z-index: 1; }
.hero-slider__box { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; margin-left: auto; margin-right: auto; left: 0; right: 0; pointer-events: none; }
.hero-slider__content { max-width: 640px; pointer-events: auto; }
.hero-slider__text { color: #fff; font-size: 45px; line-height: 1.15; font-weight: 300; text-transform: uppercase; margin-bottom: 1.1em; text-shadow: 0 2px 12px rgba(0,0,0,.35); }
.hero-slider .swiper-pagination { bottom: 22px; display: flex; gap: 9px; justify-content: center; }
.hero-slider .swiper-pagination-bullet { border-radius: 0; width: 11px; height: 11px; margin: 0 !important; }
.hero-slider .swiper-pagination-bullet-active { width: 13px; height: 13px; }
.hero-slider { --swiper-pagination-bullet-inactive-color: #fff; --swiper-pagination-color: var(--gold); --swiper-pagination-bullet-inactive-opacity: .7; }

/* --- Naše služby (rozcestník) --- */
.wrap1--services-grid { background: var(--color-bg-2); }
.services-grid__intro { color: var(--blue); font-weight: 300; font-size: 45px; line-height: 1.1; text-transform: uppercase; text-align: center; margin: 0 0 1em; }
.services-grid__list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.services-grid__item { background: #fff; padding: 40px 34px; display: flex; flex-direction: column; }
.services-grid__icon { color: var(--gold); font-size: 40px; line-height: 1; margin-bottom: 22px; }
.services-grid__icon img { height: 58px; width: auto; display: block; }
.services-grid__title { color: var(--gold); font-size: 24px; font-weight: 700; text-transform: uppercase; line-height: 1.2; text-decoration: none; margin-bottom: 18px; display: block; }
.services-grid__title:hover { color: var(--gold-hover); }
.services-grid__links { list-style: none; padding: 0; margin: 0; }
.services-grid__links li { position: relative; padding-left: 16px; margin-bottom: 9px; line-height: 1.35; }
.services-grid__links li::before { content: "•"; position: absolute; left: 0; color: var(--gold); }
.services-grid__links a { color: var(--blue); font-weight: 500; font-size: 16px; text-decoration: underline; }
.services-grid__links a:hover { color: var(--gold); }
.services-grid__links span { color: var(--blue); font-weight: 500; font-size: 16px; }

/* --- O nás (obrázek + modrý panel) --- */
.wrap1--about { background: var(--blue); }
.about-box { display: grid; grid-template-columns: 1fr 1fr; align-items: stretch; }
.about-box__media { position: relative; min-height: 460px; }
.about-box__picture, .about-box__img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.about-box__panel { background: var(--blue); color: #fff; display: flex; align-items: center; }
.about-box__inner { max-width: 560px; padding-top: 60px; padding-bottom: 60px; padding-left: 8%; padding-right: 8%; }
.about-box__title { color: #e0f2f7; font-size: 45px; font-weight: 300; text-transform: uppercase; margin: 0 0 .5em; }
.about-box__text { color: #fff; font-weight: 500; font-size: 16px; line-height: 1.6; margin-bottom: 2em; }
.about-box__text p { margin-bottom: 1em; }

/* --- Proč chtít podlahu od nás (statistiky) --- */
.wrap1--stats { background: #fff; --content-padding-top: 80px; --content-padding-bottom: 80px; }
.stats__title { color: var(--blue); font-size: 45px; font-weight: 300; text-transform: uppercase; margin: 0 0 1.2em; text-align: center; }
.stats__list { display: grid; grid-template-columns: repeat(3, 1fr); }
.stats__item { text-align: center; padding: 10px 20px; position: relative; }
.stats__item + .stats__item::before { content: ""; position: absolute; left: 0; top: 10%; height: 80%; width: 1px; background: #d9d9d9; }
.stats__number { color: var(--gold); font-size: 40px; font-weight: 700; line-height: 1; margin-bottom: .35em; }
.stats__label { color: var(--blue); font-weight: 500; font-size: 18px; text-transform: uppercase; }

/* --- Napsali o nás (recenze) --- */
.wrap1--reviews { background: var(--color-bg-2); --content-padding-top: 80px; --content-padding-bottom: 80px; }
.reviews__title { color: var(--blue); font-size: 45px; font-weight: 300; text-transform: uppercase; margin: 0 0 1.2em; text-align: center; }
.reviews { position: relative; padding: 0 56px; }
.reviews__content { overflow: hidden; }
.review-card { background: #fff; padding: 34px 30px; height: 100%; box-sizing: border-box; display: flex; flex-direction: column; box-shadow: 0 6px 24px rgba(0,0,0,.05); }
.review-card__stars { color: var(--gold); font-size: 15px; letter-spacing: 2px; margin-bottom: 18px; }
.review-card__text { color: var(--review-text); font-weight: 300; font-size: 16px; line-height: 1.6; flex: 1; margin-bottom: 18px; }
.review-card__author { border-top: 1px solid #e2e2e2; padding-top: 16px; line-height: 1.4; }
.review-card__name { display: block; color: #1d1d1b; font-weight: 700; font-size: 16px; }
.review-card__loc { display: block; color: var(--review-author); font-weight: 400; font-size: 15px; }
.reviews__arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 44px; height: 44px; border-radius: 50%; background: #e9e9e9; display: grid; align-items: center; justify-items: center; cursor: pointer; color: var(--blue); font-size: 18px; transition: .2s background, .2s color; }
.reviews__arrow:hover { background: var(--gold); color: #fff; }
.reviews__arrow--prev { left: 0; }
.reviews__arrow--next { right: 0; }
/* Reference – grid recenzí (podstránka /reference/) */
.reviews-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.6em; align-items: stretch; }
@media (max-width: 1000px) { .reviews-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 680px)  { .reviews-grid { grid-template-columns: 1fr; } }
/* CTA blok – výzva k akci vedoucí na kontaktní formulář */
.wrap1--cta { background: transparent; }
.cta-block { display: flex; justify-content: center; padding: 0.5em 0 2.6em; }
.cta-block__btn { font-size: 17px; padding-left: 2.4em; padding-right: 2.4em; }
.reviews .swiper-pagination { position: static; margin-top: 22px; }
.reviews { --swiper-pagination-color: var(--gold); --swiper-pagination-bullet-inactive-color: #bcbcbc; --swiper-pagination-bullet-inactive-opacity: 1; }

/* --- Napište nám (kontaktní formulář) --- */
.wrap1--write-us { background: #fff; --content-padding-top: 80px; --content-padding-bottom: 80px; }
.write-us__head { text-align: left; margin: 0 auto 1.4em; max-width: 460px; }
.write-us__head h2, .write-us__head .h2 { color: var(--blue); font-size: 40px; font-weight: 300; text-transform: uppercase; margin: 0 0 .2em; }
.write-us__head p { color: var(--blue); font-weight: 500; font-size: 16px; }
.write-us__form { max-width: 460px; margin: 0 auto; }
.write-us__label { display: block; margin-bottom: 16px; }
.write-us__label-text { display: block; color: var(--blue-2); font-weight: 500; font-size: 14px; margin-bottom: 6px; }
.write-us__input { width: 100%; border: 1px solid #cfcfcf; padding: 12px 14px; font-family: inherit; font-size: 15px; background: #fff; box-sizing: border-box; }
.write-us__input:focus { outline: none; border-color: var(--blue); }
.write-us__textarea { resize: vertical; min-height: 120px; }
.write-us__gdpr { margin: 8px 0 20px; font-size: 13px; }
.write-us__captcha { margin-bottom: 20px; }
.write-us__buttons { text-align: right; }

/* --- Patička (kontakt + banka + sociální sítě) --- */
.wrap1--footer-1 { background: var(--blue); background-image: none; color: #fff; padding-top: 4em; padding-bottom: 3em; }
.foot1-content { grid-template-areas: "logo text social" "kangaroo kangaroo kangaroo"; grid-template-columns: 1fr auto 1fr; grid-template-rows: auto auto; gap: 2.5em 2em; align-items: start; font-size: 14px; }
.foot1-logo { grid-area: logo; justify-self: start; }
.foot1-logo__img { height: 54px; }
.foot1-text { grid-area: text; width: 460px; max-width: 100%; text-align: left; display: flex; flex-direction: column; gap: 1.6em; }
.foot1-social { grid-area: social; justify-self: end; align-self: start; display: flex; gap: 22px; }
.foot1-social__item { background: transparent; color: #fff; width: auto; height: auto; border-radius: 0; font-size: 22px; line-height: 1; }
.foot1-social__item:hover { transform: scale(1.15); background: transparent; color: var(--gold); }
.foot1-social__icon { display: grid; }
.foot1-col__title { color: #fff; font-weight: 300; font-size: 16px; margin: 0 0 1em; }
.foot1-col__text { color: #fff; font-weight: 300; font-size: 14px; line-height: 1.7; }
.foot1-col__text a { color: #fff; }
.foot1-kangaroo { grid-area: kangaroo; color: rgba(255,255,255,.6); border-top: 1px solid rgba(255,255,255,.15); padding-top: 1.4em; margin-top: 1em; font-size: 13px; text-align: center; }
.foot1-kangaroo a { color: #fff; }
/* Web je jen v češtině – jazykový přepínač v mobilním menu skryt */
.mobile-menu__lang { display: none; }

/* --- Responzivita úvodní stránky --- */
@media (max-width: 980px) {
    .services-grid__list { grid-template-columns: repeat(2, 1fr); }
    .about-box { grid-template-columns: 1fr; }
    .about-box__media { min-height: 300px; }
    .hero-slider__text { font-size: 34px; }
    .services-grid__intro, .stats__title, .reviews__title, .about-box__title { font-size: 34px; }
    .write-us__head h2, .write-us__head .h2 { font-size: 34px; }
}
@media (max-width: 680px) {
    .services-grid__list { grid-template-columns: 1fr; }
    .stats__list { grid-template-columns: 1fr; gap: 2em; }
    .stats__item + .stats__item::before { display: none; }
    .foot1-content { grid-template-areas: "logo" "text" "social" "kangaroo"; grid-template-columns: 1fr; }
    .foot1-social { justify-self: start; }
    .foot1-text { width: auto; justify-content: flex-start; text-align: left; }
    .hero-slider__img img { height: 460px; }
    .hero-slider__text { font-size: 26px; }
    .head-logo__img { height: 38px; }
    .write-us__buttons { text-align: left; }
}

/* --- Vyhledávání --- */
.search-form { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; max-width: 640px; margin: 1.5em 0 2em; }
.search-form__input { flex: 1; min-width: 200px; border: 1px solid #cfcfcf; padding: 12px 14px; font-family: inherit; font-size: 16px; box-sizing: border-box; }
.search-form__input:focus { outline: none; border-color: var(--blue); }
.search-form__submit { min-width: 0; white-space: nowrap; }
.search-form__reset { color: var(--gray-text); text-decoration: none; font-size: 22px; line-height: 1; padding: 0 6px; }
.search-form__reset:hover { color: var(--gold); }
.search-result__info { margin: 1em 0; }
.search-result__list { list-style: none; padding: 0; margin: 0; }
.search-result__list li { margin-bottom: 10px; padding-left: 16px; position: relative; }
.search-result__list li::before { content: "›"; position: absolute; left: 0; color: var(--gold); }
.search-result__list a { color: var(--blue); text-decoration: underline; }
.search-result__list a:hover { color: var(--gold); }

/* --- Přístupnost: vizuálně skrytý nadpis pro SEO/čtečky --- */
.visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* --- Podstránka Služby (rozcestník page_services -> services) v brandu Kluci --- */
.wrap1--sluzby { background: #fff; }
.wrap1--sluzby .services__item { --__color-title: var(--gold); --__color-text: #444; --__color-left: #fff; --__color-right: #fff; --__btn-bg: var(--blue); --__btn-fg: #fff; }
.wrap1--sluzby .services__item:nth-child(2n) { --__color-left: var(--color-bg-2); --__color-right: var(--color-bg-2); }
.wrap1--sluzby .services__content { color: var(--__color-text); font-size: 15px; line-height: 1.6; }
.wrap1--sluzby .services h2, .wrap1--sluzby .services .h2, .wrap1--sluzby .services h3, .wrap1--sluzby .services .h3 { color: var(--gold); font-weight: 700; text-transform: uppercase; font-size: 22px; line-height: 1.2; }
.wrap1--sluzby .services__buttons .button { min-width: 0; }

/* --- Podkategorie (prokliky na potomky) na podstránkách služeb --- */
.subcats { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 24px; }
.subcats__item { display: flex; flex-direction: column; background: #fff; text-decoration: none; box-shadow: 0 6px 24px rgba(0,0,0,.05); transition: .2s transform, .2s box-shadow; overflow: hidden; }
.subcats__item:hover { transform: translateY(-3px); box-shadow: 0 12px 30px rgba(0,0,0,.1); }
.subcats__media { display: block; position: relative; overflow: hidden; background: var(--color-bg-2); aspect-ratio: 4 / 3; }
.subcats__media:empty { display: none; }
.subcats__img { width: 100%; height: 100%; object-fit: cover; transition: .3s transform; }
.subcats__item:hover .subcats__img { transform: scale(1.05); }
.subcats__title { display: flex; align-items: center; justify-content: space-between; gap: .5em; padding: 16px 18px; color: var(--blue); font-weight: 600; font-size: 16px; line-height: 1.25; }
.subcats__arrow { color: var(--gold); font-weight: 700; transition: .2s transform; }
.subcats__item:hover .subcats__title { color: var(--gold); }
.subcats__item:hover .subcats__arrow { transform: translateX(3px); }

/* --- Recenze: stejná výška dlaždic (swiper) --- */
.reviews .swiper-slide { height: auto; }
