﻿@import url('../../css/styles.css');

a {
    cursor: pointer !important;
    text-underline-offset: 5px;
}

a:focus {
    outline: none !important;
}

input, select, textarea {
    font-family: 'Open Sans', sans-serif;
    margin: 0;
}

input[type='button'], input[type='submit'], button {
    cursor: pointer;
    font-family: "Work Sans", sans-serif;
}

img {
    max-width: 100%;
}

a, a:focus, a:hover {
    color: #9C5B34;
}

a:focus-visible, span:focus-visible, div:focus-visible, textarea:focus-visible, input:focus-visible, select:focus-visible {
    outline: solid #9C5B34 1px !important;
    outline-offset: 5px !important;
}

.owl-carousel {
    z-index: 0 !important;
}

.bx-wrapper img {
    width: 100%;
}
/*for IE10*/
.fancybox-slide--iframe .fancybox-content {
    width: 800px !important;
    max-width: 100%;
}

.modal button.close {
    position: relative;
    z-index: 999;
}

.CMSMenu {
    z-index: 0 !important;
    width: 100%;
}
header .CMSMenu {
    display: flex;
    align-items: center;
    justify-content: center;
}
/*Cookies*/
.eGDSCookiesOverlay .eGDSCookiesWindow .eGDSCookiesWindowBtnWrapper .eGDSCookiesWindowBtn.eGDSCookiesWindowClose {
    background: #9C5B34 !important;
    border-color: #9C5B34 !important;
}

body .eGDSCookiesOverlay .eGDSCookiesWindow .switch input:checked ~ .draggableSwitch {
    background: #9C5B34;
}
/* [Calendar] */
.ui-datepicker {
    background: #F2E4D7;
    border: 1px solid rgb(156 91 52 / 25%);
}

    .ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
        display: block;
        left: 50%;
        margin-left: -8px;
        margin-top: -8px;
        position: absolute;
        top: 50%;
        line-height: 16px;
    }

.ui-widget-header .ui-icon {
    background-image: url(images/ui-icons_222222_256x240.png);
    width: 16px;
}

.ui-icon-circle-triangle-w {
    background-position: -80px -192px;
}

.ui-icon-circle-triangle-e {
    background-position: -48px -192px;
}

.ui-datepicker-header, .ui-datepicker-calendar thead {
    border-bottom: solid 1px #D5D5D5;
}

.ui-datepicker td span, .ui-datepicker td a {
    text-align: center !important;
}

.ui-datepicker td a {
    color: #1a0908 !important;
}

.ui-datepicker-unselectable span {
    color: #D5D5D5;
}

.ui-datepicker-current-day a, a.ui-state-hover {
    color: #1a0908;
    background: #9C5B34;
}

.ui-datepicker .ui-datepicker-prev-hover {
    left: 2px !important;
    top: 2px !important;
}

.ui-datepicker .ui-datepicker-next-hover {
    right: 2px !important;
    top: 2px !important;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
}
/* [TOS MODAL] */
.sidebar_content h1 {font-size: 22px;margin-bottom: 20px;}
.sidebar_content ol {list-style-type: decimal;font-size: 16px;line-height: 20px;}
.sidebar_content ol li{margin-bottom: 10px;}
/* Skip links: ocultos por padrão, visíveis ao foco */
.skip-link {
    position: absolute;
    top: -44px;
    left: 0;
    background: #9C5B34;
    color: #FFF !important;
    padding: 8px 16px;
    z-index: 99999;
    border-radius: 4px;
    text-decoration: none;
    transition: top 0.2s ease;
}

.skip-link:focus, .skip-link:focus-visible, .skip-link:focus-within {
  top: 10px;
}
/* [Bootstrap Helpers] */
.NoPadding {
    padding: 0 !important;
    margin: 0 !important;
}

.NoPaddingRight {
    padding-right: 0 !important;
    margin-right: 0 !important;
}

.NoPaddingLeft {
    padding-left: 0 !important;
    margin-left: 0 !important;
}

