@charset "UTF-8";
/* CSS Document */

/* ============================
   ✨ Poznámky pro čistý layout
   ============================

- Flex layout:
  → flex-container:    display: flex; flex-wrap: wrap;
  → položky:           flex: 1 1 auto; nebo konkrétní šířky
  → vnitřní struktura karty: použít flex-direction: column

- Vyrovnání výšek karet:
  → align-items: stretch; na obal
  → flex-grow: 1; na .card-content mezi top a bottom

- Odsazení:
  → kombinace gap + padding může způsobit nečekané mezery
  → kontrolovat padding v .w3-container

- Obrázky:
  → jednotné rozměry: width: 100%; height: xxxpx; object-fit: cover;

- Obsah:
  → u proměnlivého textu zvážit line-clamp nebo max-height
  → hlídat rozbité znaky z databáze (např. SVG, HTML entit)

- Používat jednoduché třídy:
  → každá třída dělá 1 věc = lepší kombinace (např. rs-gap-8 + w3-flex-center)

- Kdy použít grid místo flex:
  → když potřebuješ rovnat nejen na řádku, ale i mezi řádky

============================ */
/* Všechno počítá padding a border jako součást velikosti */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* ----- default ----- */
html, body {
    font-family: Raleway, sans-serif;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    color: rgba(0, 0, 0, 0.87);
    background-color: white;
}

h1, h2, h3, h4, h5, h6, p, ul {
    font-family: Raleway, sans-serif;
    margin: 0;
    color: rgba(0, 0, 0, 0.87);
}

img, svg {
    border: none;
}

button {
    font-size: 14px;
    font-weight: 500;
}

.w3-weight-light {
    font-weight: 300;
}

.w3-weight-medium {
    font-weight: 400;
}

.w3-weight-bold {
    font-weight: 600;
}

.w3-image-cover {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.w3-div-full {
    height: 100%;
    width: 100%;
}

.w3-card-image-height {
    height: 240px;
}

@media only screen and (max-width: 374px),(min-width: 633px) and (max-width: 720px), (min-width: 993px) and (max-width: 1158px) {
    .w3-card-image-height {
        height: 230px;
    }
}

@media only screen and (min-width: 414px) and (max-width: 632px),(min-width: 800px) and (max-width: 992px) {
    .w3-card-image-height {
        height: 266px;
    }
}

.w3-caps-small {
    font-variant: small-caps;
}

.w3-small-caps { /*používat u slov z háčky*/
    text-transform: uppercase;
}

.w3-bround-image {
    background-repeat: no-repeat;
    background-position: 60% 50%;
    background-size: cover;
}

.w3-mouse {
    cursor: pointer;
}

.w3-overflow {
    overflow: hidden;
}

/*----------MARGIN--------*/
.w3-margin-t44, .w3-margin-top-detail { /* pro odsazení prvního prvku od topBaru = 44px Detail*/
    margin-top: 44px;
}

@media only screen and (max-width: 768px) {
    .w3-margin-top-detail {
        margin-top: 0px;
    }
}

.w3-margin-t48 { /* pro odsazení prvního prvku od topBaru = 48px*/
    margin-top: 48px;
}

.w3-margin-t56 { /* pro odsazení prvního prvku od topBaru = 56px*/
    margin-top: 56px;
}

.w3-margin-tiny {
    margin: 4px;
}

.w3-margin-small {
    margin: 8px;
}

.w3-margin-r8 {
    margin-right: 8px;
}

.w3-margin-l8 {
    margin-left: 8px;
}

.w3-margin-b52 { /* aplikace na karty w3-display-contaner, které mají spodní Bar 36px, aby se text neschoval pod bottomBar  */
    margin-bottom: 52px;
}

.w3-margin-b92 { /* aplikace na karty w3-display-contaner, které mají spodní Bar 36px, aby se text neschoval pod bottomBar  */
    margin-bottom: 92px;
}

.w3-margin-t52 { /* aplikace na karty w3-display-contaner, které mají spodní Bar 36px, aby se text neschoval pod bottomBar  */
    margin-top: 52px;
}

.w3-margin-0 {
    margin: 0 !important;
}

/*----------END MARGIN--------*/


/*
.w3-card {
    box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
 */
.w3-card {
    box-shadow: 0 1px 2px 0 rgba(120, 120, 120, 0.5), 0 1px 3px 0 rgba(120, 120, 120, 0.3);
}

.w3-card-1 {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}

.w3-card-2, .w3-hover-shadow:hover {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.12), 0 1px 8px 0 rgba(0, 0, 0, 0.2);
}

.w3-card-4 {
    box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
}

