/* ------------------------------------------------------------------
 * Quartier Libre Collection — Custom CSS (cleaned)
 * Source: inbox/custom_css.txt (raw, colon/slash-stripped paste)
 * Palette derived from reference site: http://34.155.76.172/
 * Removed: all .homepagesearch / SearchBar rules (per client request)
 * ------------------------------------------------------------------ */


/* =============================================================
   1. VARIABLES
============================================================= */

:root {
    --qlc-creme-bg:      #F7F1E6;
    --qlc-creme-2:       #FBF6EC;
    --qlc-surface:       #FFFDF8;
    --qlc-creme-soft:    #F1EADC;
    --qlc-ink:           #2A2521;
    --qlc-olive-dark:    #3F3F30;
    --qlc-accent:        #B05E3B;
    --qlc-accent-hover:  #9A4F30;
    --qlc-text-2:        #564F45;
    --qlc-text-muted:    #6A6358;
    --qlc-text-tertiary: #8A8170;
    --qlc-on-dark:       #F4ECDD;
    --qlc-on-dark-2:     #CFC5B6;
    --qlc-gold:          #D8B48F;
    --qlc-border-1:      #ECE3D2;
    --qlc-border-3:      #E3D9C5;
    --qlc-accent-alpha:  rgba(176, 94, 59, 0.1);
    --qlc-radius-sm:     6px;
    --qlc-radius-md:     10px;
    --qlc-radius-lg:     12px;
    --qlc-radius-xl:     15px;
}


/* =============================================================
   2. BASE UTILITIES
============================================================= */

.uk-scope .hk-grid-small,
.uk-scope .hk-grid-column-small {
    padding-left: 0 !important;
}

.hr-discount-row {
    display: none !important;
}

em {
    color: inherit;
}

.li,
li {
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

.hk-radio:checked {
    background-color: #333 !important;
}

#sticky-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 1;
    visibility: hidden;
}
#sticky-to-top.sticky-to-top {
    visibility: visible;
}

.hk-checkbox:checked {
    background-color: var(--qlc-accent) !important;
}


/* =============================================================
   3. SCROLLBAR
============================================================= */

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: var(--qlc-creme-soft);
    -webkit-border-radius: 0;
}

::-webkit-scrollbar-thumb:vertical {
    background-color: var(--qlc-accent);
    -webkit-border-radius: 0;
}


/* =============================================================
   4. HOMELOCAL BOOKING WIDGET
============================================================= */

.homelocal-booking-widget-body {
    padding: 10px;
    font-size: 0.8rem;
    background: var(--qlc-creme-bg) !important;
}

.homelocal-booking-widget-body .hk-grid.hk-grid-small {
    padding-bottom: 15px;
}

.homelocal-booking-widget-body .hk-grid-small,
.homelocal-booking-widget-body .hk-grid-column-small {
    margin-left: 0;
}

.homelocal-booking-widget .hk-form-label {
    display: none;
}

.guests-row .hk-margin-small {
    margin-top: -11px !important;
}

.guests-row .hk-select {
    border: 1px solid #444;
    border-radius: 0 0 var(--qlc-radius-md) var(--qlc-radius-md) !important;
}

.hk-form-controls input::placeholder,
.hk-form-controls input {
    color: #444 !important;
}

#checkin_placeholder {
    border: 1px solid #444;
    border-radius: var(--qlc-radius-md) 0 0 0;
}
#checkout_placeholder {
    border: 1px solid #444;
    border-left: 0;
    border-radius: 0 var(--qlc-radius-md) 0 0;
}

.homelocal-booking-widget {
    border-radius: var(--qlc-radius-lg) !important;
    overflow: hidden !important;
}

.homelocal-booking-widget-header {
    border-radius: var(--qlc-radius-lg) var(--qlc-radius-lg) 0 0 !important;
}


/* =============================================================
   5. LIGHTBOX & PROPERTY GALLERY
============================================================= */

#property-gallery .el-title {
    padding: 4px;
    font-size: 0.7em;
    letter-spacing: 0.5px;
    font-weight: bold !important;
    text-transform: uppercase !important;
    overflow: hidden;
    max-height: 1.1rem;
    line-height: 1.1rem;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    text-overflow: ellipsis;
    display: block;
}

#property-gallery .uk-inline-clip {
    border-radius: var(--qlc-radius-md) !important;
}

.uk-lightbox-caption {
    background: #333 !important;
    display: flex;
    justify-content: center;
    background: var(--qlc-accent);
}
@media (max-width: 959px) {
    .uk-lightbox-caption {
        background: transparent !important;
    }
}

.uk-lightbox-caption h4 {
    max-width: 1200px;
    font-size: clamp(10px, 1vw, 15px) !important;
}

@media (max-width: 960px) {
    .uk-lightbox-toolbar h4 {
        color: #fff;
        position: relative;
        bottom: 70px;
        background: var(--qlc-accent) !important;
    }
}

.uk-modal-close-full {
    background: transparent;
}

.uk-lightbox-iframe {
    clip-path: inset(0 round var(--qlc-radius-md)) !important;
    border-radius: var(--qlc-radius-md) !important;
    aspect-ratio: 3 / 2 !important;
    width: auto !important;
    max-width: 100%;
}

.uk-lightbox-items-fit {
    max-width: 100vw;
    max-height: 100vh;
    border-radius: var(--qlc-radius-md) !important;
}


/* =============================================================
   6. MODAL — GLOBAL ROUNDED
============================================================= */

.el-modal-header,
.hk-modal-header {
    border-radius: var(--qlc-radius-lg) var(--qlc-radius-lg) 0 0 !important;
}

.el-modal-footer,
.hk-modal-footer {
    border-radius: 0 0 var(--qlc-radius-lg) var(--qlc-radius-lg) !important;
}

.hk-modal-dialog {
    border-radius: var(--qlc-radius-lg) !important;
}


