/* COLOR PALETTE */
:root{
    /* --global-primary: #b49f85;
    --global-primary-rgb: 180, 159, 133; */
     --global-primary: #333936;
    --global-primary-rgb: 51, 57, 54;
    /* --global-fade-light:#f5f3ef; */
    --global-fade-light:#f2f2f2;
    --global-fade-light-rgb:245, 243, 239;
    /* --global-fade-dark:#ece6df;
    --global-fade-dark-rgb:236, 230, 223; */
    --global-fade-dark:#e9e9e9;
    --global-fade-dark-rgb:233, 233, 233;
    /* --global-fade-darker:#e2d9cf;
    --global-fade-darker-rgb:226, 217, 207; */
    --global-fade-darker:#cccccc;
    --global-fade-darker-rgb:204, 204, 204;
    /* --global-secondary-bold:#354e64;
    --global-secondary-bold-rgb:53, 78, 100; */
    --global-secondary-bold:#871228;
    --global-secondary-bold-rgb:119, 16, 35;
    --global-secondary-semibold:#9d152e;
    --global-secondary-semibold-rgb:157, 21, 46;
    /* --global-link:#ab763b; */
    --global-link:#871228;
    --global-link-hover:#b41835;
}

body{font-family: "Outfit", sans-serif; font-size: 16px; letter-spacing: 0.02em;}
body{background-color: #F9FBFC;}
/* theme classes */
.bg-primary{background-color: var(--global-primary);}
.bg-fade-light{background-color: var(--global-fade-light);}
.bg-fade-dark{background-color: var(--global-fade-dark);}
.color-primary{color: var(--global-primary);}
.color-fade-light{color: var(--global-fade-light);}
.color-fade-dark{color: var(--global-fade-dark);}

/*
    Generic/Global
*/
.navbar > .container {
    max-width: unset;
}
.p-0 {
    padding: 0 !important;
}

.m-0 {
    margin: 0 !important;
}
.m-auto {
    margin: auto;
}
.mb-10{margin-bottom: 10px;}
.mb-15{margin-bottom: 15px;}
.mb-20{margin-bottom: 20px;}
.float-none {
    float: none;
    clear: both;
}

.fw-bold, .text-bold {
    font-weight: 700 !important;
}
.fw-semibold, .text-semibold {
    font-weight: 600 !important;
}
.text-underline{ text-decoration:underline;}
.text-nodecoration, .text-nodecoration:hover{ text-decoration:none;}
.text-sm {font-size: 13px;}
.text-success{color:#39ac39;}
.text-capitalize{text-transform: capitalize;}
.fs-2{
    font-size:2em;
}
.separator-row {
    padding: 25px;
}
.cursor-pointer{cursor: pointer;}
.bg-white {
    background-color: #fff;
}

.align-content-center {
    align-content: center;
}

.align-content-end {
    align-content: end;
}
.gallery-wrapper figure img:hover{
    cursor:pointer;
}
.text-page-description{max-width: 900px; margin: auto;}
.list-with-check-glyphicons .glyphicon{font-size: .8em; padding-right: 5px;}
.list-with-diff-glyphicons .glyphicon, .list-with-diff-fa .fa, .list-with-diff-fa .glyphicon{width:30px;text-align: center;}
.list-with-diff-fa .fa-euro{font-weight:bold;}
.list-space-between-li li{margin-bottom: 10px;}
@media(min-width:992px) {
    .h-lg-100 {
        height: 100%;
    }
    /* Helper - equal columns under in a row */
    .row-equal-height {
        display: flex;
        flex-wrap: wrap;
    }

        .row-equal-height [class^="col"] {
            display: flex;
            flex-direction: column;
        }
}

/* Helper - container with cover image-no streching */
.image-adjusting-container {
    height: 300px;
    width: 100%;
    overflow: hidden;
    position: relative;
}

    .image-adjusting-container img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        object-position: center center;
        padding: 15px 0;
    }
    @media(max-width:767px){
        .image-adjusting-container{
            margin-bottom: 20px;
        }
    }

/* Components - banner */
.banner-container {
    width: 100%;
    height: 700px;
    overflow: hidden;
    position: relative;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
}
 @media(min-width:768px) {
     .banner-title-container {
         position: absolute;
         top: 37%;
         width: 100%;
         text-align: center;
         background-color: rgba(0,0,0, .2);
     }

     .banner-title-container h1,
     .banner-title-container h2,
     .banner-title-container h3 {
         color: #fff;
         font-weight: 600;
         letter-spacing: 2px;
         text-shadow: 1px 1px 2px #000;
     }
    .banner-title-container h1 {
        font-size: 5.2em;
    }
    .banner-title-container h2 {
        font-size: 3em;
    }
    .banner-title-container h3 {
        font-size: 1.9em;
    }
 }

 @media(max-width:767px) {
    .banner-container{height: 500px;}
     .banner-title-container {
         margin-top:22%;
         width: 100%;
         text-align: center;
         background-color: rgba(0,0,0, .2);
     }

     .banner-title-container h1,
     .banner-title-container h2,
     .banner-title-container h3 {
         color: #fff;
         font-weight: 600;
         letter-spacing: 2px;
         text-shadow: 1px 1px 2px #000;
     }
    .banner-title-container h1 {
        font-size: 3.5em;
    }
    .banner-title-container h2 {
        font-size: 2em;
    }
    .banner-title-container h3 {
        font-size: 1.2em;
    }
 }


/* Components - footer */
footer {
    background-color: var(--global-primary);
    border-top: 5px solid var(--global-secondary-bold);
    padding-bottom: 20px;
    color:#fff;
}

    footer address {
        text-align: right;
    }
    footer h1, footer h2, footer h3, footer .h1, footer .h2, footer .h3 {
        color:#fff;
    }
#cookies-section{
    background-color: var(--global-fade-dark);
    box-shadow: 5px 5px 5px 10px  var(--global-fade-darker);
    padding:20px 0;
    position: fixed;
    bottom: 0;
    width: 100%;
}
.dont-miss-out-section{box-shadow: 2px 2px 2px 3px var(--global-fade-light);background-color: #fff;}
.navbar.navbar-default{border-bottom: 2px solid rgba(var(--global-secondary-bold-rgb), .6);}
.page-header{border:0;}

/* Components - cards */
.card {
    font-size: 1em;
    overflow: hidden;
    height: 100%;
    padding: 0;
    margin-bottom: 2em;
    border: none;
    border-radius: 0;
    box-shadow: none;
}

.card-image {
    padding: 0;
    margin: 0;
    width: 100%;
    border: none;
}

.card-body {
    position: relative;
    margin: 0;
    padding: .75em 1em;
    border: none;
}

.card-title {
    margin: 1em 0 .5em 0;
    font-size: 1.3em;
    font-weight: bold;
}

.card-text {
    clear: both;
    margin: .5em 0;
    color: rgba(0, 0, 0, .68);
}

.card-footer {
    position: static;
    top: 0;
    left: 0;
    max-width: 100%;
    padding: .75em 1em;
    border: none;
}

/*
    Animation - zoomIn on hover
*/
.hover-zoom-in {
    transition: transform 0.8s ease;
}

    .hover-zoom-in:hover {
        transform: scale(1.1);
    }

/* Animation - show and move to place on scroll (needs js) */
.animate-wrapper {
    opacity: 0;
    transform: translateX(-50px); /* Start from left */
    transition: opacity 1s ease, transform 1s ease; /* Smooth transition */
}
    .animate-wrapper.visible {
        opacity: 1;
        transform: translateX(0); /* Move to the normal position */
    }

/* Animation - flip card */
.flip-card {
  background-color: transparent;
  /* width: 300px;*/
  height: 300px;
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-front {
  color: black;
}

.flip-card-back {
  background-color: var(--global-secondary-bold);
  color: white;
  transform: rotateY(180deg);
  padding: 10px;
}


/* MOBILE - Desktop flip order of columns */
.row.row-flip-cols-on-mobile {
    display: flex;
    flex-wrap: wrap;
}

.row.row-flip-cols-on-mobile>.col-xs-12 {
    order: 2;
}

.row.row-flip-cols-on-mobile>.col-xs-12.reverse {
    order: 1;
}

@media(max-width:767px) {
    .row.row-flip-cols-on-mobile>.col-xs-12,
    .row.row-flip-cols-on-mobile>.col-xs-12.reverse {
        order: unset;
    }
}


/* OLD css overwrites */
@media (max-width: 768px){
    .content{padding-top: 40px;}
    .separator-row{padding: 13px;}
}

.reserve-dialog {
    margin-bottom: 0;
}

.slider-section {
    background-color: transparent;
}

.side-widget {
    background-color: transparent;
    padding: 0;
}



.side-widget form {
    border: 0;
    padding: 0;
    background-color: transparent;
}
.thumbnail-gallery{
    margin:0;
}
.modal button.close {
    font-size: 5rem;
    position: absolute;
    top: 10px;
    right: 20px;
    z-index: 5555;
    color: var(--global-primary);
    opacity: 1;
}
.modal button.close:hover {
    opacity: .7;
}
a.controls{
    font-size: 2.5em;
    background-color: rgba(255,255,255, .2);
    border-radius: 50%;
    align-items: center;
    align-content: center;
}
a.controls:hover{
    background-color: rgba(255,255,255, .5);
}
a.controls.previous {
    float: left;
    padding: 8px 20px 2px 15px;
}
a.controls.next {
    float: right;
    padding: 8px 15px 2px 20px;
}

.modal button.close, #image-modal .glyphicon, #image-modal .fa {color: var(--global-secondary-bold);text-shadow: 0 1px 0 #fff;}
#image-modal > .modal-dialog {
    width: 100%;
    height: 100vh;
    padding: 1%;
    text-align: center;
}

#image-modal .modal-content {
    width: 100%;
    height: 100%;
    max-height: 99vh;
    overflow: hidden;
    border-radius: 0;
}