.w3-card-6 {
    box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.2);
}

.w3-card-8 {
    box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}

.w3-card-16 {
    box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
}

.w3-card-24 {
    box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2);
}

.w3-text-shadow {
    text-shadow: 0px 1px 2px #222;
}

.verticalAlign {
    height: 50vh;
    display: table;
    min-height: 300px;
}

.valign {
    display: table-cell;
    vertical-align: middle;
    text-align: center
}

/* ----- výpis destinací ----- */
.mp-h-areaContainer {
    position: relative;
}

.mp-h-areaOverlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    width: 100%;
    height: 0;
    transition: .5s ease;
    background-color: rgba(0, 0, 0, 0.7)
}

.mp-h-areaContainer:hover .mp-h-areaOverlay {
    height: 100%;
}

/*-----------END-karta výpis ------------*/
/*overflow menu mobile */

@media only screen and (max-width: 600px) {
    .w3-overflow-menu {
        overflow-x: scroll;
    }

    .w3-overflow-bar {
        min-width: 560px
    }
}

#id01 ul {
    list-style-type: none;
    line-height: 26px;
}

#id01 a {
    text-decoration: none;
    color: black;
    font-size: 12px
}

#menuDest a {
    text-decoration: none
}

.w3-margin-small {
    margin: 8px;
}

.w3-margin-b8 {
    margin-bottom: 8px;
}

.w3-margin-t8 {
    margin-top: 8px;
}

.w3-text-secondary {
    font-size: 14px;
    color: rgba(0, 0, 0, 0.75)
}

.w3-animate-zoom {
    animation: animatezoom 0.2s
}

@keyframes animatezoom {
    from {
        transform: scale(0)
    }
    to {
        transform: scale(1)
    }
}

.w3-card-img-radius {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.w3-text-opacity {
    color: rgba(0, 0, 0, 0.60);
}

.w3-text-opacity-max {
    color: rgba(0, 0, 0, 0.25);
}

.w3-padding-b64 {
    padding-bottom: 64px;
}

.w3-padding-t48 {
    padding-top: 52px;
}

.w3-decoration-none {
    text-decoration: none !important;
}

/* --- SEARCH topBar --- */

#myOverlay {
    display: none;
    line-height: 28px
}

/* --- END Search ---*/

.w3-modal-pobyt-od {
    margin: auto;
    background-color: #fff;
    position: relative;
    padding: 0;
    outline: 0;
    width: 600px;
}

@media only screen and (max-width: 600px) {
    .w3-modal-pobyt-od {
        width: 100% !important;
        height: 100% !important;
        position: fixed;
        top: 0;
        left: 0
    }
}

/* --- responzivní text dle šířky display ---- */

.w3-vw-xxxlarge {
    font-size: 10vw !important;
}

.w3-vw-xxlarge {
    font-size: 13vw !important;
    line-height: 13vw;
    font-weight: 300;
    margin: 0;
}

.w3-vw-xlarge {
    font-size: 6vw !important;
}

.w3-vw-large {
    font-size: 4vw !important;
}

.w3-vw-small {
    font-size: 4vw !important;
    line-height: 4vw;
    font-weight: 400;
    margin: 0;
}

.w3-display-80 {
    width: 80% !important;
}

.w3-display-content {
    width: 992px !important;
}

/* --- responzivní padding dle šířky display ---- */

.mp-mouse {
    cursor: pointer;
}

/* DIV - celá šířka a výška 70-100% display*/


.mp-img-cover {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
}

.mp-display100 {
    height: 100vh;
}

.w3-opacity-image { /*ztmavení fotografie - přidat před img div */
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3)
}

/*modal jako top sidebar  na content přidat třídu w3-left nebo w3-right*/
#modal-sidebar .w3-modal-content {
    height: 100%;
    width: 270px !important;
}

#modal-sidebar .w3-modal {
    padding-top: 0px;
}

@media only screen and (max-width: 600px) {
    #modal-sidebar .w3-modal-content {
        margin: 0px;
    }
}

/*---------------------*/