/* =============================================================
   7. EXPLORER — PROPERTY CARDS
============================================================= */

.hfse-properties {
    justify-content: space-between;
}

.hfse-property-card {
    border-radius: var(--qlc-radius-xl) !important;
}

.hfse-property-slideshow-item {
    border-radius: var(--qlc-radius-xl) var(--qlc-radius-xl) 0 0 !important;
}

.hfse-property-card .hk-card-body {
    padding-bottom: 0 !important;
}

.hfse-property-container .hk-card,
.hfse-property-container:hover .hfse-property-container .hk-card {
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px !important;
}

.hfse-property-title {
    margin-bottom: 0;
    font-size: 21px !important;
    margin-top: 0.8rem;
}

.hfse-property-body {
    padding-top: 10px !important;
}

.hfse-property-meta {
    position: relative;
}

.hfse-property-meta-primary {
    display: flex;
    flex-direction: row;
    margin-top: 5px !important;
    justify-content: space-between;
    margin-bottom: 20px;
}

.hfse-property-meta-primary .hfse-property-locations {
    background-image: none !important;
    padding-left: 0 !important;
}

.hfse-property-meta-secondary {
    width: 120px;
    border-top: none;
    margin-top: 5px !important;
    padding-top: 0 !important;
}

.hfse-property-meta-secondary .hfse-property-guests,
.hfse-property-meta-secondary .hfse-property-bedrooms,
.hfse-property-meta-secondary .hfse-property-bathrooms {
    background-size: 15px !important;
    padding: 4px 0 4px 18px !important;
}

.hfse-property-guests,
.hfse-property-bedrooms,
.hfse-property-bathrooms {
    font-size: 13px !important;
}

.hfse-property-locations {
    display: none;
    color: var(--qlc-accent) !important;
}

.hfse-property-types {
    background-image: none !important;
    padding-left: 0 !important;
}

/* Price container — vertical stack, right-aligned */
.hfse-property-price-container {
    min-width: 150px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
    position: absolute;
    bottom: 20px;
    right: 20px;
    text-align: right;
    font-size: 16px;
    z-index: 10;
    padding: 0;
    margin: 0;
    line-height: 1.4;
}

/* Flexbox order: nightly → total → tax note */
.hfse-property-price {
    order: 1;
    font-weight: bold;
    font-size: 16px;
    color: var(--qlc-accent) !important;
}
.hfse-property-price-total {
    order: 2;
    font-size: 16px;
}
.hfse-property-tax-note {
    display: none;
}
.hfse-property-price-sep {
    display: none !important;
}
.hfse-property-price-total,
.hfse-property-price {
    text-align: right !important;
    width: 100%;
}

/* Legacy price override — kept below the ordering block */
.hfse-property-price {
    color: var(--qlc-text-muted) !important;
    font-weight: 400 !important;
}
.hfse-property-price strong {
    font-weight: 400 !important;
    color: var(--qlc-accent) !important;
}

.hk-slideshow-items {
    border-radius: var(--qlc-radius-xl) var(--qlc-radius-xl) 0 0 !important;
}


/* =============================================================
   8. EXPLORER — SEARCH FORM
============================================================= */

.hfse-body,
.hfse-form-map-toggle-btn {
    background: transparent !important;
}

@media (max-width: 960px) {
    .hfse-body {
        margin-top: 10px;
    }
}

.hfse-filters {
    margin-bottom: 0 !important;
}

.hfse-form-zone-city .subheading {
    display: none;
}

.hfse-form-zone-label-cities {
    display: none;
}

.hfse-form-zone-input {
    background: #fff;
    border: 1px solid #000;
    border-radius: 50px;
}

.hfse-form-zone-btn {
    border: none;
}

.hfse-form-zone-btn:hover {
    background: var(--qlc-creme-soft);
    border: none;
}

.hfse-form-zone-options-trigger,
.hfse-form-date-input,
.hfse-form-guests-value,
.hfse-form-reset-btn {
    background: var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
    border: none !important;
}

.hfse-form-guests-icon,
.hfse-form-date-icon,
.hfse-form-zone-icon {
    padding-left: 5px !important;
    color: #333 !important;
}

.hfse-form-zone-options-trigger::placeholder,
.hfse-form-date-input::placeholder {
    color: #000 !important;
    padding-left: 5px !important;
    font-size: 14px !important;
}

.hfse-form-additional-filters-btn {
    background: var(--qlc-ink) !important;
    border-radius: var(--qlc-radius-md) !important;
    text-transform: none !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

.hfse-form-reset-btn {
    background: var(--qlc-ink) !important;
    color: #fff !important;
}

.hfse-form-reset-btn,
.hfse-form-map-toggle-btn-text {
    text-transform: none !important;
    font-weight: 400 !important;
    font-size: 14px !important;
}

.hfse-modal-reset-button {
    text-transform: none !important;
    font-weight: 400 !important;
}

.hfse-form-guests-options .hk-modal-body.hk-flex:nth-child(2) {
    display: none;
}

/* Hide all field labels matching hfse-form-*-field-label */
[class^="hfse-form-"][class$="-field-label"] {
    display: none !important;
}

#hfse-form-zone-modal-1 .hk-modal-header .hk-h4 {
    font-size: 0;
    white-space: nowrap;
}
#hfse-form-zone-modal-1 .hk-modal-header .hk-h4::after {
    content: "Location";
    position: relative;
    bottom: -5px;
    font-size: 1.24rem;
    margin-left: 3px;
}


/* =============================================================
   9. EXPLORER — MAP TOOLTIP
============================================================= */

.hfse-map-tooltip-content:hover .hfse-property-title,
.hfse-map-tooltip-content:hover .hfse-property-infowindow-price,
.hfse-map-tooltip-content:hover .hk-last-column {
    color: #333 !important;
}

