@charset "UTF-8";

:root { --highlight: #e5d7c3; --highlight-hover: #463831; --gray: #efe8dd; --yellow: #8c5e35; --yellow-hover: #66513f; }

*, *::before, *::after {box-sizing: inherit;}
html {box-sizing: border-box;margin: 0;padding: 0;}
html {scroll-behavior: smooth;}
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;}

.iconify-icon {font-family: 26px;}

::selection {
    background-color: var(--color-bg-1);
    color: var(--color-fg-2);
}

/* Wrappery a helpery pro content */
:root {
    --max-content-width: 1280px;
    --content-max-width: 1280px;
    --content-max-width--extra: calc(var(--content-max-width) / 2);
    --content-padding-left: 0;
    --content-padding-right: 0;
    --content-padding-top: clamp(4rem, 7vw, 7.5rem);
    --content-padding-bottom: clamp(4rem, 7vw, 7.5rem);
    /* --content-padding-top: 48px; */
    /* --content-padding-bottom: 48px; */
    --content-margin-top: clamp(4rem, 7vw, 7.5rem);
    --content-margin-bottom: clamp(4rem, 7vw, 7.5rem);
}
.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: 1300px) {
    :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;
    }
}

main>:first-child {
    --content-margin-top: 7.5rem;
    --content-padding-top: 7.5rem;
}
.page--kontakt footer {
    --content-margin-top: 7.5rem;
    --content-padding-top: 7.5rem;
}

/******************************************************************************/

.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--core {
    position: relative;
    background-image: var(--bg-url);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    isolation: isolate;
    /* background-size: contain; */
    /* background-size: var(--bg-size, cover); */
}
/*
.wrap1--core::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: var(--bg-color, var(--color-bg-3));
    opacity: .90;
    z-index: -1;
}
*/

.wrap1--core-dark {
    position: relative;
    background-image: var(--bg-url);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    isolation: isolate;
    /* background-size: contain; */
    /* background-size: var(--bg-size, cover); */
}
.wrap1--core-dark::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: #22283170;
    opacity: .85;
    z-index: -1;
}