.w3-round-t25 {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.w3-round-br4 {
    border-bottom-right-radius: 4px;
}

.w3-round-bl4 {
    border-bottom-left-radius: 4px;
}

.w3-round-tl4 {
    border-top-left-radius: 4px;
}

.w3-round-tr4 {
    border-top-right-radius: 4px;
}

.w3-round-none {
    border-radius: 0px;
}


/*-------- w3-row-padding BUTTON  TODO -------------

@media only screen and (max-width: 992px) {
    .mp-row-button > .w3-col {
        padding: 0 4px
    }

    .mp-row-button.w3-row-padding {
        padding: 0 12px
    }
}

.mp-row-button .w3-dropdown-hover {

}

/*-------- w3-row-padding BUTTON END-------------*/
.w3-xlarge {
    line-height: 28px;
}

.filtrButton {
    width: calc(50% - 4px)
}

.w3-height {
    height: 100%
}

.w3-height-full-vh {
    height: 100vh
}

.w3-content-small {
    max-width: 550px;
    margin: 0 auto;
}

@media only screen and (max-width: 1279px) {
    .w3-hide-1280 {
        display: none;
    }
}

.w3-column-3 {
    -webkit-columns: 1; /* Chrome, Safari, Opera */
    -moz-columns: 1; /* Firefox */
    columns: 1;
    -webkit-column-gap: 16px; /* Chrome, Safari, Opera */
    -moz-column-gap: 16px; /* Firefox */
    column-gap: 16px;
    text-align: justify
}

@media only screen and (min-width: 767px) {
    .w3-column-3 {
        -webkit-columns: 2; /* Chrome, Safari, Opera */
        -moz-columns: 2; /* Firefox */
        columns: 2;
    }
}

@media only screen and (min-width: 1174px) {
    .w3-column-3 {
        -webkit-columns: 3; /* Chrome, Safari, Opera */
        -moz-columns: 3; /* Firefox */
        columns: 3;
    }
}

.w3-full-display {
    min-height: calc(100vh - 294px)
}

@media only screen and (max-width: 767px) {
    .w3-full-display {
        min-height: calc(100vh - 120px)
    }
}

.w3-space-jumbo {
    height: 72px;
}

.w3-space-xxxlarge {
    height: 52px;
}

.w3-space-xxlarge {
    height: 44px;
}

.w3-space-xlarge {
    height: 36px;
}

.w3-space-large {
    height: 24px;
}

.w3-space {
    height: 16px;
}

.w3-space-small {
    height: 8px;
}

.w3-space-tiny {
    height: 4px;
}

/* --- Vstupní stránky header --- */
#enterPage .nadpisObal {
    position: relative;
    background-color: rgba(255, 255, 255, 0.90);

    margin: -15% 24px 0;
    padding: 15% 16px 16px;
}

@media only screen and (min-width: 651px) {
    #enterPage .nadpisObal {
        margin: -10% 5% 0;
        padding: 10% 3% 2%;
    }
}

@media only screen and (min-width: 767px) {
    #enterPage .nadpisObal {
        background-color: rgba(255, 255, 255, 0.90);
        margin: -10% 5% 0;
        padding: 10% 6% 6%;
    }
}

@media only screen and (min-width: 1024px) {
    #enterPage .nadpisObal {
        margin: -10% 10% 0;
        padding: 10% 8% 8%;
    }
}

#enterPage h1 {
    font-size: 40px;
    line-height: 56px;
    padding-top: 24px;
    overflow: hidden;
}

@media only screen and (min-width: 375px) {
    #enterPage h1 {
        font-size: 56px;
        line-height: 72px;
        padding-top: 24px;
    }
}

@media only screen and (min-width: 601px) {
    #enterPage h1 {
        font-size: 100px;
        line-height: 116px;
        padding-top: 24px;
    }
}

@media only screen and (min-width: 769px) {
    #enterPage h1 {
        font-size: 116px;
        line-height: 132px;
        padding-top: 24px;
    }
}

#enterPage p {
    text-align: justify
}

@media only screen and (max-width: 600px) {
    #enterPage h5 {
        padding: 16px 0;
    }
}

#enterPage .w3-card-image-height {
    min-height: 100vh;
}

/* --- HomePage header  --- */

#homePage1 .nadpisObal {
    position: relative;
    background-color: rgba(255, 255, 255, 0.90);

    margin: -15% 24px 0;
    padding: 15% 16px 16px;
}

@media only screen and (min-width: 651px) {
    #homePage1 .nadpisObal {
        margin: -10% 5% 0;
        padding: 10% 3% 2%;
    }
}

@media only screen and (min-width: 767px) {
    #homePage1 .nadpisObal {
        background-color: rgba(255, 255, 255, 0.90);
        margin: -10% 5% 0;
        padding: 10% 6% 6%;
    }
}

@media only screen and (min-width: 1024px) {
    #homePage1 .nadpisObal {
        margin: -10% 10% 0;
        padding: 10% 8% 8%;
    }
}

#homePage1 h1 {
    font-size: 40px;
    line-height: 56px;
    padding-top: 24px;
}

@media only screen and (min-width: 375px) {
    #homePage1 h1 {
        font-size: 56px;
        line-height: 72px;
        padding-top: 24px;
    }
}