.hfse-map-tooltip-content .hfse-property-infowindow-price strong {
    color: var(--qlc-accent) !important;
}

.hfse-map-tooltip-content {
    border-radius: var(--qlc-radius-lg) !important;
    overflow: hidden !important;
}

.hfse-form-map-toggle-btn {
    border-radius: var(--qlc-radius-md) !important;
}

.hfse-map-cluster {
    border-radius: 50% !important;
}


/* =============================================================
   10. BUTTONS
============================================================= */

.hk-button-primary {
    background-color: var(--qlc-accent) !important;
    color: #fff !important;
    text-transform: none !important;
    border-radius: var(--qlc-radius-md) !important;
    border: none !important;
    font-weight: 700 !important;
    font-family: 'Hanken Grotesk' !important;
}
.hk-button-primary:hover {
    background-color: var(--qlc-accent-hover) !important;
    color: #fff !important;
}

.hk-button-default {
    border-radius: var(--qlc-radius-md) !important;
    background: var(--qlc-accent) !important;
    color: #fff !important;
    text-transform: none !important;
    font-size: 16px !important;
}
.hk-button-default:hover {
    background: var(--qlc-accent-hover) !important;
    border: none !important;
}

.hk-button-text {
    text-transform: capitalize !important;
    font-size: 18px !important;
}

.hk-button-link {
    text-transform: capitalize !important;
    letter-spacing: 0;
    font-size: 18px !important;
}

.hk-alert-warning {
    color: var(--qlc-accent) !important;
}

.hk-alert-warning,
.hk-alert-success,
.hk-alert-danger {
    border-radius: var(--qlc-radius-md) !important;
}

.uk-article-title {
    font-weight: 400;
    letter-spacing: 1px;
}

.rent-amount {
    font-size: 1.2rem;
    font-weight: bold;
}

.increase-btn,
.reduce-btn {
    background: var(--qlc-accent) !important;
    border-radius: var(--qlc-radius-sm) !important;
}


/* =============================================================
   11. BOOKING WIDGET — STICKY & CHECKOUT
============================================================= */

.homehost-booking-widget-sticky-container {
    padding: 5px 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.homehost-booking-widget-sticky-price-container {
    font-size: clamp(18px, 2.6vw, 32px);
}

.homehost-booking-widget-sticky-price-container a {
    font-size: clamp(14px, 2.6vw, 18px);
}

.homehost-booking-widget-sticky-button {
    font-size: clamp(14px, 2.6vw, 18px);
}

.homelocal-sticky-booking-widget {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}

.homelocal-sticky-booking-widget .hk-button.modal-button {
    background-color: var(--qlc-accent) !important;
    background-image: none !important;
    text-transform: none;
    border-radius: var(--qlc-radius-md);
}
.homelocal-sticky-booking-widget .hk-button.modal-button:hover {
    background-color: var(--qlc-accent-hover) !important;
}

.homelocal-sticky-booking-widget .price-container {
    color: #fff !important;
    font-weight: 500 !important;
}

.homelocal-sticky-booking-widget-container {
    background: var(--qlc-accent) !important;
}

@media (max-width: 960px) {
    .js-sticky {
        display: none;
    }
}
@media (max-width: 640px) {
    .homelocal-sticky-booking-widget .rent-unit {
        font-size: 14px;
    }
}

.homelocal-booking-widget .checkout-button {
    background: var(--qlc-accent) !important;
    color: #fff !important;
    border-radius: var(--qlc-radius-md) !important;
    font-size: 16px !important;
    text-transform: none !important;
}
.homelocal-booking-widget .checkout-button:hover {
    background: var(--qlc-accent-hover) !important;
}

.homelocal-checkout-button {
    font-size: 18px !important;
    border-radius: var(--qlc-radius-md) !important;
}

.homelocal-checkout-summary,
.homelocal-checkout-form {
    border-radius: var(--qlc-radius-lg) !important;
}

.calendar-table .price {
    display: none !important;
}

.calendar-heading {
    font-weight: 500 !important;
}

.calendar-picker .date.selected,
.calendar-picker .date.checkin-date,
.calendar-picker .date.checkout-date {
    border-radius: 50% !important;
}

.calendar-picker .prev-btn,
.calendar-picker .next-btn {
    border-radius: 8px !important;
}


/* =============================================================
   12. GRAVITY FORMS — GLOBAL
============================================================= */

.gform_required_legend,
.gform_fileupload_rules {
    display: none !important;
}

.gfield_label {
    font-weight: 400 !important;
}

.gfield_required,
.gfield_required_asterisk {
    color: var(--qlc-accent) !important;
}

.gform_button {
    width: 200px !important;
    border-radius: var(--qlc-radius-md) !important;
    text-transform: none !important;
    background: var(--qlc-accent) !important;
    color: #fff;
    border: none !important;
    font-size: 16px !important;
    margin: 0 auto !important;
}
.gform_button:hover {
    cursor: pointer;
    background: var(--qlc-accent-hover) !important;
    color: #fff !important;
    border: none;
    box-shadow: 0 10px 20px 0 rgba(0, 0, 0, 0.1);
}

.gform_body input,
.gform_body textarea {
    border: none !important;
    border-radius: var(--qlc-radius-md) !important;
    background: var(--qlc-creme-soft) !important;
}

.ginput_container_fileupload .uk-input {
    background: transparent !important;
}

.gform_body select {
    padding: 15px !important;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%23333' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6l4 4 4-4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 1em center;
    background-size: 1em;
    padding-right: 2.5em;
    background-color: var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
    border: none !important;
}

.gform_body input:focus,
.gform_body textarea:focus {
    border: 1px solid var(--qlc-accent) !important;
}

.gform_body input[type="file"] {
    border: none !important;
}

.gform_footer {
    padding-bottom: 0 !important;
}

.instruction {
    display: none;
}

.gform_body input::placeholder,
.gform_body textarea::placeholder {
    color: #000;
}

.gform_body .gfield_select {
    outline: none !important;
}


/* =============================================================
   13. GRAVITY FORMS — CONTACT FORM #8
============================================================= */

.gform_wrapper {
    max-width: 100% !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.gform_wrapper .gform_heading,
.gform_wrapper.gform_required_legend {
    display: none !important;
}

.gform_wrapper .gfield {
    margin-bottom: 14px !important;
}

.gform_wrapper .gfield_label {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: #333 !important;
    margin-bottom: 8px !important;
}

.gform_wrapper .gfield_required_asterisk {
    color: var(--qlc-gold) !important;
}

.gform_wrapper .uk-input,
.gform_wrapper .uk-textarea,
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper textarea {
    width: 100% !important;
    background: var(--qlc-creme-soft) !important;
    border: 1px solid var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    color: #333 !important;
    height: auto !important;
    transition: all 0.3s ease !important;
    outline: none !important;
}

.gform_wrapper input:focus,
.gform_wrapper textarea:focus {
    border-color: var(--qlc-accent) !important;
    box-shadow: 0 0 0 3px var(--qlc-accent-alpha) !important;
}

.gform_wrapper input::placeholder,
.gform_wrapper textarea::placeholder {
    color: #bbb !important;
    font-weight: 300 !important;
}

.gform_wrapper textarea {
    min-height: 80px !important;
    max-height: 100px !important;
    resize: vertical !important;
}

.gform_wrapper .gfield_select {
    width: 100% !important;
    background: #fff !important;
    border: 1px solid var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 12px 16px !important;
    font-size: 14px !important;
    color: #333 !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%239C8C5A' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6l4 4 4-4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 1em center !important;
    background-size: 1em !important;
    padding-right: 2.5em !important;
    outline: none !important;
    transition: all 0.3s ease !important;
}

.gform_wrapper .gfield_select:focus {
    border-color: var(--qlc-accent) !important;
    box-shadow: 0 0 0 3px var(--qlc-accent-alpha) !important;
}

.gform_wrapper .gform_footer {
    padding-bottom: 0 !important;
    margin-top: 0.5rem !important;
}

.gform_wrapper .gform_button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    background: var(--qlc-accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 16px 40px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0.06em !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    width: auto !important;
    white-space: nowrap !important;
}

.gform_wrapper .gform_button:hover {
    background: var(--qlc-accent-hover) !important;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.12) !important;
}

.gform_wrapper .gfield_error input,
.gform_wrapper .gfield_error textarea,
.gform_wrapper .gfield_error select {
    border-color: var(--qlc-gold) !important;
}

.gform_wrapper .validation_message {
    color: var(--qlc-gold) !important;
    font-size: 12px !important;
    margin-top: 6px !important;
}

/* Explicit body-scoped overrides to beat theme cascade */
body .gform_wrapper .gform_body input,
body .gform_wrapper .gform_body textarea {
    background: var(--qlc-creme-soft) !important;
    border: 1px solid var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
}
body .gform_wrapper .gform_body input:focus,
body .gform_wrapper .gform_body textarea:focus {
    border-color: var(--qlc-accent) !important;
}
body .gform_wrapper .gform_button {
    background: var(--qlc-accent) !important;
    border-radius: var(--qlc-radius-md) !important;
}
body .gform_wrapper .gform_button:hover {
    background: var(--qlc-accent-hover) !important;
}


/* =============================================================
   14. GRAVITY FORMS — MANAGEMENT #1 + #8
============================================================= */

.management-form {
    background: #fff;
    padding: 36px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.08);
    border-radius: var(--qlc-radius-lg);
}

