.elementor-22291 .elementor-element.elementor-element-c5e95bb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22291 .elementor-element.elementor-element-3cdbd36{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;text-align:center;}.elementor-22291 .elementor-element.elementor-element-9efa55e .elementor-button-content-wrapper{flex-direction:row;}.elementor-22291 .elementor-element.elementor-element-0c043d8{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22291 .elementor-element.elementor-element-c640690{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-22291 .elementor-element.elementor-element-84d8497{--display:flex;}/* Start custom CSS for image, class: .elementor-element-ba1a1e2 */.elementor-22291 .elementor-element.elementor-element-ba1a1e2 img{max-height: 200px;object-fit: cover; }/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-9efa55e */.elementor-22291 .elementor-element.elementor-element-9efa55e a.elementor-button {
    background: transparent;
    border: 1.5px solid #888;
    color: #333;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 18px;
    transition: all 0.2s ease;
}

.elementor-22291 .elementor-element.elementor-element-9efa55e a.elementor-button:hover {
    background: #f0f0f0;
    border-color: #555;
    color: #000;
}

.elementor-22291 .elementor-element.elementor-element-9efa55e .elementor-button-content-wrapper {
    display: flex;
    align-items: center;
    gap: 6px;
}

.elementor-22291 .elementor-element.elementor-element-9efa55e .elementor-button-icon svg {
    fill: #333;
}

.elementor-22291 .elementor-element.elementor-element-9efa55e a.elementor-button:hover .elementor-button-icon svg {
    fill: #000;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-8e88879 *//* ─── Layout dual booking: due colonne affiancate ─── */
.dual-booking-wrap {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
}
.dual-booking-col {
    flex: 1 1 50%;
    min-width: 0; /* evita overflow */
}
.dual-booking-title {
    font-size: 1.4rem;
    margin-bottom: 1rem;
}
/* Su mobile: impila verticalmente */
@media (max-width: 768px) {
    .dual-booking-wrap { flex-direction: column; }
}

/* ─── Griglia tariffe persone: 2 colonne ─── */
.wc-bookings-booking-form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    align-items: stretch;
}

/* ─── Singola card tariffa ─── */
.wc-bookings-booking-form > p.form-field[class*="wc_bookings_field_persons_"] {
    background: #f8f7f5;
    border: 1px solid #e8e5e0;
    border-radius: 10px;
    padding: 10px 12px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px;
    align-self: stretch;
    height: auto;
}
.wc-bookings-booking-form > p.form-field[class*="wc_bookings_field_persons_"] label {
    font-size: 16px;
    line-height: 1.3;
    margin: 0 !important;
    flex: 1;
}
.wc-bookings-booking-form > p.form-field[class*="wc_bookings_field_persons_"] input[type="number"] {
    width: 60px !important;
    flex-shrink: 0;
    text-align: center;
    font-size: 16px;
}

/* ─── Elementi a piena larghezza (datepicker, orari, costo) ─── */
.wc-bookings-booking-form > fieldset,
.wc-bookings-booking-form > .form-field:not([class*="wc_bookings_field_persons_"]),
.wc-bookings-booking-form > .wc-bookings-booking-cost,
.wc-bookings-booking-form > .timezone-details {
    grid-column: 1 / -1;
}

/* ─── Tariffe nascoste dal toggle ─── */
.wc-bookings-booking-form > p.form-field.booking-person-hidden {
    display: none !important;
}

/* ─── Pulsante toggle "Mostra altre tariffe" ─── */
.booking-persons-toggle, button.wc-bookings-booking-form-button {
    grid-column: 1 / -1;
    cursor: pointer;
    font-size: 13px;
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 10px 15px 10px 15px !important;
    background-color: #2F8BC7;
    color: #000!important;
    text-transform: uppercase;
    font-weight: bold;
    border-radius: 6px!important;
    line-height: 23px;
    border: none!important;
}
.booking-persons-toggle:hover { background: #EA7306; border-radius: 6px!important;
    border:none!important}
.booking-persons-toggle:focus {
outline: none !important;
box-shadow: none !important;
}

/* ─── Responsive mobile ─── */
@media (max-width: 600px) {
    .wc-bookings-booking-form {
        grid-template-columns: 1fr !important;
    }
}

/* ─── Override globale pulsanti tema ─── */
.site button, .site button:focus, .site button:hover {
    border:none!important
}
[type=button], [type=reset], [type=submit], button {
    display: inline-block;
    padding: 20px 10px!important;
}

/* ─── Scritta fuso orario nascosta (sostituita dal JS) ─── */
.wc-bookings-date-picker-timezone-block {
    display: none !important;
}

/* ─── Font size calendario ─── */
.wc-bookings-booking-form .ui-datepicker-title,
.wc-bookings-booking-form .ui-datepicker-calendar th,
.wc-bookings-booking-form .ui-datepicker-calendar td {
    font-size: 16px !important;
}
/* ─── Giorni disponibili ─── */
.wc-bookings-booking-form .ui-datepicker-calendar td.bookable {
    background-color: #fde9d0 !important;
}
.wc-bookings-booking-form .ui-datepicker-calendar td.bookable a {
    background-color: #fde9d0 !important;
    color: #8B4000 !important;
}
.wc-bookings-booking-form .ui-datepicker-calendar td.bookable:hover,
.wc-bookings-booking-form .ui-datepicker-calendar td.bookable a:hover {
    background-color: #EA7306 !important;
    color: #fff !important;
}

/* ─── Giorno selezionato ─── */
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-datepicker-current-day,
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-datepicker-current-day a,
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-datepicker-current-day .ui-state-default,
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-datepicker-current-day .ui-state-active {
    background-color: #EA7306 !important;
    background: #EA7306 !important;
    color: #fff !important;
}

/* ─── Giorni non disponibili ─── */
.wc-bookings-booking-form .ui-datepicker-calendar td.not_bookable,
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-state-disabled {
    background-color: #fafafa !important;
}
.wc-bookings-booking-form .ui-datepicker-calendar td.not_bookable span,
.wc-bookings-booking-form .ui-datepicker-calendar td.ui-state-disabled span {
    color: #ccc !important;
}

/* ─── Pulsanti orario ─── */
.wc-bookings-booking-form .block-picker li a {
    display: inline-block;
    padding: 8px 16px;
    border: 2px solid #EA7306;
    border-radius: 6px;
    font-size: 16px !important;
    font-weight: 600;
    text-decoration: none;
    color: #EA7306 !important;
}
.wc-bookings-booking-form .block-picker li a.selected {
    background: #EA7306 !important;
    background-color: #EA7306 !important;
    border-color: #EA7306 !important;
    color: #fff !important;
}

/* ─── Orario selezionato (override verde plugin) ─── */

/* ─── Orario selezionato (override verde plugin) ─── */
.wc-bookings-booking-form .block-picker li a.selected,
.wc-bookings-booking-form .block-picker li a.selected:hover,
.wc-bookings-booking-form .block-picker li:nth-child(odd) a.selected,
.wc-bookings-booking-form .block-picker li:nth-child(odd) a.selected:hover,
.wc-bookings-booking-form .block-picker li:nth-child(odd) a:hover {
    background: #EA7306 !important;
    background-color: #EA7306 !important;
    border-color: #EA7306 !important;
    color: #fff !important;
}
.wc-bookings-booking-form .block-picker {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 8px 0;
    justify-content: flex-start;
}


/* ─── Forza colore bordo pulsanti booking ─── */
.booking-persons-toggle, .wc-bookings-booking-form-button{background:#EA7306!important;}

/* ─── Durata visita sotto il titolo ─── */
.dual-booking-duration {
    font-size: 14px;
    color: #888;
    margin: -8px 0 12px;
}/* End custom CSS */