@media only screen and (min-width: 601px) {
    #homePage1 h1 {
        font-size: 100px;
        line-height: 116px;
        padding-top: 24px;
    }
}

@media only screen and (min-width: 769px) {
    #homePage1 h1 {
        font-size: 116px;
        line-height: 132px;
        padding-top: 24px;
    }
}

#homePage1 p {
    font-size: 18px
}

@media only screen and (min-width: 768px) {
    #homePage1 p {
        font-size: 24px
    }
}

#homePage1 .w3-card-image-height {
    min-height: 60vh;
}

@media only screen and (max-width: 600px) {
    #homePage1 .w3-card-image-height {
        min-height: 60vh;
    }
}

.w3-text-overflow {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.rs-decoration-none a {
    text-decoration: none;
}

/* --------scroll stránky na top  --------------*/

.scrollButton {
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 90;
}

/* -------- actionBar sticky  --------------*/
.w3-sticky {
    position: sticky;
    top: 0;
    z-index: 10;
}

/* -------- ScrollTerms vyhledáno.php  --------------*/
@media only screen and (max-width: 600px) {
    #scrollTerms span, #scrollTerms button {
        padding-left: 4px;
        padding-right: 4px;
        font-size: 16px;
    }
}

@media only screen and (min-width: 601px) {
    #scrollTerms span, #scrollTerms button {
        font-size: 16px
    }
}

/* -------- home Page.php  --------------*/
.w3-round-left {
    border-top-left-radius: 50px;
    border-bottom-left-radius: 50px;
}

.w3-round-right {
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
}

/*------------------------------kalkulace-----------------------------*/
#priceBreakdown .w3-half,
#service-recap .w3-half {
    width: 49.99999%;
}

@media only screen and (min-width: 601px) {
    #priceBreakdown .w3-right-align,
    #service-recap .w3-right-align {
        text-align: initial !important;
    }
}

/*------------------------------Zoom formuláře v safari-----------------------------*/

input[type='text'],
input[type='email'],
input[type='tel'],
input[type='number'],
textarea {
    font-size: 16px;
}

/* -------- Rozšíření nebo úprava tříd W3  --------------*/

.w3-line-height-tiny {
    line-height: 14px;
}

.w3-line-height-small {
    line-height: 16px;
}

.w3-line-height-medium {
    line-height: 20px;
}

.w3-line-height-regular {
    line-height: 24px;
}

.w3-line-height-large {
    line-height: 28px;
}

.w3-line-height-xlarge {
    line-height: 36px;
}

.w3-line-height-xxlarge {
    line-height: 44px;
}

.w3-line-height-xxxlarge {
    line-height: 56px;
}

.w3-line-height-jumbo {
    line-height: 68px;
}

.w3-line-topBar { /* zajistí topBar 56px s ikonou 24px */
    line-height: 24px;
}

.w3-medium {
    font-size: 14px !important;
}

.w3-regular {
    font-size: 16px !important;
}

.w3-large {
    font-size: 20px !important;
}

.w3-top {
    z-index: 99;
}

.w3-dropdown-content {
    z-index: 3;
}

.w3-margin-center {
    margin: 0 auto;
}

.w3-padding-top {
    padding-top: 16px;
}

.w3-padding-right {
    padding-right: 16px;
}

.w3-padding-bottom {
    padding-bottom: 16px;
}

.w3-padding-left {
    padding-left: 16px;
}

.w3-padding-8 {
    padding-top: 8px;
    padding-bottom: 8px;
}

.w3-padding-4 {
    padding-top: 4px;
    padding-bottom: 4px;
}

.w3-padding-left-none {
    padding-left: 0 !important;
}

.w3-padding-container-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

@media (max-width: 375px) {
    .w3-hide-tiny {
        display: none !important;
    }
}

/* ----- flex-container ----- */
.w3-flex-mobile,
.w3-flex-ipad {
    flex-direction: row;
}

@media (max-width: 768px) {
    .w3-flex-mobile {
        flex-direction: column;
    }
}
@media (max-width: 992px) {
    .w3-flex-ipad {
        flex-direction: column;
    }
}
.w3-flex-wrap {
    flex-wrap: wrap;
}

.w3-flex-start {
    justify-content: flex-start;
}

.w3-flex-center {
    justify-content: center;
    align-items: center;
}

/* ----- flex-items ----- */
.w3-flex-item {
    flex: 1;
    overflow: hidden;

}
.w3-flex-item-half {
    flex: 1 1 48%;
}

.w3-flex-button {
    flex: 1;
    overflow: hidden;
    min-width: 100px;
}

.w3-flex-card-horizontal {
    overflow: hidden;
    width: calc(100vw - 48px);
}