.management-form .gfield {
    margin-bottom: 10px !important;
}

.management-form .gfield_label {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #666 !important;
}

.management-form .gfield_required_asterisk {
    color: var(--qlc-accent) !important;
}

.management-form #gform_fields_1 input[type="text"],
.management-form #gform_fields_1 input[type="email"],
.management-form #gform_fields_1 input[type="tel"],
.management-form #gform_fields_1 input[type="number"],
.management-form #gform_fields_1 textarea,
.management-form #gform_fields_8 input[type="text"],
.management-form #gform_fields_8 input[type="email"],
.management-form #gform_fields_8 input[type="tel"],
.management-form #gform_fields_8 input[type="number"],
.management-form #gform_fields_8 textarea {
    background: #f5f5f5 !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
    height: 40px !important;
}

.management-form #gform_fields_1 textarea,
.management-form #gform_fields_8 textarea {
    height: auto !important;
    min-height: 60px !important;
    max-height: 80px !important;
}

.management-form #gform_fields_1 input:focus,
.management-form #gform_fields_1 textarea:focus,
.management-form #gform_fields_8 input:focus,
.management-form #gform_fields_8 textarea:focus {
    border-color: var(--qlc-accent) !important;
    box-shadow: 0 0 0 2px rgba(176, 94, 59, 0.12) !important;
}

.management-form .gform_footer {
    margin-top: 10px !important;
    padding-bottom: 0 !important;
}

.management-form #gform_submit_button_1,
.management-form #gform_submit_button_8 {
    width: 100% !important;
    background: var(--qlc-accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 12px !important;
    height: 44px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
}
.management-form #gform_submit_button_1:hover,
.management-form #gform_submit_button_8:hover {
    background: var(--qlc-accent-hover) !important;
}


/* =============================================================
   15. GTRANSLATE — DROPDOWN SWITCHER
============================================================= */

.gt_float_switcher,
.gt_float_switcher .gt-selected {
    background-color: transparent !important;
}

.gt_float_switcher {
    box-shadow: none !important;
    font-size: 20px;
    border-radius: 0;
    color: #555;
    display: inline-block;
    line-height: 20px;
    background: transparent;
    overflow: hidden;
    transition: all 0.2s cubic-bezier(0.4, 0, 1, 1);
}