.Equal {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */
    display: -webkit-flex; /* NEW - Chrome */
    display: flex;
    flex-wrap: wrap;
}
/* [CMSEditMode] */
.CMSEditMode [data-cue="fadeIn"], .CMSEditMode [data-cues="fadeIn"] > * {
    opacity: 1;
}
/*.CMSEditMode.bEditMode .Banner::after, .CMSEditMode.bEditMode header {
    pointer-events: none;
}*/
.CMSEditMode [data-cue="zoomIn"], .CMSEditMode [data-cues="zoomIn"] > * {
    opacity: 1 !important;
}
.CMSEditMode.bEditMode .Banner::after {
    display:none;
}
.CMSEditMode.bEditMode header {
    position: relative !important;
}
.CMSEditMode.bEditMode .Booking {
    bottom: 0;
    position: relative;
}
/* [Responsive] */
/*XS*/
@media (max-width: 767px) {
    h2, .h2 {
        font-size: 20px;
    }
    .fancybox-slide.fancybox-slide--iframe {
        padding: 0;
    }
    .NavLeft {
        width: 100%;
        padding: 80px 32px 50px;
    }

    .NavRight {
        display: none;
    }
    .HeaderLogo {
        width: auto;
        text-align: left;
        padding-left: 30px;
    }

    .MobileMenuToggle {
        width: auto;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        padding-right: 30px;
    }

    header .BookNow {
        margin-right: 0;
        width: auto;
    }

    header .BookNow a {
        width: fit-content;
        margin: auto;
    }
    .Search .InputDate {
        flex:1;
    }
    .Search .InputDate.InputDateGuests,
    .Search .InputDate.InputDatePromocode {
        display: none;
    }
    .Booking {
        bottom: 0;
        position: fixed;
        left: 0;
        right: 0;
        z-index: 3;
        border-top:1px solid transparent;
    }
    .Fixed .Booking {
        border-top: 1px solid rgb(156 91 52 / 25%);
    }
    .Booking > .container {
        max-width: unset;
    }
    .Fixed .Search {
        background: rgba(0,0,0,.9);
    }
    .Banner .bx-wrapper .bx-pager {
        top: calc(100% - 160px);
        bottom: unset;
    }
    .SpecialOffer {
        flex-direction: column-reverse;
    }
    .SpecialOffer .Description {
        padding: 25px;
        width:100%;
    }
    .SpecialOffer .itemImage {
        width:100% !important;
    }
    .specialoffers_carousel {
        width: 100% !important;
        margin-left: 0;
    }
    .NavMenuLogo .LCLogo img {
        filter: brightness(0) invert(1);
    }

    .Search .InputDate {
        padding: 7px 4px 14px 4px;
    }
    .Search .Button a {
        padding: 15px 10px 15px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    .SpecialOffers {
        padding: 20px 22px 20px;
    }
    .ServicesItens {
        margin-top: 20px;
    }
    .ServicesItens li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }
    .Search .Button a span {
        display:none;
    }
    .Search {
        align-items: stretch;
    }
    main {
        padding: 30px 0;
    }

    h1 span, h2 span {
        font-size: 14px;
    }

    main .HomeText h1 {
        font-size: 22px;
    }

    .Rooms h2 {
        font-size: 20px;
    }

    .Rooms {
        padding: 30px 22px 30px;
    }
    .btnAlt {
        font-size: 16px;
        width: 100%;
        max-width: 240px;
        padding: 7px 0;
    }

    .Localizacao {
        padding: 60px 0 60px;
    }
    .LocalizacaoContent h2 {
        font-size: 20px;
    }

    .LocalizacaoContent h2 span {
        font-size: 14px;
    }
    .LocalizacaoContent a {
        margin-top: 30px;
    }
    .Services {
        padding: 30px 0;
    }
    .Services h2 {
        font-size: 20px;
    }

    .SpecialOffers h2 {
        font-size: 20px;
    }
    footer {
        text-align: center;
        padding-bottom: 105px;
    }
    footer .About p {
        margin-right:0;
    }
    footer h2::after {
        margin: 20px auto 0;
    }

    footer a[href*='www.livroreclamacoes.pt'] {
        margin: auto;
        margin-top: 15px;
        float: none;
    }

    footer .CMSMenu {
        float: none;
    }
    .Copyright {
        text-align: center;
    }

    .Powered {
        text-align: center;
    }
    .RoomItemV2 .RoomImageContainer {
        min-height: unset;
    }

    .RoomItemV2 .RoomContent ul li {
        width: 100%;
    }

    .RoomItemV2 .RoomContent {
        padding: 16px 16px 44px 16px;
    }
    .RoomItemV2 .RoomBooking {
        bottom: 16px;
        right: 16px;
    }

    .RoomAmenitiesTitle h2 {
        font-size: 20px;
    }
    section.RoomAmenities {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .HighlightsItens {
        margin-bottom: 0;
    }
    .HighlightsItens li {
        width: 100%;
        margin-bottom: 0;
    }
    section.AdditionalInfo {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .AdditionalInfo h2 {
        font-size: 20px;
    }
    .HotelCTA {
        padding: 30px 0;
    }
    .HotelCTA h2 {
        font-size: 20px;
    }
    .GalleryItem {
        width:calc(50% - 15px);
    }
    .ExperienceList .ExperienceItem {
        width: 100%;
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 20px;
    }
    .ExperienceIcon {
        margin-right: 0;
        margin-bottom: 15px;
    }
    .Contacts h1 {
        font-size: 20px;
    }

    .Contacts .Text {
        padding: 30px 0;
    }

    .Contacts ul {
        margin-top: 25px;
    }
    
    .Contacts ul li {
        width: 100%;
        margin-top: 0;
    }
    .LocationText .LocationTextImage {
        padding-top: 0;
    }
    .LocationHighlightsTitle h2 {
        font-size: 20px;
    }

    .ContactsForm h2 {
        font-size: 20px;
    }
    .Contacts .Map, .Contacts .Map iframe {
        min-height: 300px;
    }

    .Form.CustomForm .txtEmailField, .Form.CustomForm .smallField {
        width: 100%;
    }

    .Form.CustomForm .bigField, .Form.CustomForm .infoField {
        width: 100%;
    }
    .NavMenuLogo {
        position: absolute;
        top: 22px;
        left: 32px;
    }
    .RoomsContainer.owl-carousel .owl-nav button.owl-prev, .RoomsContainer.owl-carousel .owl-nav button.owl-next {
        font-size: 24px;
    }
    .RoomsContainer .owl-nav {
        width: calc(100% - 30px);
        margin-left: auto;
        margin-right: auto;
        left: 0;
        right: 0;
    }
    .NavLeft {
        background-size: 200% auto;
    }
}
/*SM*/
@media (min-width: 768px) and (max-width: 991px) {
    .HeaderLogo {
        width: auto;
        text-align: left;
        padding-left: 30px;
    }

    .MobileMenuToggle {
        width: auto;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        padding-right: 30px;
    }

    header .BookNow {
        margin-right: 0;
        width: auto;
    }

    header .BookNow a {
        width: fit-content;
        margin: auto;
    }

    .SpecialOffer .Description {
        padding: 25px;
    }

    .NavMenuLogo .LCLogo img {
        filter: brightness(0) invert(1);
    }

    .Search .InputDate {
        padding: 0px 4px 7px 4px;
    }
    .Search .Button a {
        padding: 15px 20px 15px;
    }
    .ServicesItens li {
        width: calc(50% - 50px);
    }
    .HighlightsItens li {
        width: calc(50% - 30px);
    }
    .ExperienceList .ExperienceItem {
        width: 100%;
    }

    .Contacts .Text {
        padding: 30px 0;
    }

    .Contacts ul {
        margin-top: 25px;
    }

    .Contacts ul li {
        width: 100%;
        margin-top: 0;
    }
    .LocationText .LocationTextImage {
        padding-top: 0;
    }
    .LocationText .LocationTextText {
        padding-bottom: 30px;
    }
}
/*MD*/
@media (min-width: 992px) and (max-width: 1199px) {
    .HeaderLogo {
        width: auto;
        text-align: left;
        padding-left: 30px;
    }

    .MobileMenuToggle {
        width: auto;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        padding-right: 30px;
    }
    header .BookNow {
        margin-right: 0;
        width: auto;
    }
    header .BookNow a {
        width: fit-content;
        margin: auto;
    }
    .SpecialOffer .Description {
        padding: 25px;
    }
    .NavMenuLogo .LCLogo img {
        filter: brightness(0) invert(1);
    }

    .Search .InputDate {
        padding: 0px 17px 7px 17px;
    }
}
/*LG*/
@media (min-width: 1200px) and (max-width: 1365px) {
    .HeaderLogo {
        width: 10%;
    }

    .Menu {
        width: 70%;
    }

    .Menu ul li {
        margin: 0 0px;
    }

    .Menu ul li a {
        font-size: 14px;
    }
    header .BookNow {
        margin-right: 10px;
    }
    .Languages {
        width: 12%;
    }
    .SpecialOffer .Description {
        padding: 25px;
    }
}
@media (min-width:1366px) and (max-width: 1919px) {
     .HeaderLogo {
        width: 9%;
    }

    .Menu {
        width: 71%;
    }

    .Menu ul li {
        margin: 0 5px;
    }

    .Menu ul li a {
        font-size: 14px;
    }
    header .BookNow {
        margin-right: 10px;
    }
}