@media only screen and (min-width: 601px) {
    .w3-flex-card-horizontal {
        flex: 1;
        width: 320px;
    }

    .mp-horizontalBbutton {
        width: calc(320px - 32px);
    }
}

.w3-flex-card-3 {
    flex: 1 1 100%;
    overflow: hidden;
}

@media only screen and (min-width: 601px) {
    .w3-flex-card-3 {
        flex: 1 1 291px; /* návrhová šířka */
    }
}

@media (min-width: 993px) {
    .w3-flex-card-3 {
        flex: 1 1 291px;
        /* pokud chceš omezit šířku, přidej max-width: */
        max-width: calc(33.333% - 10.66px);
    }
}

.w3-flex-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 8px;
    overflow: hidden;
}

/* Část která se má uvnitř w3-flex-item pripadne zvětšovat */
.w3-flex-card-content {
    flex-grow: 1;
}

/*------------------------------detail - galerie-----------------------------*/

calculation {
    min-height: 435px;
    display: block;
    width: 100%;
}


.mp-home-hero {
    width: 453px;
    height: 302px;
}

@media only screen and (max-width: 620px) {
    .mp-home-hero {
        max-width: calc(100vw - 32px);
        height: calc((100vw - 32px) / 3 * 2);
    }
}

/*@media only screen and (min-width: 992px) {
    #mp-listing {
        padding: 0 6px 0 6px;
    }
}
/*------------------------------cestovní smlouva-----------------------------*/

#smlouva-ck h1, #smlouva-ck p,
#smlouva-ck table, .mp-smlouva-font {
    font-family: Helvetica, Arial, sans-serif;
    font-size: 16px;
    color: rgba(0, 0, 0, 0.87);
}

/*------------------------------homepage-----------------------------*/
.w3-large-vw {
    font-size: 8vh;
    line-height: 10vh;
}


.w3-padding-0 {
    padding: 0 !important;
}

.mp-hp-news {
    min-height: 300px
}

/* VÝPIS skupina tlačítek fitrování a řazení  */
@media only screen and (max-width: 1208px) {
    #groupFiltr button:last-child {
        border-right: none !important;
    }

    #groupFiltr button:first-child {
        border-left: none !important
    }
}

/* o nás  */
#barApc {
    top: -70px;
}

@media only screen and (min-width: 1921px) {
    #barAbout .h400 {
        height: 500px;
    }
}

#rm-filter .fas {
    transition-duration: 0.2s;
}

.mp-rotate {
    transform: rotate(-90deg);
}

/*--Top Button - termíny, osoby, strava--*/
.mp-topButton {
    width: 100%;
    z-index: 30;
    top: 37px;
}

@media only screen and (min-width: 601px) {
    .mp-topButton {
        width: calc(100vw / 3)
    }
}

@media only screen and (min-width: 1140px) {
    .mp-topButton {
        width: calc(1140px / 3)
    }
}


/* mapa detail */

#mp-d-maps {
    height: 30vh;
}

@media only screen and (min-width: 601px) {
    #mp-d-maps {
        height: 100%;
        width: 100%;
    }
}

/* -------- flex mailing  --------------*/

.mailing-flex-container {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 1rem;
    background-color: #f1f1f1;
}

.mailing-flex-container > div {
    background-color: red;
    color: white;
    text-align: center;
    line-height: 75px;
    font-size: 30px;
    min-width: 200px;
    flex-grow: 1;
}

@media only screen and (min-width: 844px) {
    .mailing-padding {
        padding: 0 64px;
    }
}


#v-01 {
    font-size: 8vh;
    line-height: 8vh;
}

@media only screen and (min-width: 501px) {
    #v-01 {
        font-size: 10vh;
        line-height: 10vh;
    }
}

/* -------- kontakt.html  --------------*/

@media only screen and (max-width: 992px) {
    .col-text {
        margin: -56px 24px 0px 24px;
        width: calc(100% - 48px);
        text-align: center;
    }
}

@media only screen and (min-width: 993px) {
    .col-text {
        height: 516px;
        margin: 32px 0px 32px -56px;
        width: calc(33.333333% + 56px)
    }

    .col-text > div {
        padding: 48px;
    }
}

@media only screen and (max-width: 600px) {
    .col-img {
        height: 300px;
    }
}

@media only screen and (min-width: 601px) {
    .col-img {
        height: 580px;
    }
}

.w3-flex-centering {
    display: flex;
    justify-content: center;
}

.w3-wrapper {
    max-width: 1600px;
    margin: 0 auto;
}