.gt_float_switcher img {
    width: 20px !important;
}

.gt-lang-code {
    display: none;
    font-size: 14px;
}

.nturl {
    font-size: 14px;
}
.nturl:hover {
    background: var(--qlc-creme-bg) !important;
    color: #333 !important;
}

.gt-current-lang {
    padding: 5px 10px !important;
    display: flex;
    gap: 5px;
}

.gt_float_switcher-arrow {
    background-image: url("data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNicgaGVpZ2h0PScxNicgdmlld0JveD0nMCAwIDI4NSAyODUnPjxwYXRoIGQ9J00yODIgNzYuNWwtMTQuMi0xNC4zYTkgOSAwIDAgMC0xMy4xIDBMMTQyLjUgMTc0LjQgMzAuMyA2Mi4yYTkgOSAwIDAgMC0xMy4yIDBMMyA3Ni41YTkgOSAwIDAgMCAwIDEzLjFsMTMzIDEzM2E5IDkgMCAwIDAgMTMuMSAwbDEzMy0xMzNhOSA5IDAgMCAwIDAtMTN6JyBzdHlsZT0nZmlsbDojZmZmJyB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgMTQyLjUgMTQyLjUpJy8+PC9zdmc+") !important;
}
.uk-offcanvas-bar .gt_float_switcher-arrow,
.uk-navbar-sticky .gt_float_switcher-arrow {
    background-image: url("data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNicgaGVpZ2h0PScxNicgdmlld0JveD0nMCAwIDI4NSAyODUnPjxwYXRoIGQ9J00yODIgNzYuNWwtMTQuMi0xNC4zYTkgOSAwIDAgMC0xMy4xIDBMMTQyLjUgMTc0LjQgMzAuMyA2Mi4yYTkgOSAwIDAgMC0xMy4yIDBMMyA3Ni41YTkgOSAwIDAgMCAwIDEzLjFsMTMzIDEzM2E5IDkgMCAwIDAgMTMuMSAwbDEzMy0xMzNhOSA5IDAgMCAwIDAtMTN6JyBzdHlsZT0nZmlsbDojMDAwJyB0cmFuc2Zvcm09J3JvdGF0ZSgxODAgMTQyLjUgMTQyLjUpJy8+PC9zdmc+") !important;
}

#gt_float_wrapper {
    position: relative;
    bottom: -4px;
}

.gt_float_switcher .gt_options {
    position: absolute !important;
    max-width: none !important;
    background-color: #fff;
    width: 120px;
    z-index: 9999;
    border-radius: var(--qlc-radius-md);
    top: 37px;
}
.gtranslate-top .gt_float_switcher .gt_options {
    width: 200px;
    top: 60px;
}
.gtranslate-mobile .gt_float_switcher .gt_options {
    width: 120px;
    top: 40px;
    left: calc(50% - 60px);
}
.footer-language-switcher .gt_float_switcher .gt_options,
.footer-language-switcher .gtranslate-top .gt_float_switcher .gt_options {
    position: absolute !important;
    bottom: 100%;
    top: auto !important;
    border-radius: var(--qlc-radius-md);
}


/* =============================================================
   16. COMPARISON LIST & SCROLL ICON
============================================================= */

.list-disabled .el-item:first-child {
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    padding-top: 4px;
    margin-top: 5px;
}

.list-disabled .el-content,
.list-disabled .el-image svg {
    opacity: 0.35;
}

.list-disabled {
    margin-top: -1px !important;
}

.icon-scroll {
    width: 40px;
    height: 70px;
    margin-left: -20px;
    margin-top: -35px;
    -webkit-animation-duration: 1.5s;
            animation-duration: 1.5s;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-name: scroll;
            animation-name: scroll;
}

@-webkit-keyframes scroll {
    0%   { opacity: 1; }
    100% {
        opacity: 0;
        -webkit-transform: translateY(46px);
                transform: translateY(46px);
    }
}
@keyframes scroll {
    0%   { opacity: 1; }
    100% {
        opacity: 0;
        -webkit-transform: translateY(46px);
                transform: translateY(46px);
    }
}

@keyframes move {
    25%  { opacity: 1; }
    33%  { opacity: 1; transform: translateY(30px); }
    67%  { opacity: 1; transform: translateY(40px); }
    100% { opacity: 0; transform: translateY(55px) scale3d(0.5, 0.5, 0.5); }
}


/* =============================================================
   17. MODAL — LOCATION
============================================================= */

.hk-modal-dialog {
    border-radius: var(--qlc-radius-lg) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12) !important;
}

.hk-modal-dialog .hk-modal-header {
    border-bottom: 1px solid var(--qlc-creme-soft) !important;
    padding: 1.25rem 1.5rem !important;
    background: #fff !important;
    border-radius: var(--qlc-radius-lg) var(--qlc-radius-lg) 0 0 !important;
}
.hk-modal-dialog .hk-modal-header .hk-h4 {
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: #333 !important;
    display: flex !important;
    align-items: center !important;
}
.hk-modal-dialog .hk-modal-header .hk-icon svg {
    stroke: var(--qlc-accent) !important;
    color: var(--qlc-accent) !important;
}

.hk-modal-dialog .hk-modal-close-default {
    transition: opacity 0.3s ease !important;
}
.hk-modal-dialog .hk-modal-close-default:hover {
    opacity: 0.5 !important;
}

.hk-modal-dialog .hk-modal-body {
    padding: 1.5rem !important;
    background: #fff !important;
}

.hfse-form-zone-label {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--qlc-accent) !important;
    margin-bottom: 0.75rem !important;
    padding-bottom: 0.5rem !important;
}

.hfse-form-zone-label-cities {
    margin-top: 1.5rem !important;
    padding-top: 1.5rem !important;
    border-top: 1px solid var(--qlc-creme-soft) !important;
}