.wrap1--line {
    border-top: 1px dashed var(--color-border, #e2d7c9);
}


.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: url(https://www.kangaroo.cz/www/stavos/www/img/logo_min_4.svg);
    background-repeat: no-repeat;
    background-size: 650px;
    background-position-y: -220px;
    background-position-x: calc(100vw / 2 + 270px);
}

@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 {color: var(--color-fg-2);}
#head {backdrop-filter: blur(8px);background:rgba(249, 245, 239, .65);--box-shadow: 0 1px 2px hsl(30deg 20% 50% / .25);}
/* .is-scroll-top #head {background: rgba(249, 245, 239, .85);} */
.head-content {--head-menu-color-1: rgba(70, 56, 49, .8);--head-menu-color-2: var(--color-fg-2);display: grid;grid-template-areas: "logo menu";grid-template-columns: auto 1fr;gap: 1em 4%;justify-items: end;align-items: center;padding-top: 18px;padding-bottom: 18px;position: relative;}
.head-logo {grid-area: logo;justify-self: start;}
.head-social {display: none;grid-area: social;font-size: 14px;font-weight:600;flex-wrap: wrap;flex-direction: column;gap: 0em;}
.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: 36px;max-width: 100%;}
.head-lang {display: none;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: center;justify-content: flex-end;width: 100%;color: var(--head-menu-color-1);font-size: 14px;font-weight: 400;letter-spacing: .04em;}
.head-menu__list {display: flex;width: 100%;padding: 0;margin: 0;list-style: none;gap: .5em 2.25em;flex-wrap: wrap;justify-content: flex-end;align-items: center;}
/* .head-menu__list > li:last-child {margin-left: auto;} */
.head-menu__item {color: var(--head-menu-color-1);position: relative;transition: .2s color;text-transform: none;line-height: 1.5;}
.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: center;transition: .4s transform;}
.head-menu__item::after {background: currentColor;}
/* .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: center;}
.head-menu__link {text-decoration: none;display: inline-block;white-space: nowrap;}
.head-menu__link {}

.button.head-menu__button-cta {
    font-family: inherit;
    text-transform: none;
    letter-spacing: .01em;
    font-size: 14px;
    font-weight: 500;
    padding: 11px 22px;
    --color-1: var(--color-cta);
    --color-2: var(--color-bg-5);
}
.button.head-menu__button-cta:hover,
.button.head-menu__button-cta:focus-within {
    --color-1: var(--color-cta-hover);
    --color-2: var(--color-bg-5);
    box-shadow: var(--shadow-soft);
}

.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-top: 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: var(--color-fg-2);--head-menu-color-2: var(--color-fg-4);}
.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 .mobile-menu__shadow {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background: #00000066;
    opacity: 0;
    visibility: hidden;
    transition: opacity, visibility;
    transition-duration: .3s, 0s;
    transition-delay: 0s, .3s;
}
body.menu-open .mobile-menu .mobile-menu__shadow {
    opacity: 1;
    visibility: visible;
    transition: opacity, visibility;
    transition-duration: .3s, 0s;
    transition-delay: 0s, 0s;
}
.mobile-menu__content {background: var(--color-bg-5);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;margin-right: 20%;}
.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: 16px; font-weight: 500;}
/* .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;}
}

/******************************************************************************/
/* 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;
    padding-top: 44px;
    padding-bottom: 44px;
    --swiper-theme-color: black;
    --swiper-pagination-bullet-size: 6px;
}
.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;}

@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: 800px) {
    .slider4__img {max-height: 300px;}
}

/******************************************************************************/
/* Patička */
.wrap1--foot-1 {
    --content-padding-top: 110px;
    --content-padding-bottom: 64px;
    color: white;
    background: var(--color-bg-4);
    /* background: hsl(17 33% 13% / 1); */
    /* background: hsl(17 10% 13% / 1); */
}
.foot-1 { display: grid; grid-template-areas: "col1 col2 col3"; grid-template-columns: 1fr 1fr 1fr; font-size: 15px; line-height: 1.7;}
.foot-1__col--1 { grid-area: col1;}
.foot-1__col--2 { grid-area: col2;}
.foot-1__col--3 { grid-area: col3;}
.foot-1__col { display: flex; flex-direction: column;}
.foot-1__col:not(:first-child) { padding-left: 4rem;}
.foot-1__logo-wrap {margin-bottom: 2rem;}
.foot-1__logo-wrap img {max-width: 100%;}
.foot-1 a { color: inherit;}
.foot-1__space { flex: 1; min-height: 2rem;}
.foot-1__copyright {margin-top: 16px;}
.foot-1__col--3 .foot-1__title { font-weight: 500;}
.foot-1__menu { }
.foot-1__menu a { text-decoration: none;}
.foot-1__menu a:hover,.foot-1__menu a:focus-within { text-decoration: underline; color: var(--color-fg-1);}
.foot-1__menu ul { margin: 0; padding: 0;  padding-left: 16px; list-style: disc outside;}
.foot-1__menu li::before { content: none;}

.foot-1__social { display: flex; flex-wrap: wrap; gap: 2rem 0;}
.foot-1-social__item { display: grid; grid-template-columns: auto auto; align-items: center; text-decoration: none; transition: .2s color, .2s transform;}
.foot-1-social__item:hover { color: var(--color-fg-1);}
.foot-1-social__icon { font-size: 36px; position: relative; width: 1em; height: 1em; display: grid; justify-items: center; align-items: center; margin-right: .5em;}
.foot-1-social__title {line-height: 1.25;}

.foot1-kangaroo {color: var(--color-bg-1);font-size: 15px;margin-top: 80px;padding-top: 20px;border-top: 1px solid currentColor;}
.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}


@media (max-width: 850px) {
    .wrap1--foot-1 {
        --content-padding-top: 40px;
    }
    .foot-1 {
        grid-template-areas: "col1 col1" "col2 col3";
        grid-template-columns: 1fr 1fr;
        gap: 3rem 1rem;
    }
    .foot-1__col:not(:first-child) { padding-left: 0rem;}
}
@media (max-width: 500px) {
    .foot-1 {
        grid-template-areas: "col1" "col2" "col3";
        grid-template-columns: 1fr;
        gap: 3rem 1rem;
    }
}