/* -------- HP top button  --------------*/
@media only screen and (min-width: 601px) {
    .hp-button-left {
        margin-right: 8px;
    }

    .hp-button-center {
        margin-right: 8px;
        margin-left: 8px;
    }

    .hp-button-right {
        margin-left: 8px;
    }
}

@media only screen and (max-width: 600px) {
    .hp-button-center {
        margin-top: 8px;
        margin-bottom: 8px;
    }
}

/* -------- úprava animace  --------------*/
.w3-animate-top-menu {
    animation: animatetop 0.4s
}

@keyframes animatetop {
    from {
        top: -16px;
        opacity: 0
    }
    to {
        top: 0;
        opacity: 1
    }
}

/*upraveno 29.4.2023 - 12:28*/

/*prekryv pri delsi odezve vyhledavani*/
.loader {
    position: fixed;
    display: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(214, 211, 206, 0.6);
    z-index: 100;
    font-size: 18pt;
    text-align: center;
}

/* radius na top kartách  */
.w3-round-top-lr {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.w3-round-bottom-lr {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.w3-round-large-top-lr {
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.w3-round-xxlarge-bottom-right {
    border-bottom-right-radius: 32px;
    border-bottom-left-radius: 32px;
}

.w3-round-xxlarge-bottom-left {
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px;
}

@media (min-width: 993px) {
    .w3-round-xxlarge-bottom-right {
        border-bottom-right-radius: 32px;
        border-bottom-left-radius: 4px;
    }
}

@media (min-width: 993px) {
    .w3-round-xxlarge-bottom-left {
        border-bottom-right-radius: 4px;
        border-bottom-left-radius: 32px;
    }
}

#scrollBtn {
    background-color: #dddddd;
    position: fixed;
    display: none;
    bottom: 12px;
    right: 16px;
    z-index: 99;
}

.w3-verdana {
    font-family: Verdana, sans-serif;
}

/* bottom bar vyhledáno a detail  */
.w3-blur {
    background-color: rgba(252, 252, 252, 0.90);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    z-index: 999;
}

.w3-theme-symbol, .w3-hover-symbol:hover {
    fill: #008578 !important
}

.w3-padding-4 {
    padding: 4px !important;
}

.w3-padding-tiny {
    padding: 4px 8px !important;
}

/* při načítání cen se otáčí ozubené kolo */
@keyframes rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.md-seating-rotate {
    animation: rotate 2s infinite linear;
}

.mp-room .w3-dropdown-content {
    bottom: 40px;
    right: 0;
}

figure {
    margin: 0;
}

/* breadcrumb-list */
#breadcrumb-list ul {
    padding-inline-start: 0;
}

#breadcrumb-list li:not(:first-child)::before {
    content: "»"; /* Toto je váš vlastní styl seznamu pro každou položku kromě první */
    margin-left: 4px; /* Můžete přidat mezeru mezi vaším vlastním stylem a textem položky */
}

#breadcrumb-list ul li:last-child {
    margin-right: 16px; /* Můžeš nastavit hodnotu margin-right podle své potřeby */
}

@media (max-width: 600px) {
    .filter-list .w3-show-inline-block {
        display: block !important
    }
}

body.modal-open .mp-modal-hide {
    display: none;
}

/*info oblastí - admin*/
#info h5, #info h6 {
    font-size: 14px;
    margin-top: 16px;
    font-weight: 600;
}

#info a {
    text-decoration-color: #a99b16;
    color: #a99b16;
}

/* LATTE dostylováno */
.rs-decoration {
    text-decoration-color: #a99b16;
    color: #a99b16;
}

.wrapper {
    max-width: 768px;
    margin: 0 auto;
}

.flex-container {
    display: flex;
    flex-direction: row;
}

/* Responsive layout - makes a one column layout instead of a two-column layout */
@media (max-width: 500px) {
    .flex-container {
        flex-direction: column;
    }
}

.flex-1 {
    flex: 6;
}

.flex-2 {
    flex: 4;
}

.hr {
    border-top: 1px solid #009688;
}

.flex-container-centering {
    display: flex;
    justify-content: center;
    align-items: center;
}

.w3-caps {
    text-transform: uppercase;
    font-size: 13px;
}

.w3-padding-8 {
    padding-top: 8px !important;
    padding-bottom: 8px !important
}

.w3-margin-top-8 {
    margin-top: 8px !important
}

.w3-margin-bottom-8 {
    margin-bottom: 8px !important
}

.w3-weight-semi-bold {
    font-weight: 600;
}

table, div {
    break-inside: avoid-page;
}


#mp-padding-maps {
    padding-right: 16px !important;
    border-radius: 8px !important;
}