#image-modal .modal-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

#image-modal .modal-footer {
    margin: 0;
    position: absolute;
    bottom: 43%;
    width: 100%;
    border: 0;
}

@media(max-width:767px){
    #image-modal .modal-content {
        overflow-x: auto;
    }

    #image-modal .modal-image {
        width: auto;
    }
    #image-modal a.controls.previous{
        position: fixed;
        left: 10px;
    }
    #image-modal a.controls.next{
        position: fixed;
        right: 10px;
    }
    #image-modal.modal button.close{
        position: fixed;
        right: 20px;
    }
}

.btn-primary {
    background-color: var(--global-primary);
    border: 2px solid var(--global-primary);
    color: #fff;
    min-width: 100px;
}
.btn-form > .fa, .btn-primary > .fa {color:#fff; margin: 0 5px;}
article{border:0 !important;}

.btn-primary:hover,
.btn-primary:focus,.btn-primary:focus:active,
.btn-primary:active{background-color: var(--global-primary);border: 2px solid var(--global-primary);outline-color: var(--global-primary);}
#googleMap{border-top:2px solid var(--global-primary);}

.btn-form{min-width: 150px;background-color: var(--global-secondary-bold); border-color: var(--global-secondary-bold);color:#fff;}
.btn-form:hover{background-color: var(--global-secondary-semibold); border-color:var(--global-secondary-bold);}
.go-to-top{background-color: var(--global-secondary-bold);}
.go-to-top:hover,.go-to-top:active{background-color: var(--global-primary);}
.navbar.navbar-default .navbar-toggle:hover,
.navbar.navbar-default .navbar-toggle:active,
.navbar.navbar-default .navbar-toggle:focus:active{background-color: var(--global-secondary-bold);}
.navbar.navbar-default .navbar-toggle:focus{background-color: rgba(var(--global-primary-rgb),.2);}

@media(min-width:992px){.navbar-header{float: left;}.navbar-toggle{display: none;}.navbar-collapse.collapse{display: block !important;}.navbar-brand img{height:65px; top:5px;}}
@media(max-width:991px){.navbar-header{float: none;clear: both;}.navbar-toggle{display: inline-block;}.navbar>.container .navbar-brand{padding: 0;margin:0;}.navbar-brand img{height:50px; top:0;margin-left: 10px;}.container>.navbar-header, .container>.navbar-collapse{margin-left: -15px;margin-right: -15px;}}
/*overwrite*/
@media(min-width:992px){.navbar-collapse.collapse{display: block !important;}}
@media(max-width:991px){.navbar-collapse.collapse{display: none !important;}.navbar-collapse.collapse.in{display: block !important;}}

a{text-decoration: underline; text-underline-offset: 4px;color:var(--global-link);}
a>.fa{color:var(--global-link);}
.navbar-default .navbar-nav>li>a, .dropdown-menu>li>a {text-decoration: none !important;}
@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a {color: var(--global-secondary-bold); text-decoration: none !important;}}
.dropdown-menu>li>a:hover, .dropdown-menu>li>a:focus, .dropdown-menu>li>a:active, .dropdown-menu>li>a:focus:active {background-color: var(--global-primary);}
h1, h2, h3, .h1, .h2, .h3 {color: var(--global-secondary-semibold);}
.reserve-dialog h1, .reserve-dialog h2, .reserve-dialog h3, .reserve-dialog .h1, .reserve-dialog .h2, .reserve-dialog .h3 {color: #fff;}
.navbar.navbar-default .navbar-toggle {border-color: var(--global-secondary-bold);}
.navbar.navbar-default .navbar-toggle>.icon-bar {background-color: var(--global-secondary-bold);}
.navbar.navbar-default .navbar-toggle:hover>.icon-bar {background-color: #fff;}

.go-to-top .glyphicon {color: #fff;}
.contact-line-affix{padding: 0 27px;text-align: end;background-color: var(--global-secondary-bold);color: #fff;}
.reserve-dialog{background-color: var(--global-primary);}
.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus, .navbar-default .navbar-nav>li>a.current, footer .navbar-nav>li>a:hover, a:hover{color:var(--global-link-hover);}
.datepicker td.active:hover, .datepicker td.active:hover:hover, .datepicker td.active:focus, .datepicker td.active:hover:focus, .datepicker td.active:active, .datepicker td.active:hover:active, .datepicker td.active.active, .datepicker td.active:hover.active, .datepicker td.active.disabled, .datepicker td.active:hover.disabled, .datepicker td.active[disabled], .datepicker td.active:hover[disabled], .datepicker td.active, .datepicker td.active:hover {background-color: var(--global-secondary-bold); background-image:none;}
/* for price breakdown table */
    .price-table td, .price-table tbody>tr> td {border:0 !important; padding-top: 3px;padding-bottom: 3px;}
    .price-table td:first-child{padding-left: 0;}
    .price-table td:last-child{padding-right: 0;}
    .price-table .tr-room td{border-bottom: 1px solid #ccc;}
    .price-table .td-guests{width:50px;}
    .price-table .td-description{width:auto;}
    .price-table .td-description .options{font-size: 13px;display: block;margin-left:10px;}
    .price-table .td-price{white-space: nowrap; width: 1%; text-align: end;}
    .price-table .td-remove{width:30px; text-align: end;}
    @media(min-width:992px){

    }
    @media(max-width:991px){
        .price-table .td-remove{height: 50px;}
    }

.terms-block .terms-title{font-weight: 700; margin-bottom: 0;}
.terms-block ul{padding-inline-start: 25px;}

body.modal-open{
    overflow:hidden;
}
 @media(min-width:992px){
        .modal-md{width:800px;}
    }
 @media(max-width:991px){

    }
/* for administration pages */
.separation-line{width:100%;display: block; padding-top: 20px;border-bottom:2px solid var(--global-primary);margin-bottom: 5px;}
.dataTables_wrapper .paginate_button:not(.disabled):not(.active) > a,
.dataTables_wrapper .paginate_button:not(.disabled):not(.active) > span {color:#428bca;}
.form-inline .form-group {display: flex;margin: 0; align-items: center;}
.form-inline .form-control{display: flex;margin: 0;}
.form-control{border-width: 2px;border-radius: 0;height: 36px;}
.row-table-cells {padding: 15px 30px;background-color: var(--global-fade-dark);}
.border-bottom{border-bottom:1px solid #ccc;}

.btn-app {
  border-radius: 3px;
  position: relative;
  padding: 15px 5px;
  margin: 0 0 10px 10px;
  min-width: 80px;
  height: 60px;
  text-align: center;
  font-size: 12px;
  text-decoration: none;
  text-transform: none;
}
.btn-app > .fa {color: white; font-size: 20px; display: block;}




/* ESPA logos */
@media(min-width:1401px){
    .espa-section-desktop{visibility: visible;}
    .espa-section-mobile{visibility: hidden; height: 0;}
}
@media(max-width:1400px){
    .espa-section-desktop{visibility: hidden; height: 0;display: inline-table !important;}
    .espa-section-desktop img{height: 0;}
    .espa-section-mobile{visibility: visible;text-align: center;display: block;}
    .espa-section-mobile img{
        max-height: 60px;
        width: 100%;
        max-width: 440px;
    }
}