.hfse-form-zone-location {
    border: 1px solid var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 0.6rem 1rem !important;
    background: var(--qlc-creme-bg) !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
}
.hfse-form-zone-location:hover {
    border-color: var(--qlc-accent) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
}
.hfse-form-zone-location .image img {
    border-radius: 8px !important;
}
.hfse-form-zone-location .name {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333 !important;
}

.hfse-form-zone-city {
    border: 1px solid transparent !important;
    border-radius: var(--qlc-radius-md) !important;
    background: var(--qlc-creme-bg) !important;
    padding: 0.75rem 1rem !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
}
.hfse-form-zone-city:hover {
    border-color: var(--qlc-accent) !important;
    background: #fff !important;
}
.hfse-form-zone-city .name {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #333 !important;
}
.hfse-form-zone-city .subheading {
    font-size: 12px !important;
    color: #999 !important;
    margin-top: 2px !important;
}

.hk-modal-dialog .hk-modal-footer {
    border-top: 1px solid var(--qlc-creme-soft) !important;
    padding: 1rem 1.5rem !important;
    background: #fff !important;
    border-radius: 0 0 var(--qlc-radius-lg) var(--qlc-radius-lg) !important;
}

/* Remove duplicate LOCATION label */
.hk-modal-dialog .hk-modal-header .hk-h4::after {
    display: none !important;
}


/* =============================================================
   18. MODAL — GUESTS
============================================================= */

.hk-modal-dialog {
    min-width: 420px !important;
}

.hfse-number-with-control {
    display: flex !important;
    align-items: center !important;
    border: 1px solid var(--qlc-creme-soft) !important;
    border-radius: var(--qlc-radius-md) !important;
    overflow: hidden !important;
}

.hfse-number-with-control .reduce-btn,
.hfse-number-with-control .increase-btn {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--qlc-creme-bg) !important;
    color: #333 !important;
    font-size: 15px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    border: none !important;
    border-radius: 0 !important;
}
.hfse-number-with-control .reduce-btn:hover,
.hfse-number-with-control .increase-btn:hover {
    background: var(--qlc-accent) !important;
    color: #fff !important;
}

.hfse-number-with-control .number-input {
    width: 34px !important;
    text-align: center !important;
    border: none !important;
    border-left: 1px solid var(--qlc-creme-soft) !important;
    border-right: 1px solid var(--qlc-creme-soft) !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #333 !important;
    background: #fff !important;
    padding: 0 !important;
    height: 32px !important;
}

.hk-modal-dialog .hk-modal-body .hk-grid-small {
    gap: 1rem !important;
}
.hk-modal-dialog .hk-modal-body .hk-grid-small label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    font-size: 14px !important;
    color: #333 !important;
    cursor: pointer !important;
}

.hk-modal-dialog .hk-radio {
    width: 16px !important;
    height: 16px !important;
    border: 1px solid var(--qlc-creme-soft) !important;
    border-radius: 50% !important;
    transition: all 0.2s ease !important;
}
.hk-modal-dialog .hk-radio:checked {
    background-color: var(--qlc-accent) !important;
    border-color: var(--qlc-accent) !important;
}

.hk-modal-dialog .hk-modal-footer .hfse-modal-next-button {
    font-size: 12px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0.06em !important;
    background: var(--qlc-accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: var(--qlc-radius-md) !important;
    padding: 8px 22px !important;
    transition: all 0.3s ease !important;
}
.hk-modal-dialog .hk-modal-footer .hfse-modal-next-button:hover {
    background: var(--qlc-accent-hover) !important;
}

.hk-modal-body .reduce-btn:hover,
.hk-modal-body .increase-btn:hover {
    background: var(--qlc-accent) !important;
}


/* =============================================================
   19. MODAL — FILTERS
============================================================= */

/* Features & Amenities — 2-column grid */
.filter-features.hk-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 0 2rem !important;
    margin-left: 0 !important;
    padding: 0 0.5rem !important;
    width: 100% !important;
    max-width: 100% !important;
}
.filter-features.hk-grid > * {
    padding-left: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

.filter-feature label,
.filter-type label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 14px !important;
    color: #333 !important;
    padding: 6px 0 !important;
    cursor: pointer !important;
}

.filter-feature .hk-checkbox,
.filter-type .hk-checkbox {
    width: 18px !important;
    height: 18px !important;
    border: 1px solid var(--qlc-accent) !important;
    border-radius: 4px !important;
    flex-shrink: 0 !important;
    transition: all 0.2s ease !important;
}
.filter-feature .hk-checkbox:checked,
.filter-type .hk-checkbox:checked {
    background-color: var(--qlc-accent) !important;
    border-color: var(--qlc-accent) !important;
}

/* Section labels */
.filter-groups-label,
.hfse-form-additional-filters .hk-modal-body .hk-text-meta,
.hfse-form-guests-options .hk-modal-body .hk-text-meta {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--qlc-accent) !important;
}
.filter-groups-label,
.hfse-form-additional-filters .hk-modal-body .hk-text-meta {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
}

.hk-width-1-1 > .hk-h6.hk-margin-remove-vertical {
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--qlc-accent) !important;
}

/* Filter icon */
.hk-modal-dialog .hk-modal-header .hk-icon[hk-icon="settings"] svg,
.hk-modal-dialog .hk-modal-header .hk-icon[hk-icon="table"] svg {
    stroke: var(--qlc-accent) !important;
    color: var(--qlc-accent) !important;
    fill: var(--qlc-accent) !important;
}

/* Desktop layout: Bedrooms/Bathrooms + Types of Place */
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-1-3"],
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] {
    width: 100% !important;
    flex: 0 0 100% !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"]::before {
    display: none !important;
    content: none !important;
}