@media (max-width: 600px) {
    #mp-padding-maps {
        padding-right: 0 !important;
        border-radius: 0 !important;
    }
}


.rs-slider-container {
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.rs-slider-wrapper {
    display: flex;
    flex-wrap: nowrap; /* zabraňuje zalomení */
    z-index: 1;
    overflow-x: auto; /* horizontální scroll, který JS ovládá */

    scroll-behavior: smooth;

    /* SKRYTÍ POSUVNÍKU: */
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE 10+ */
}

/* SKRYTÍ POSUVNÍKU: */
.rs-slider-wrapper::-webkit-scrollbar {
    display: none; /* Chrome, Safari */
}


.rs-gap {
    gap: 8px;
}

@media (min-width: 601px) {
    .rs-gap {
        gap: 16px;
    }
}

.rs-slider-wrapper.no-gap {
    gap: 0 !important;
}

.rs-gap-4 {
    gap: 4px;
}

.rs-gap-8 {
    gap: 8px;
}

.rs-gap-16 {
    gap: 16px;
}

.rs-slider-item {
    flex: 0 0 auto;
    width: 85%;
}

/* === RESPONSIVNÍ ŠÍŘKY POLOŽEK === */

/* --- MOBIL --- */
@media (min-width: 320px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: 92%;
    }
}

@media (min-width: 375px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: 80%;
    }
}

@media (min-width: 440px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: 70%;
    }
}

@media (min-width: 520px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: 60%;
    }
}

/* --- iPad + TABLET --- */
@media (min-width: 601px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: calc((100vw - 64px) / 1.85);
    }
}

@media (min-width: 680px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: calc((100vw - 64px) / 2.15);
    }
}

@media (min-width: 768px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: calc((100vw - 64px) / 2.45);
    }
}

@media (min-width: 850px) {
    .rs-sliders-3 .rs-slider-item,
    .rs-sliders-4 .rs-slider-item {
        width: calc((100vw - 64px) / 2.75);
    }
}

/* --- MONITOR + NOTEBOOK --- */
/* slider 3  */

@media (min-width: 993px) {
    .rs-sliders-3 .rs-slider-item {
        width: calc((95vw - 64px) / 3.00);
    }
}

@media (min-width: 1206px) {
    .rs-sliders-3 .rs-slider-item {
        width: calc((1140px - 64px) / 3.00);
    }
}

/* slider 4  */
@media (min-width: 993px) {
    .rs-sliders-4 .rs-slider-item {
        width: calc((95vw - 32px) / 3.35);
    }
}

@media (min-width: 1024px) {
    .rs-sliders-4 .rs-slider-item {
        width: calc((95vw - 32px) / 3.50);
    }
}

@media (min-width: 1206px) {
    .rs-sliders-4 .rs-slider-item {
        width: calc((1108px - 48px) / 4);
    }
}


.rs-sliders-gallery .rs-slider-item {
    width: 100%;
    max-height: 420px;
}

@media (min-width: 601px) {
    .rs-sliders-gallery .rs-slider-item {
        width: calc((100vw - 8px) / 1.1);
        height: 420px;

    }
}

@media (min-width: 768px) {
    .rs-sliders-gallery .rs-slider-item {
        width: calc((100vw - 8px) / 1.33);
    }
}

@media (min-width: 993px) {
    .rs-sliders-gallery .rs-slider-item {
        width: calc((100vw - 8px) / 2);
    }
}

/* === BREAKPOINTY pro země – .rs-sliders-countries === */

.rs-sliders-countries .rs-slider-item,
.rs-sliders-region .rs-slider-item {
    width: calc((100vw - 32px) / 2.43);
}

@media (min-width: 500px) {
    .rs-sliders-countries .rs-slider-item,
    .rs-sliders-region .rs-slider-item {
        width: calc((100vw - 32px) / 3.5);
    }
}

@media (min-width: 768px) {
    .rs-sliders-countries .rs-slider-item,
    .rs-sliders-region .rs-slider-item {
        width: calc((100vw - 32px) / 4.5);
    }
}

@media (min-width: 993px) {
    .rs-sliders-countries .rs-slider-item,
    .rs-sliders-region .rs-slider-item {
        width: calc((95vw - 32px) / 5);
    }

    .rs-sliders-countries .rs-slider-wrapper,
    .rs-sliders-region .rs-slider-wrapper {
        scroll-padding-left: 48px;
        scroll-padding-right: 48px;
    }
}

@media (min-width: 1206px) {
    .rs-sliders-countries .rs-slider-item,
    .rs-sliders-region .rs-slider-item {
        width: calc((1140px - 32px) / 5);
    }
}

