/*@import url('https://fonts.googleapis.com/css2?family=League+Spartan:wght@100..900&display=swap');*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

:root {
    --sl-font-primary: "Poppins", Arial, sans-serif;
}
.btn {
    --sl-btn-border-radius: .25rem;
}

.pyf-hotel-preview { background-color: var(--sl-background-color-white); border-radius: .25rem; border: 1px solid rgb(225, 225, 228); }
.pyf-hotel-preview .pyf-hotel-preview-cover { overflow: hidden; border-radius: .25rem; }
.pyf-hotel-preview .pyf-hotel-preview-cover a { display: block; }
.pyf-hotel-preview .pyf-hotel-preview-cover img { transition: scale 500ms ease; display: block; }
/*.pyf-hotel-preview .pyf-hotel-preview-cover:hover img { scale: 1.1; }*/
.pyf-hotel-preview .pyf-hotel-preview-content { padding: .5rem 1rem 1rem 1rem; }
.pyf-hotel-preview .pyf-hotel-preview-content-top { display: flex; align-items: center; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-heading { width: 100%; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-heading a { text-decoration: none; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-heading h2 { font-size: 1.1rem !important; font-weight: bold; color: var(--sl-text-color-dark-dark) !important; margin: 0; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-heading a + div { font-size: .9rem !important; color: var(--sl-text-color-dark) !important; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-price { width: 7rem; text-align: right; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-price .pyf-price-text { font-size: 1.6rem; font-weight: bold; color: var(--sl-text-color-primary); }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-price .pyf-price-prefix { font-size: .7rem; }
.pyf-hotel-preview .pyf-hotel-preview-content-top .pyf-hotel-preview-content-top-price .pyf-price-suffix { font-size: .7rem; }
.pyf-hotel-preview .pyf-hotel-preview-content-description { font-size: .8rem; margin-top: .5rem; }
.pyf-hotel-preview .pyf-hotel-preview-content-bottom { display: flex; justify-content: center; align-items: center; margin-top: .5rem; }
.pyf-hotel-preview .pyf-hotel-preview-content-bottom .pyf-tripadvisor-review { width: 50%; font-size: .9rem; margin-top: 0; }
.pyf-hotel-preview .pyf-hotel-preview-content-bottom .pyf-hotel-preview-discover { width: 50%; }
.pyf-hotel-preview .pyf-hotel-preview-content-bottom .pyf-hotel-preview-discover .pyf-hotel-preview-discover-button { width: 100%; text-align: center; }

.pyf-hotel-stars { display: flex; font-size: .7rem; color: var(--sl-text-color-secondary); margin-bottom: .25rem; }
.pyf-hotel-stars > .fa-star { display: none; }
[data-pyf-stars="1"] > .fa-star:nth-child(1), [data-pyf-stars="2"] > .fa-star:nth-child(1), [data-pyf-stars="3"] > .fa-star:nth-child(1), [data-pyf-stars="4"] > .fa-star:nth-child(1), [data-pyf-stars="5"] > .fa-star:nth-child(1) { display: block; }
[data-pyf-stars="2"] > .fa-star:nth-child(2), [data-pyf-stars="3"] > .fa-star:nth-child(2), [data-pyf-stars="4"] > .fa-star:nth-child(2), [data-pyf-stars="5"] > .fa-star:nth-child(2) { display: block; }
[data-pyf-stars="3"] > .fa-star:nth-child(3), [data-pyf-stars="4"] > .fa-star:nth-child(3), [data-pyf-stars="5"] > .fa-star:nth-child(3) { display: block; }
[data-pyf-stars="4"] > .fa-star:nth-child(4), [data-pyf-stars="5"] > .fa-star:nth-child(4) { display: block; }
[data-pyf-stars="5"] > .fa-star:nth-child(5) { display: block; }

.pyf-tripadvisor-review { display: flex; gap: .5rem; margin-top: .75rem; }
.pyf-tripadvisor-review .pyf-tripadvisor-review-note { display: flex; gap: .125rem; }
.pyf-tripadvisor-review .pyf-tripadvisor-review-note:before { content: ''; display: block; width: 1.5rem; height: .9rem; background-image: url('https://www.playayfiesta.com/theme/PlayaYFiesta/img/2023/socials/tripadvisor.png'); background-size: contain; background-repeat: no-repeat; background-position: center; margin-right: .25rem; }
.pyf-tripadvisor-review .pyf-tripadvisor-review-note .pyf-tripadvisor-note { width: .9rem; height: .9rem; display: block; background: #00aa6c; border-radius: 100%; border: 1px solid #00aa6c; }
[data-pyf-note="1"] > .pyf-tripadvisor-note:nth-child(5), [data-pyf-note="1.5"] > .pyf-tripadvisor-note:nth-child(5),
[data-pyf-note="2"] > .pyf-tripadvisor-note:nth-child(5), [data-pyf-note="2.5"] > .pyf-tripadvisor-note:nth-child(5),
[data-pyf-note="3"] > .pyf-tripadvisor-note:nth-child(5), [data-pyf-note="3.5"] > .pyf-tripadvisor-note:nth-child(5),
[data-pyf-note="4"] > .pyf-tripadvisor-note:nth-child(5) { background: #fff; }
[data-pyf-note="4.5"] > .pyf-tripadvisor-note:nth-child(5) { background: linear-gradient(to left, #fff, #fff 45%, #00aa6c 45%, #00aa6c 100%); }
[data-pyf-note="1"] > .pyf-tripadvisor-note:nth-child(4), [data-pyf-note="1.5"] > .pyf-tripadvisor-note:nth-child(4),
[data-pyf-note="2"] > .pyf-tripadvisor-note:nth-child(4), [data-pyf-note="2.5"] > .pyf-tripadvisor-note:nth-child(4),
[data-pyf-note="3"] > .pyf-tripadvisor-note:nth-child(4) { background: #fff; }
[data-pyf-note="3.5"] > .pyf-tripadvisor-note:nth-child(4) { background: linear-gradient(to left, #fff, #fff 45%, #00aa6c 45%, #00aa6c 100%); }
[data-pyf-note="1"] > .pyf-tripadvisor-note:nth-child(3), [data-pyf-note="1.5"] > .pyf-tripadvisor-note:nth-child(3),
[data-pyf-note="2"] > .pyf-tripadvisor-note:nth-child(3) { background: #fff; }
[data-pyf-note="2.5"] > .pyf-tripadvisor-note:nth-child(3) { background: linear-gradient(to left, #fff, #fff 45%, #00aa6c 45%, #00aa6c 100%); }
[data-pyf-note="1"] > .pyf-tripadvisor-note:nth-child(2) { background: #fff; }
[data-pyf-note="1.5"] > .pyf-tripadvisor-note:nth-child(2) { background: linear-gradient(to left, #fff, #fff 45%, #00aa6c 45%, #00aa6c 100%); }

.pyf-destination { display: block; }
.pyf-destination figure { overflow: hidden; position: relative; display: block; border-radius: .25rem; }
.pyf-destination figure img { transition: scale 500ms ease; display: block; }
/*.pyf-destination:hover figure img { scale: 1.1; }*/
.pyf-destination figure figcaption { position: absolute; bottom: 0; left: 0; width: 100%; text-align: right; padding: 1rem; font-weight: bold; color: var(--sl-text-color-light); font-size: 1.8rem; }

h1, h2, h3 { font-family: var(--sl-font-heading); }
h1 { margin-bottom: 2rem; }
h1, h1 * { color: rgb(70, 70, 80) !important; font-weight: 600; line-height: 1; }
h2 { margin-bottom: 2rem; }
h2, h2 * { color: rgb(70, 70, 80) !important; font-weight: 600; }
h3 { font-weight: 500; margin-bottom: 1rem; }

h1 { font-size: clamp(1.75rem, calc(1.375rem + 1.5vw), 2.25rem) !important; }
h2 { font-size: clamp(1.5rem, calc(1.325rem + 0.9vw), 1.75rem) !important; }
h3 { font-size: clamp(1.375rem, calc(1.25rem + 0.6vw), 1.5rem) !important; }
h4 { font-size: clamp(1.25rem, calc(1rem + 0.6vw), 1.375rem) !important; }

p { margin-top: 0; margin-bottom: 1rem; }

.figure-img { border-radius: .25rem; }

.pyf-container { display:flex; }
.pyf-container > .container { margin: 3rem auto; background: #fff; border-radius: .25rem; padding: 3rem; }


.pyf-hotel-description-like { background-color: var(--sl-background-color-light); border-radius: 1rem; padding: 1rem 2rem; align-items: center; margin-bottom: 2rem; }
.pyf-hotel-description-like > .column:first-child { font-size: 1.6rem; text-align: center; font-weight: bold; }
.pyf-hotel-description-like > .column:first-child svg { margin-left: 1rem; color: var(--sl-text-color-primary); }
.pyf-hotel-description-like > .column:last-child ul { font-size: 1.1rem; }
.pyf-hotel-description-like > .column:last-child ul li { margin: .75rem 0; }
.pyf-hotel-description-like > .column:last-child ul li strong { color: var(--sl-text-color-primary); }

@media (max-width: 767px) {
    .pyf-container > .container { margin: 2rem auto; padding: 2rem; }
}

.pyf-hotel-list-destination-title { background: #fff; text-align: center; margin-top: -5rem; padding: 2rem 1rem; border: #ddd solid 1px; border-radius: .25rem; }

.tabs-content { margin-top: 1rem; }
.tabs-nav-item.active { background-color: var(--sl-background-color-primary); color: var(--sl-text-color-white); }
@media (max-width: 767px) {
    .tabs-nav { display: none !important; }
    .tabs-content .tabs-content-panel { display: block !important; }
}

.pyf-payment-method-field .form-field-radio-payment-method-options > .card { border-radius: .25rem !important; }
.pyf-payment-method-field .form-field-radio-payment-method-options > .card .card-header { display: flex !important; align-items: center; justify-content: start; gap: 1rem; }
.pyf-payment-method-field .form-field-radio-payment-method-options .form-field-control-input-radio { margin: 0; width: auto; }
.pyf-payment-method-field .form-field-radio-payment-method-options .custom-control-label { width: 100%; color: var(--sl-text-color-black); }


.searchengine-container .searchengine-form { background-color: var(--sl-background-color-secondary); padding: .5rem; border-radius: 0 0 .5rem .5rem; }
.searchengine-container .searchengine-form .searchengine-form-fields { display: flex; gap: .5rem; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field { width: 27%; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field.searchengine-form-field-destination { width: 30%; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field .form-field { margin: 0; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field .form-field.form-field-custom > .form-field-label { display: none; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field .form-field.form-field-custom .form-field-group-text { height: 100%; border-radius: .5rem 0 0 .5rem; background-color: #fff; font-size: 1.4rem; border: 0; color: rgb(70,70,70); }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field .form-field.form-field-custom > .form-field-group > .form-field-control { padding: 1rem 1rem 1rem 0; border-radius: 0 .5rem .5rem 0; border: 0; outline: 0 !important; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-action { width: 16%; }
.searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-action .btn { width: 100%; padding: 1rem; border-radius: .5rem; }

@media (max-width: 767px) {
    .searchengine-container .searchengine-form .searchengine-form-fields { flex-wrap: wrap; }
    .searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field { width: 100%; }
    .searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-field.searchengine-form-field-destination { width: 100%; }
    .searchengine-container .searchengine-form .searchengine-form-fields .searchengine-form-action { width: 100%; }
}

.searchengine-container.searchengine-container-vertical .searchengine-form .searchengine-form-fields { flex-direction: column; }
.searchengine-container.searchengine-container-vertical .searchengine-form .searchengine-form-fields .searchengine-form-field { width: 100% !important; }
.searchengine-container.searchengine-container-vertical .searchengine-form .searchengine-form-fields .searchengine-form-action { width: 100% !important; }

.ellipsis\:1 { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.ellipsis\:2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.ellipsis\:3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.ellipsis\:4 { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }
.ellipsis\:5 { display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; }

.pyf-hotel-list-destination-title > * { color: rgb(70, 70, 80) !important; }