.foot1-kangaroo {
    font-size: 15px;
    margin-top: 80px;
    padding-top: 20px;
    border-top: 1px solid currentColor;
}
.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}

/******************************************************************************/
/* FAQ Section */
.faq-section {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.faq-section__right {padding-left: 6em;}

@media (max-width: 900px) {
    .faq-section {gap: 16px;}
    .faq-section__right {padding-left: 0;}
}

@media (max-width: 620px) {
    .faq-section {gap: 32px; grid-template-columns: 1fr;}
}

/******************************************************************************/
/* FAQ */

.faq__item { display: grid; grid-template-rows: auto 1fr; transition: grid-template-rows, opacity; transition-duration: .3s; overflow: hidden;}
.faq__item--close { grid-template-rows: auto 0fr;}
.faq__item--close .faq__body { opacity: 1;}
.faq__item--close .faq__indicator::before { transform: rotate(180deg);}
.faq__item--close .faq__indicator::after { transform: rotate(90deg);}
.faq__head { display: flex; align-items: center; gap: 1em; padding: 0 2em; transition: .3s background; background: #F7F6F2; cursor: pointer; position: relative; isolation: isolate; border-top: 1px solid transparent;user-select: none;}
.faq__indicator { display: inline-grid; height: 1em; width: 1em; justify-items: center; align-items: center;}
.faq__indicator::before,.faq__indicator::after { content: ""; background: currentColor; width: 1em; height: 1px; display: block; grid-row: 1; grid-column: 1; transform: rotate(0deg); transition: transform .5s ease;}
.faq__question { margin: .5em 0; transition: .2s transform; font-size: 18px; font-weight: 700; text-transform: uppercase; flex: 1;}
.faq__head:hover .faq__question { transform: translateX(.5em);}
.faq__body { background: #FFFFFFD1; opacity: 1; transition: .3s opacity; align-self: start; overflow: hidden;}
.faq__body>div { padding: 1em 3em 1em 2em;}
/* Vypnutí animací */
.faq--no-anim .faq__item,.faq--no-anim .faq__head,.faq--no-anim .faq__question,.faq--no-anim .faq__body,.faq--no-anim .faq__indicator::before,.faq--no-anim .faq__indicator::after { transition-duration: 0s !important;}

/******************************************************************************/
/* Icon grid */
.icon-grid { color: white; height: 100%; padding-top: 32px;}
.icon-grid__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 32px; height: 100%;}
.icon-grid__item { display: grid; justify-items: center; align-items: self-start; grid-template-rows: auto 1fr; gap: 18px; text-transform: uppercase; text-align: center; font-weight: 500; font-size: 18px;}
.icon-grid svg { height: 50px;}

@media (max-width: 620px) {
    .icon-grid {padding-top: 0;}
}

/******************************************************************************/
/* Blog section */
.blog-section {
    display: grid;
    grid-template-columns: 1fr 2fr;
}
.blog-section__left {
    padding-right: 100px;
}

@media (max-width: 800px) {
    .blog-section {
        grid-template-columns: 1fr;
    }
    .blog-section__left {
        padding: 0;
        padding-bottom: 30px;
    }
}

/******************************************************************************/
/* Blog - Rozcestník */
.wrap1--blog-list-title {
    padding-top: 16px;
    padding-bottom: 16px;
}
/* .blog-list-section { display: grid; grid-template-columns: 2fr 1fr;} */
/* .blog-list-section__articles { padding-right: 100px;} */
.blog-list-section {
    display: grid;
    grid-template-columns: 4fr 1fr;
}
.blog-list-section__articles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 2rem;
    padding-right: 2rem;
}

@media (max-width: 900px) {
    .blog-list-section { grid-template-columns: 1fr; }
    .blog-list-section__articles { padding-right: 0; padding-bottom: 36px; }
}

/******************************************************************************/
/* Blog List */
.blog-list__list { display: grid; gap: 30px;}
.blog-list__item a { text-decoration: none;}
.blog-list__item { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items: center;}
.blog-list__picture { display: grid; position: relative; grid-row: 1; grid-column: 1; overflow: hidden; border-radius: var(--radius); box-shadow: var(--shadow-card);}
.blog-list__picture::before { content: ""; display: block; padding-top: calc(231 / 347 * 100 * 1%);}
.blog-list__img { position: absolute; width: 100%; height: 100%; object-fit: cover; opacity: 0.9999; transition: .3s opacity, .3s transform;}
.blog-list__item-title, h2.blog-list__item-title { font-size: 24px; transition: .3s opacity, .3s transform;}
.blog-list__item-date { margin-top: -2em; color: var(--color-fg-2); padding-bottom: 16px; font-size: 14px; line-height: 1; font-weight: 300;}
.blog-list__item-date-icon { vertical-align: middle; font-size: 20px; padding-right: 8px;}
/* Hover */
.blog-list__item:hover .blog-list__img { transform: scale(1.1); opacity: .8;}
.blog-list__item:hover .blog-list__item-title { opacity: .8;}


@media (max-width: 550px) {
    .blog-list__item {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .blog-list__item-date {
        margin-top: 0;
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

/******************************************************************************/
/* Blog List Mini */
.blog-list-mini__list { display: grid; gap: 20px;}
.blog-list-mini__item a { text-decoration: none;}
.blog-list-mini__item { display: grid; grid-template-columns: 100px 2fr; gap: 25px; align-items: center;}
.blog-list-mini__picture { display: grid; position: relative; grid-row: 1; grid-column: 1; overflow: hidden; border-radius: var(--radius);}
.blog-list-mini__picture::before { content: ""; display: block; padding-top: calc(100 / 100 * 100 * 1%);}
.blog-list-mini__img { position: absolute; width: 100%; height: 100%; object-fit: cover; opacity: 0.9999; transition: .3s opacity, .3s transform;}
.blog-list-mini__item-title, h2.blog-list-mini__item-title { font-size: 18px; font-weight: 500; line-height: 1.2; transition: .3s opacity, .3s transform;}
.blog-list-mini__item-date { margin-top: -2em; color: #a3a3a3; padding-bottom: 16px; font-size: 14px; line-height: 1; font-weight: 300;}
.blog-list-mini__item-date-icon { vertical-align: middle; font-size: 20px; padding-right: 8px;}
/* Hover */.blog-list-mini__item:hover .blog-list-mini__img { transform: scale(1.1); opacity: .8;}
.blog-list-mini__item:hover .blog-list-mini__item-title { opacity: .8;}

/******************************************************************************/
/* Blog item */
.blog-item__title { font-size: 24px; font-weight: 500; font-family: "Cormorant Garamond", serif; line-height: 1.2; margin: .6rem 0;}
.blog-item__bottom { text-decoration: none;}
.blog-item__picture {  display: grid; position: relative; grid-row: 1; grid-column: 1; overflow: hidden; border-radius: var(--radius); box-shadow: var(--shadow-card);}
.blog-item__picture::before {  content: ""; display: block; padding-top: calc(231 / 347 * 100 * 1%);}
.blog-item__img {  position: absolute; width: 100%; height: 100%; object-fit: cover; opacity: 0.9999; transition: .3s opacity, .3s transform;}
.blog-item__date { font-size: 12px; display: flex; align-items: center; gap: 8px; margin: .5rem 0;}
.blog-item__date-icon svg { width: 1em; height: 1em; font-size: 26px; vertical-align: middle;}
/* Hover */
.blog-item:hover .blog-item__img {  transform: scale(1.1);  opacity: .8;}


/******************************************************************************/
/* Blog article */
.wrap1--blog-article-title > div > div {
    border: 1px solid hsl(0deg 0% 50% / .3);
    background: var(--color-bg-5);
}
.blog-article { display: grid; grid-template-columns: 1fr 2fr;}
.blog-article__aside { padding-right: 100px;}
.blog-article__prop { padding-bottom: 30px;}
.blog-article__prop-title { color: var(--color-fg-2); font-weight: 700; text-transform: uppercase; font-size: 14px;}
.blog-article__prop-value { font-size: 16px;}

@media (max-width: 1200px) {
    .blog-article__aside {
        padding-right: 30px;
    }
}
@media (max-width: 900px) {
    .blog-article {
        grid-template-columns: 1fr;
    }
    .blog-article__aside {
        grid-row: 2;
    }
}

/******************************************************************************/
.blog__contact-list  {
    display: grid;
    gap: 20px;
    margin-top: 24px;
    margin-bottom: 16px;
    font-size: 14px;
    font-weight: 600;
}
a.blog__contact-item {
    color: var(--color-fg-4);
    display: flex;
    gap: .4em;
    align-items: center;
    text-decoration-color: transparent;
    position: relative;
}
.blog__contact-item:not(:last-child)::after {
    content: "";
    display: block;
    border-bottom: 1px solid #ddd;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10px;
}
.blog__contact-icon {
    font-size: 1.6rem;
    display: grid;
}
.blog__contact-item:hover {
    color: var(--color-fg-2);
}


/******************************************************************************/
/* Nabídky */
.page--property_offers iframe {
    width: 100% !important;
}
.page--property_offers .content-table-list td {
    column-count: 2;
}
@media (max-width: 650px) {
    .page--property_offers .content-table-list td {
        column-count: 1;
    }
}

/* Nabídky - dolní text */
.property-offers-bottom {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 6em;
}
.property-offers-bottom__article {
    grid-column: 2/-1;
}
@media (max-width: 900px) {
    .property-offers-bottom {gap: 2em;}
}
@media (max-width: 650px) {
    .property-offers-bottom__article {
        grid-column: 1;
    }
    .property-offers-bottom {grid-template-columns: 1fr; gap: 1em;}
}

/******************************************************************************/
/* Nabídky realit - Rozcestník */
.property-offers-list a {
    text-decoration: none;
}
.property-offers-list__picture {
    display: grid;
    position: relative;
    grid-row: 1;
    grid-column: 1;
    overflow: hidden;
}
.property-offers-list__picture::before {
    content: "";
    display: block;
    padding-top: calc(231 / 347 * 100 * 1%);
}
.property-offers-list__img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.9999;
    transition: .3s opacity, .3s transform;
}
.property-offers-list__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 2rem;
}
.property-offers-list__item {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    background: var(--color-bg-3);
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-card);
    transition: .4s box-shadow, .4s transform;
}
.property-offers-list__item[data-stav_prodeje] .property-offers-list__picture::after {
    content: attr(data-stav_prodeje);
    position: absolute;
    background: rgba(249, 245, 239, .9);
    backdrop-filter: blur(4px);
    border-radius: var(--radius-pill);
    display: block;
    padding: 5px 14px;
    left: 16px;
    top: 16px;
    font-family: "Manrope", sans-serif;
    font-weight: 600;
    color: var(--color-fg-2);
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
    line-height: 1.2;
    box-shadow: var(--shadow-card);
    pointer-events: none;
}
.property-offers-list__item-top{
    display: block;
}
.property-offers-list__item-middle{
    text-decoration: none;
    display: block;
    padding: 1rem 1.5rem 0 1.5rem;
}
.property-offers-list__item-title {
    font-size: 24px;
    font-weight: 500;
    font-family: "Cormorant Garamond", serif;
    line-height: 1.25;
    margin: 0;
}
.property-offers-list__item-bottom {
    font-size: 14px;
    color: rgba(70, 56, 49, .72);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: .5em;
    margin-top: 18px;
    padding: 0 1.5rem 1.5rem 1.5rem;
}
.property-offers-list__item-bottom>div {
    display: grid;
    grid-template-columns: auto auto;
    gap: .5em;
    align-items: center;
}
.property-offers-list__pa-icon {
    color: var(--color-fg-4);
    display: flex;
    align-items: center;
}
.property-offers-list__pa-icon svg {
    width: 1em;
    height: 1em;
    font-size: 15px;
    vertical-align: middle;
}

/* Hover */
/* .property-offers-list__item:focus-within .property-offers-list__img,
.property-offers-list__item:hover .property-offers-list__img
{ transform: scale(1.15); opacity: .9;}
.property-offers-list__item:focus-within,
.property-offers-list__item:hover
{ box-shadow: var(--shadow-soft); transform: translateY(-4px); }
.blog-item:hover .blog-item__picture
{ box-shadow: var(--shadow-soft); } */

/* Sekce nabídek na HP - jemné teplé podbarvení (dle předlohy bg-secondary/40) */
.wrap1--nabidka { background: var(--color-bg-2); }
.wrap1--nabidka .content-padding-t { padding-bottom: var(--content-padding-bottom); }

/******************************************************************************/
.property-offers-bottom__contact-list  {
    display: grid;
    gap: 20px;
    margin-top: 24px;
    margin-bottom: 16px;
    font-size: 14px;
    font-weight: 600;
}
a.property-offers-bottom__contact-item {
    color: var(--color-fg-1);
    display: flex;
    gap: .4em;
    align-items: center;
    text-decoration-color: transparent;
    position: relative;
}
.property-offers-bottom__contact-item:not(:last-child)::after {
    content: "";
    display: block;
    border-bottom: 1px solid #ddd;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10px;
}
.property-offers-bottom__contact-icon {
    font-size: 1.6rem;
    display: grid;
}
.property-offers-bottom__contact-item:hover {
    color: var(--color-fg-2);
}

/******************************************************************************/

.property-offers-block {
    position: absolute;
    top: 16px;
    z-index: 1;
    left: 0;
    right: 0;
    text-align: right;
}
.property-offers-block__item {
    font-size: 14px;
}
.property-offers-block__icon {
    font-size: 19px;
    vertical-align: middle;
    margin-right: 16px;
    color: var(--color-fg-2);
}
.property-offers-block__buttons {
    margin-top: 16px;
}

/******************************************************************************/

.property-offers-slider {
    display: flex;
    user-select: none;
    /* padding-top: 44px; */
    padding-bottom: 44px;
    --swiper-theme-color: var();
    --swiper-theme-color: var(--color-bg-1);
    position: relative;
}
.property-offers-slider__arrow {display: grid;align-items: center;cursor: pointer;font-size: 4rem;color: var(--color-bg-1);transition: .2s filter;margin-inline: -.2em;}
.property-offers-slider__arrow svg {transform: translateY(-50%);}
.property-offers-slider__arrow:hover {filter: brightness(0.8);}
.property-offers-slider__arrow.swiper-button-disabled {opacity: .5;cursor: not-allowed;}
.property-offers-slider__arrow.swiper-button-lock {opacity: 0;display: none;}
.property-offers-slider__content {width: 100%;height: 100%;}
.property-offers-slider .swiper-slide {height: auto;width: auto;display: grid;/* align-items: center; */}

/******************************************************************************/
/* 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 */
.wrap1--contact-form {background-color: var(--color-bg-5);}

/* ==========================================================================
   Kontaktní formulář — vzhled dle prototypu v1 (livento-rk.lovable.app/kontakt)
   Levý sloupec = text (nadpis, popis, kontaktní údaje z admin `text_*`),
   pravý sloupec = bílá karta s formulářem. Napojení na DB/admin beze změny.
   ========================================================================== */
.cf-wrap { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: clamp(2.5rem, 5vw, 5.5rem); align-items: start; margin-bottom: 80px;}
@media (max-width: 900px) {
    .cf-wrap {grid-template-columns: 1fr; gap: 2.5rem; margin-bottom: 48px;}
}

/* -- Levý sloupec (admin text) ------------------------------------------- */
.cf-wrap__left { color: var(--color-fg-2);}
.cf-wrap__left h1, .cf-wrap__left h2 { font-family: "Cormorant Garamond", serif; font-weight: 500; line-height: 1.1; font-size: clamp(2.4rem, 4.5vw, 3.4rem); margin: 0 0 1.25rem;}
.cf-wrap__left p { color: rgba(70, 56, 49, .78); line-height: 1.6; max-width: 34ch;}
.cf-wrap__left a { color: inherit;}

/* -- Pravý sloupec = bílá karta ------------------------------------------ */
.cf-wrap__right { min-width: 0;}
.cf { background: var(--color-bg-3); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); padding: clamp(1.75rem, 3.5vw, 3rem); font-size: 16px;}
.cf__head:not(:empty) { margin-bottom: 2rem;}
.cf__head p { color: rgba(70, 56, 49, .78); line-height: 1.6;}

/* Rozložení polí: JMÉNO + TELEFON vedle sebe, ostatní přes celou šířku */
.cf__col--info { display: grid; grid-template-columns: 1fr 1fr; gap: 0 2rem;}
.cf__col--text { margin-top: .5rem;}

/* Pole = plovoucí uppercase popisek nad podtrženým inputem (bez rámečku) */
.cf__label { display: grid; margin-bottom: 1.75rem; line-height: 1.2; gap: .55rem;}
.cf__label > span { font-family: "Manrope", sans-serif; text-transform: uppercase; letter-spacing: .2em; font-size: .7rem; font-weight: 600; color: var(--color-fg-4);}
.cf__label.required > span::after { content: " *"; color: var(--color-fg-4); opacity: .6;}
.cf__label input,
.cf__label textarea,
.cf__label select { appearance: none; -webkit-appearance: none; width: 100%; color: var(--color-fg-2); background: transparent; border: none; border-bottom: 1px solid var(--color-border); border-radius: 0; padding: .5rem 0; font-size: 15px; font-family: inherit; transition: border-color .25s;}
.cf__label input::placeholder,
.cf__label textarea::placeholder { color: rgba(70, 56, 49, .4);}
.cf__label textarea { resize: vertical; min-height: 3.5rem;}
.cf__label input:focus,
.cf__label textarea:focus,
.cf__label select:focus { outline: none; border-bottom-color: var(--color-fg-4);}
/* Select „Co plánujete" – vlastní šipka (appearance zrušen) */
.cf__label select.cf__select { cursor: pointer; padding-right: 1.75rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238c5e35' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right .25rem center;}
.cf__label select.cf__select option { color: var(--color-fg-2);}
.cf__col--text .cf__label { grid-template-columns: 1fr;}

/* GDPR checkbox (pokud je aktivní) */
.cf__foot-checkbox { display: grid; margin-bottom: 1.75rem;}
.cf .checkbox { --mark-checked-color: var(--color-fg-3); --mark-checked-background: var(--color-cta); --mark-size: 1.2em;}
.cf .checkbox__label { font-size: 14px;}

/* Odesílací tlačítko = tmavý pill */
.cf__foot { margin-top: .5rem;}
.cf__foot-buttons { text-align: left;}
.button.cf_submit { --color-1: var(--color-cta); --color-2: #fff; border-radius: var(--radius-pill); text-transform: none; font-weight: 500; letter-spacing: normal;}
.button.cf_submit:hover, .button.cf_submit:focus-within { --color-1: var(--color-cta-hover); --color-2: #fff; box-shadow: var(--shadow-soft); }

@media (max-width: 500px) {
    .cf__col--info { grid-template-columns: 1fr; gap: 0;}
}

/******************************************************************************/
.hero { --height: 600px; position: relative; z-index: -1; overflow: hidden; height: var(--height);}
.hero__picture { display: grid; justify-items: center; position: absolute; top: 50%; transform: translateY(-50%); width: 100%; height: 100%;}
.hero__img { width: 100%; object-fit: cover; height: var(--height);}

/******************************************************************************/
/* 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(--color-prim);}

#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(--color-prim);
    --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é */

.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; }

/******************************************************************************/
/* Filtrování */
/* .property-offers { margin-top: 38px;} */
.offers-filter { border: 1px solid #ddd; display: flex; align-items: start; gap: 40px; flex-wrap: wrap; accent-color: var(--color-fg-2); background: var(--color-bg-5); padding: 1rem; /*margin-top: .5rem;*/}
.offers-filter__group { display: inline-flex; flex-direction: column;}
.offers-filter__item { cursor: pointer;}
.offers-filter__item-count { font-size: .75em;}
.offers-filter__item:hover { text-shadow: 0 0 black;}
.offers-filter strong { grid-column: 1 / -1;}
.offers-filter strong::after { content: ""; background: currentColor; display: block; height: 1px; margin-bottom: 6px;}
.offers-filter__checkbox { /* margin-right: 5px; */ margin: 0; margin-right: 6px;}
.offers-filter__group--two { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem;}
.offers-filter__buttons { display: grid; gap: .5rem; align-self: self-end;}
.offers-filter__button--clear { /* --__btn-bg: transparent; --__btn-fg: #eee; */ padding: 8px !important; text-transform: uppercase;}
details summary { display: inline-block; user-select: none;}
details summary:hover { text-shadow: 0 0 black;}
details summary::before { content: "▶"; display: inline-block; margin-right: 4px;}
details[open] summary::before { content: "▼";}