/* === TLAČÍTKA === */
.rs-slider-button-prev,
.rs-slider-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 10;
}

.rs-slider-button-prev {
    left: 0;
}

.rs-slider-button-next {
    right: 0;
}

.rs-slider-button-prev.edge {
    margin-left: -8px;
}

.rs-slider-button-next.edge {
    margin-right: -8px;
}


/* 🔸 GALERIE MODIFIKÁTOR – větší mezera */
.rs-slider-button-prev.inside {
    margin-left: 16px;
}

.rs-slider-button-next.inside {
    margin-right: 16px;
}

.rs-slider-button-prev.rs-slider-button-disabled,
.rs-slider-button-next.rs-slider-button-disabled {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
    transition: opacity 0.2s ease;
}


.rs-slider-lazy {
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.rs-slider-lazy.loaded {
    opacity: 1;
}

/* dekorace none u vizitek */
#business-card a {
    text-decoration: none;
    font-weight: normal;
    color: inherit;
}

#business-card a[href^="tel"],
#business-card a[href^="mailto"] {
    text-decoration: none;
    font-weight: normal;
    color: inherit;
}

.rs-banner-16x9 {
    overflow: hidden;
    aspect-ratio: 16 / 9;
}

.rs-banner-1x1 {
    overflow: hidden;
    aspect-ratio: 1 / 1;
}

.rs-banner-2x1 {
    overflow: hidden;
    aspect-ratio: 2 / 1;
}

.h130 {
    height: 130px;
}

.h400 {
    height: 420px;
}

/* admin */

.scrollable-container {
    display: flex;
    overflow-x: auto;
    white-space: nowrap;
}

.scrollable-container::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}

.scrollable-container button {
    flex: 0 0 auto; /* Zajistí, že buttony budou mít pevnou šířku */
}

/* poznámka nad storno dodavytel u detailu - kalkulace */
.poznamka-wrapper input {
    width: 100% !important;
    box-sizing: border-box;
}


@media (max-width: 1206px) {
    .rs-padding-item .w3-bar-item {
        padding-left: 8px;
        padding-right: 8px;
    }
}
@media (max-width: 768px) {
    .rs-padding-item .w3-bar-item {
        padding-left: 4px;
        padding-right: 4px;
    }
}

.rs-input-align-right input {
    text-align: right;
}
input,
textarea {
    border-radius: 4px; /* odstraní kulaté rohy */
    padding: 4px 8px; /* univerzální padding, uprav dle designu */
    box-sizing: border-box; /* zajistí, že padding nebude navyšovat velikost */
}
.w3-block-textarea textarea {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box; /* aby padding neudělal přesah */
}
/* c) samotný "select" (ve skutečnosti input) natáhni na 100 % */
input[type="text"][name="NameOfPayResId"] {
    display: block;
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}
select {
    font-size: 16px !important;
    height: 30px;
    border-radius: 4px; /* odstraní kulaté rohy */
}

input[type="checkbox"] {
    transform: scale(1.5); /* zvětší je o 50% */
    accent-color: #8c239e;
}

.rs-edit-info input {
    height: 24px;
    font-size: 12px;
    border-radius: 4px;
}
.ui-widget-header {
    background: none;

}
.ui-tabs .ui-tabs-panel {
    padding: 8px;
}
.admin-detail-sticky {
    position: sticky;
    top: -8px;           /* nebo 8px, pokud chceš odsazení */
    z-index: 9999;    /* aby překryl ostatní */
    padding: 8px 0 8px;
}
.input-pad-right {
    padding-right: 40px;  /* rezerva pro křížek */
}

.input-pad-left {
    padding-left: 40px;   /* rezerva pro N */
}
.searchResult{
     background:#fff; border-radius:4px;
     max-height:320px; overflow:auto; padding:6px 0;
 }
.searchResult .sr-item{ padding:8px 12px; cursor:pointer; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.searchResult .sr-item:hover{ background:#f1f1f1;
}
/* pole uvnitř .inp-fluid vyplní šířku svého boxu */
.inp-fluid input[type="text"],
.inp-fluid input[type="number"],
.inp-fluid input[type="date"],
.inp-fluid select,
.inp-fluid textarea {
    width: 100% !important;
    box-sizing: border-box;
}
.inp-checkbox-padding {
    padding-top: 6px;
}
/* Globálně na label všechny mají první písmeno velké */
label {
    display: inline-block;
}      /* nebo display:block; */
label::first-letter {
    text-transform: uppercase;
}
.inp-label label {
    white-space: nowrap;
    overflow: hidden;
}
fieldset, legend {
    min-width: 0; /* DŮLEŽITÉ u flex/grid rodičů */
}