/* Bedrooms + Bathrooms — centered horizontally */
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-1-3"] > .hk-child-width-1-2 {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: 3rem !important;
    margin-bottom: 2rem !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-1-3"] > .hk-child-width-1-2 > * {
    width: auto !important;
    flex: 0 0 auto !important;
    padding-left: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-1-3"] .hk-h6 label {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--qlc-accent) !important;
}

/* Types of Place — top divider */
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] {
    border-top: 1px solid var(--qlc-creme-soft) !important;
    padding-top: 1.25rem !important;
    margin-top: 0.5rem !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] > .hk-h6 {
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--qlc-accent) !important;
    margin-bottom: 0.75rem !important;
    text-align: center !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] hr {
    display: none !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] .hk-position-relative:first-of-type {
    display: none !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] .hk-position-relative {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 0 !important;
}

/* Checkboxes — 2 per row grid */
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] .hk-grid-match {
    display: grid !important;
    grid-template-columns: auto auto !important;
    gap: 0.5rem 5rem !important;
    margin-left: 0 !important;
    justify-content: center !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] .filter-type {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.hfse-form-additional-filters .hk-grid-divider {
    border-color: var(--qlc-creme-soft) !important;
}

/* Price Range slider — centered */
.hfse-form-price-slider-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 320px !important;
    text-align: center !important;
}
.hfse-form-price-slider-container .hk-panel {
    width: 100% !important;
    max-width: 280px !important;
}
.hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-1-2"]:has(.hfse-form-price-slider-container) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.hfse-all-amenities-btn-container {
    text-align: center !important;
    grid-column: 1 / -1 !important;
}


/* =============================================================
   20. MOBILE — MODAL & CALENDAR
============================================================= */

@media (min-width: 640px) {
    .hk-modal-dialog {
        min-width: 420px !important;
    }
}

@media (max-width: 639px) {
    .hk-modal-dialog {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        border-radius: 16px 16px 0 0 !important;
    }
    .hk-modal-dialog .hk-modal-header {
        padding: 1rem !important;
        border-radius: 16px 16px 0 0 !important;
    }
    .hk-modal-dialog .hk-modal-body {
        padding: 1rem !important;
        overflow-x: hidden !important;
    }
    .hk-modal-dialog .hk-modal-footer {
        padding: 0.75rem 1rem !important;
        border-radius: 0 !important;
    }

    /* Location — cities single column */
    .hfse-form-zone-subfield-cities {
        display: flex !important;
        flex-direction: column !important;
    }

    /* Filters — nuclear grid reset */
    .hfse-form-additional-filters .hk-grid,
    .hfse-form-additional-filters .hk-grid-divider {
        margin-left: 0 !important;
    }
    .hfse-form-additional-filters .hk-grid > *,
    .hfse-form-additional-filters .hk-grid-divider > * {
        padding-left: 0 !important;
        margin-left: 0 !important;
        border-left: none !important;
        border-right: none !important;
    }
    .hfse-form-additional-filters .hk-grid-divider > *::before {
        display: none !important;
        content: none !important;
    }

    /* All width columns → full width stacked */
    .hfse-form-additional-filters [class*="hk-width"] {
        width: 100% !important;
        flex: 0 0 100% !important;
    }

    /* Bedrooms + Bathrooms side-by-side, centered */
    .hfse-form-additional-filters .hk-child-width-1-2 {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        gap: 2rem !important;
        margin-bottom: 1.5rem !important;
    }
    .hfse-form-additional-filters .hk-child-width-1-2 > * {
        width: auto !important;
        flex: 0 0 auto !important;
        padding-left: 0 !important;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    .hfse-form-additional-filters .hfse-number-with-control {
        display: inline-flex !important;
    }

    .hfse-form-additional-filters .hk-width-xlarge {
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Types of Place — tighter spacing */
    .hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] .hk-position-relative {
        margin-top: 0.5rem !important;
        margin-bottom: 0 !important;
    }
    .hfse-form-additional-filters .hk-grid-divider > [class*="hk-width-2-3"] .hk-grid-match {
        grid-template-columns: 1fr 1fr !important;
        justify-content: start !important;
    }
    .hfse-form-additional-filters .filter-type {
        width: 100% !important;
        flex: 0 0 100% !important;
    }

    /* Section labels — center-aligned */
    .hfse-form-additional-filters .filter-groups-label,
    .hfse-form-additional-filters .hk-text-meta {
        text-align: center !important;
    }

    /* Amenities — single column */
    .hfse-form-additional-filters .filter-features.hk-grid {
        flex-direction: column !important;
    }
    .hfse-form-additional-filters .filter-features.hk-grid > * {
        width: 100% !important;
    }

    /* Calendar — kill TinySlider on mobile */
    .homelocal-range-calendar,
    .calendar-picker .tns-outer,
    .calendar-picker .tns-ovh,
    .calendar-picker .tns-inner,
    .calendar-picker .tns-slider,
    .calendar-picker .tns-slider.tns-carousel,
    #tns1-ow, #tns1-mw, #tns1-iw, #tns1 {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        transform: none !important;
        transition: none !important;
    }

    .calendar-picker .calendar.tns-item,
    #tns1 > .calendar.tns-item,
    #tns1 > .tns-item {
        display: none !important;
        width: 100% !important;
        float: none !important;
    }
    .calendar-picker .calendar.tns-item.tns-slide-active,
    #tns1 > .calendar.tns-item.tns-slide-active,
    #tns1 > .tns-item.tns-slide-active {
        display: block !important;
        width: 100% !important;
    }

    .calendar-picker .calendar-table {
        width: 100% !important;
        display: block !important;
    }

    .calendar-picker .week,
    .calendar-picker .week-days {
        display: grid !important;
        grid-template-columns: repeat(7, 1fr) !important;
        width: 100% !important;
        gap: 0 !important;
    }

    .calendar-picker .day,
    .calendar-picker .day-of-month,
    .calendar-picker .day-placeholder {
        height: 40px !important;
        line-height: 40px !important;
        padding: 0 !important;
        width: auto !important;
        min-width: 0 !important;
        float: none !important;
        text-align: center !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .calendar-picker .date,
    .calendar-picker .day .date,
    .calendar-picker .day-of-month .date {
        height: 36px !important;
        width: 36px !important;
        min-width: 36px !important;
        max-width: 36px !important;
        line-height: 36px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 13px !important;
    }

    .calendar-picker .day-name {
        height: auto !important;
        line-height: normal !important;
        font-size: 11px !important;
        text-align: center !important;
        min-width: 0 !important;
        width: auto !important;
    }

    .calendar-picker .calendar-heading {
        text-align: center !important;
        font-size: 14px !important;
    }

    .calendar-picker .prev-btn,
    .calendar-picker .next-btn {
        width: 28px !important;
        height: 28px !important;
    }
}


/* =============================================================
   21. MOBILE — STICKY BOOKING BAR
============================================================= */

.homelocal-sticky-booking-widget-container.uk-card {
    background: #fff !important;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1) !important;
    border-top: 1px solid var(--qlc-creme-soft) !important;
    padding: 0 !important;
    border-radius: 16px 16px 0 0 !important;
}

.homelocal-sticky-booking-widget {
    padding: 14px 20px !important;
    gap: 12px !important;
}

.homelocal-sticky-booking-widget .price-container {
    color: #333 !important;
}

.homelocal-sticky-booking-widget .rent-unit {
    font-size: 11px !important;
    color: #999 !important;
    white-space: nowrap !important;
}

.homelocal-sticky-booking-widget .rent-amount {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #333 !important;
}

.homelocal-sticky-booking-widget .modal-button {
    background: var(--qlc-accent) !important;
    color: #fff !important;
    border-radius: var(--qlc-radius-md) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0.05em !important;
    padding: 10px 20px !important;
    white-space: nowrap !important;
}


/* =============================================================
   22. DIVIDER ICON
============================================================= */

.uk-divider-icon {
    background-image: url("/wp-content/uploads/qlc-favicon.png");
    background-size: 21px 21px;
}
.uk-divider-icon::before,
.uk-divider-icon::after {
    border-bottom: 1px solid var(--qlc-accent);
}


/* =============================================================
   23. ROUNDED CATCH-ALL
============================================================= */

.hfse-form-primary-fields {
    border-radius: var(--qlc-radius-lg) !important;
}

.hfse-property-amenity-badge {
    border-radius: var(--qlc-radius-sm) !important;
}

.hfse-load-more-btn {
    border-radius: var(--qlc-radius-md) !important;
}

.hfse-ai-search-input {
    border-radius: var(--qlc-radius-lg) !important;
}

.uk-offcanvas-bar {
    border-radius: 0 16px 16px 0 !important;
}

.uk-scope .uk-input,
.uk-scope .uk-textarea,
.uk-scope .uk-select {
    border-radius: var(--qlc-radius-md) !important;
}

.uk-scope .hk-button,
.uk-scope .uk-button {
    border-radius: var(--qlc-radius-md) !important;
}

.uk-scope .hk-card {
    border-radius: var(--qlc-radius-xl) !important;
}

.uk-scope .hk-dropdown,
.uk-scope .uk-dropdown {
    border-radius: var(--qlc-radius-lg) !important;
}


/* =============================================================
   24. GTRANSLATE — INLINE FLAT SWITCHER
============================================================= */

/* Flat inline links variant (used in navbar): FR EN ES IT DE PT JA ZH */

.widget_gtranslate .gtranslate_wrapper {
    display: inline-flex !important;
    flex-wrap: nowrap;
    align-items: baseline;
    gap: 0.65rem;
    white-space: nowrap;
}

.widget_gtranslate .gtranslate_wrapper [data-gt-lang="fr"]    { order: 1; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="en"]    { order: 2; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="es"]    { order: 3; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="it"]    { order: 4; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="de"]    { order: 5; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="pt"]    { order: 6; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="ja"]    { order: 7; }
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="zh-CN"] { order: 8; }

.widget_gtranslate .gtranslate_wrapper .glink {
    color: var(--qlc-text-tertiary);
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    text-decoration: none;
    line-height: 1;
    padding: 0;
    transition: color 0.15s ease;
}

.widget_gtranslate .gtranslate_wrapper .glink:hover,
.widget_gtranslate .gtranslate_wrapper .glink:focus {
    color: var(--qlc-ink);
    text-decoration: none;
}

.widget_gtranslate .gtranslate_wrapper .glink.gt-current-lang {
    color: var(--qlc-ink);
    font-weight: 700;
}

/* Relabel ZH-CN → ZH via pseudo-content trick */
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="zh-CN"] {
    font-size: 0;
}
.widget_gtranslate .gtranslate_wrapper [data-gt-lang="zh-CN"]::before {
    content: "ZH";
    font-size: 0.85rem;
    letter-spacing: 0.05em;
}

/* 2026-09-29 translation audit: French (and ES/IT/PT) capitalize only the first word of a button.
   The earlier .hk-button-text / .hk-button-link rules use !important, so this needs higher specificity. */
.hk-button.hk-button-text,
.hk-button.hk-button-link,
.uk-scope .hk-button.hk-button-text,
.uk-scope .hk-button.hk-button-link {
    text-transform: none !important;
}

/* 2026-09-29: the toolkit's Search Bar Pro price range prints a hard-coded "$" (toolkit issue filed);
   this site prices in euros. Remove once the toolkit reads the site currency. */
.hrtk-sbp-search-bar__price-field-currency {
    font-size: 0 !important;
}
.hrtk-sbp-search-bar__price-field-currency::after {
    content: "\20AC";
    font-size: 1rem;
}
