@charset "UTF-8";

/*
	Theme Name: Loquet Child Theme
	Theme URI: https://themeforest.net/user/gloriathemes
	Description: Child theme of Loquet theme
	Author: GloriaThemes
	Author URI: https://gloriathemes.com/
	License: GNU General Public License v2 or later
	License URI: http://www.gnu.org/licenses/gpl-2.0.html
	Text Domain: loquet
	Template: loquet
	Version: 1.0.0
*/


.gt-page-pagination.gt-style-1.gt-dark {
    margin-bottom: 10px;
}
.gt-item.gt-logo {
    position: absolute;
    left: 0;
    top: -28px;
    width: 200px;
    height: auto;
    padding: 10px 25px 10px 25px !important;
    background: #04304f;
    border-radius: 50px;
	box-shadow: 0px 1px 0px #04304f7a;
}

.gt-header.gt-mobile-header .gt-header-main.gt-style-3 .gt-item-group:nth-child(2) {
		width: 200px;
}
.gt-header.gt-desktop-header .gt-header-main.gt-separator .gt-header-main-inner {
    border-bottom: 0;
}
body.home .gt-header.gt-desktop-header:not(.gt-sticky-header),
body.home .gt-header.gt-mobile-header:not(.gt-sticky-header) {
    position: absolute;
	width: 100%;
}
body.home .gt-header:not(.gt-sticky-header) .gt-header-main {
    background-color: transparent;
	
}

body.home .gt-header:not(.gt-sticky-header) .gt-item.gt-logo {
    background: transparent;
	box-shadow: none;
}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering,
mark.count {
    display: none !important;
}

.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product-category a img {
    width: 100%;
    height: 250px;
    object-fit: contain;
	object-position: left;
}

.woocommerce.single-product .product .related.products {
    float: left;
    width: 100%;
    clear: both;
}

body .gt-footer .gt-footer-widgets.gt-style-1 ul,
body .gt-footer p {
    font-size: 1rem !important;
	color: #fff;
	font-family: "Titillium Web";
	font-weight: 500;
}

body .gt-footer .gt-footer-widgets.gt-style-1 .gt-widget-title {
    color: #C2AB5F;
	font-size: 1.5rem;
}
.gt-footer * {
	opacity: 1 !important;
}
.gt-sub-toggle {
    background: #969696;
}

body .gt-off-canvas .gt-menu ul li a, 
body .gt-off-canvas .gt-menu ul li a:visited {
    font-size: 3rem;
}

body .gt-off-canvas .gt-menu ul li .gt-sub-menu li a, 
body .gt-off-canvas .gt-menu ul li .gt-sub-menu li a:visited {
    line-height: 1.4;
	font-size: 2.125rem;
}

body .gt-footer .gt-footer-widgets .gt-footer-widgets-inner {
    padding: 0;
}
body .gt-footer .gt-container-full {
    padding: 0;
}

@media(min-width:1200px){

	.gt-item.gt-logo {
		top: -50px;
		border-radius: 50px;
	}
	.gt-header.gt-desktop-header .gt-header-main.gt-style-3 .gt-item-group:nth-child(2) {
		width: 200px;
	}
}

@media(min-width:992px){

	.gt-style-3 .gt-image {
		width: 50%;
		float: left;
	}	
	.gt-style-3 .gt-content {
		padding: 30px;
		float: left;
		width: 50%;
	}
	.gt-style-1 .gt-image {
		width: 35%;
		float: left;
	}	
	.gt-exhibitions-listing .gt-style-1 .gt-content {
		padding: 10px 20px;
		float: left;
		width: 65%;
	}
	.gt-exhibitions-listing.gt-style-1 .gt-item .gt-content .gt-title {
		font-size: 1.4rem;
		line-height: 1.4;
		margin-top: 10px;
	}

}

/* Back button — single collection pages */
.gt-back-button-wrap { margin-top: 30px; }
.gt-back-button {
	display: inline-block;
	padding: 10px 24px;
	background-color: #04304f;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-weight: 600;
	transition: background-color 0.2s ease;
}
.gt-back-button:hover { background-color: #C2AB5F; color: #fff; }

/* ============================================================
   PluginHive Bookings calendar/form — Loquet theme palette
   Override of the plugin's inline <style> (which is !important);
   scoped to .product-type-phive_booking so other pages are safe.
   Palette: #04304f (dark blue) + #C2AB5F (gold)
============================================================ */
.product-type-phive_booking .ph-calendar-month {
	background: #04304f !important;
}
.product-type-phive_booking .span-month,
.product-type-phive_booking .span-year,
.product-type-phive_booking .ph-prev,
.product-type-phive_booking .ph-next {
	color: #ffffff !important;
}
/* Riepilogo prenotazione: sfondo bianco + bordo oro + testo nero */
.product-type-phive_booking .booking-info-wraper {
	background: #ffffff !important;
	background-color: #ffffff !important;
	border: 1px solid #C2AB5F !important;
}
.product-type-phive_booking .booking-info-wraper,
.product-type-phive_booking .booking-info-wraper p,
.product-type-phive_booking .booking-info-wraper #booking_info_text,
.product-type-phive_booking .booking-info-wraper #booking_price_text {
	color: #000000 !important;
}
.product-type-phive_booking .ph-calendar-weekdays {
	background: #C2AB5F !important;
}
.product-type-phive_booking .ph-calendar-weekdays li {
	color: #ffffff !important;
}
.product-type-phive_booking .ph-calendar-days {
	background: #f6f3ec !important;
}
.product-type-phive_booking li.ph-calendar-date:hover,
.product-type-phive_booking li.ph-calendar-date.mouse_hover,
.product-type-phive_booking .selected-date,
.product-type-phive_booking .timepicker-selected-date {
	background: #C2AB5F !important;
	color: #ffffff !important;
	border-color: #C2AB5F !important;
}
.product-type-phive_booking li.ph-calendar-date.de-active:hover {
	background: none !important;
}
.product-type-phive_booking .button.alt,
.product-type-phive_booking button.single_add_to_cart_button {
	background-color: #04304f !important;
	color: #ffffff !important;
}
.product-type-phive_booking .button.alt:hover,
.product-type-phive_booking button.single_add_to_cart_button:hover {
	background-color: #C2AB5F !important;
	color: #ffffff !important;
}
/* "Prenota Ora" full-width, centrato, con padding generoso */
.product-type-phive_booking button.single_add_to_cart_button.ph_book_now_button,
.product-type-phive_booking button.single_add_to_cart_button {
	width: 100% !important;
	margin: 1rem auto !important;
	padding: 1.5rem !important;
	text-align: center !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	letter-spacing: 0.03em;
}

/* ============================================================
   Border-radius 7px su tutti i blocchi del booking
============================================================ */
.product-type-phive_booking .ph-calendar-container,
.product-type-phive_booking .time-calendar-date-section,
.product-type-phive_booking .ph-calendar-month,
.product-type-phive_booking .ph-calendar-weekdays,
.product-type-phive_booking .ph-calendar-days,
.product-type-phive_booking .booking-info-wraper,
.product-type-phive_booking .time-picker-wraper #ph-calendar-time li.ph-calendar-date,
.product-type-phive_booking li.ph-calendar-date,
.product-type-phive_booking .participant_inner_section,
.product-type-phive_booking .input-person,
.product-type-phive_booking .button.alt,
.product-type-phive_booking button.single_add_to_cart_button,
.product-type-phive_booking .input-person-minus,
.product-type-phive_booking .input-person-plus {
	border-radius: 7px !important;
}
/* Angoli "smussati" dove i blocchi sono impilati: header sopra, weekdays in mezzo, days sotto */
.product-type-phive_booking .ph-calendar-month {
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.product-type-phive_booking .ph-calendar-weekdays {
	border-radius: 0 !important;
}
.product-type-phive_booking .ph-calendar-days {
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

/* ============================================================
   Calendario: date un po' più alte per leggibilità
   (NON tocco display/width: la griglia 7-per-riga viene dal plugin)
============================================================ */
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date {
	min-height: 46px !important;
	box-sizing: border-box !important;
	text-align: center !important;
}
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date .ph_calendar_day {
	display: inline-block;
	line-height: 46px;
}

/* ============================================================
   Time picker (slot orari es. "10:00 - 13:00"):
   stessa altezza delle date, contenuto centrato, lista centrata
============================================================ */
.product-type-phive_booking #ph-calendar-time {
	text-align: center !important;
	padding:12px 0px 0px 0px!important;
}
.product-type-phive_booking .time-picker-wraper #ph-calendar-time li.ph-calendar-date {
	min-height: 46px !important;
	text-align: center !important;
	box-sizing: border-box !important;
	margin: 6px !important;
}
.product-type-phive_booking #ph-calendar-time li.ph-calendar-date .ph_calendar_time {
	display: inline-block;
	line-height: 46px;
	padding: 0 10px;
}
/* Bordo/sfondo coerente per tutti gli slot orari, anche quando il plugin
   non emette il blocco <style> condizionato a _phive_enable_end_time_display
   (cfr. plugin: html-ph-booking-timepicker.php righe ~276-294).
   Nota: la classe product-type-phive_booking è sul <div> wrapper del
   prodotto WooCommerce, non sul <body>. */
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date {
	border: 1px solid #C2AB5F !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	color: #04304f !important;
	padding: 0 12px !important;
}
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date .ph_calendar_time,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date .ph_bookings_capacity {
	color: #04304f !important;
}
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date:hover,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date:hover .ph_calendar_time,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date:hover .ph_bookings_capacity,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date.selected-date,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date.selected-date .ph_calendar_time,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date.selected-date .ph_bookings_capacity,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date.timepicker-selected-date,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date.timepicker-selected-date .ph_calendar_time,
.product-type-phive_booking .time-picker-wraper ul#ph-calendar-time li.ph-calendar-date.timepicker-selected-date .ph_bookings_capacity {
	background: #C2AB5F !important;
	background-color: #C2AB5F !important;
	color: #ffffff !important;
	border-color: #C2AB5F !important;
}

/* ============================================================
   Selezione partecipanti: più spazio tra le righe + uniforma
   il gruppo [ − | input | + ]
============================================================ */
.product-type-phive_booking .participant_section,
.product-type-phive_booking .extra-resources {
	margin-top: 1.5rem;
}
.product-type-phive_booking .participant_inner_section {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	margin-bottom: 14px;
	background: #f6f3ec;
	border: 1px solid #e5dcc5;
}
.product-type-phive_booking .participant_inner_section .persons-title {
	flex: 1 1 60%;
}
.product-type-phive_booking .participant_inner_section .label-person {
	font-weight: 600;
	color: #04304f;
}

/* Gruppo bottoni − [valore] + */
.product-type-phive_booking .person-value.button-group-container {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
}
.product-type-phive_booking .input-person-minus,
.product-type-phive_booking .input-person-plus {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	background: #04304f !important;
	color: #ffffff !important;
	text-decoration: none !important;
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
	transition: background-color 0.2s ease;
}
.product-type-phive_booking .input-person-minus:hover,
.product-type-phive_booking .input-person-plus:hover {
	background: #C2AB5F !important;
	color: #ffffff !important;
}
.product-type-phive_booking input.input-person {
	width: 56px !important;
	height: 34px !important;
	text-align: center;
	border: 1px solid #C2AB5F !important;
	background: #ffffff !important;
	color: #04304f !important;
	font-weight: 600;
}

/* ============================================================
   Card "modulo di prenotazione": sfondo beige + cornice oro
   intorno a tutto il form.cart (date picker + time picker +
   participant section + bottone "Aggiungi al carrello").
   Font base del modulo a 18px (pubblico adulto).
============================================================ */
.product-type-phive_booking form.cart {
	background: #f6f3ec;
	border: 1px solid #C2AB5F;
	border-radius: 7px;
	padding: 1.5rem;
	font-size: 18px;
}
.product-type-phive_booking form.cart,
.product-type-phive_booking form.cart p,
.product-type-phive_booking form.cart span,
.product-type-phive_booking form.cart label,
.product-type-phive_booking form.cart input,
.product-type-phive_booking form.cart button,
.product-type-phive_booking form.cart a,
.product-type-phive_booking form.cart li {
	font-size: 18px !important;
}

/* ============================================================
   Intestazioni di sezione iniettate via ::before
   (il plugin non rende heading; usiamo pseudo-elementi così
   non tocchiamo i template che verrebbero sovrascritti)
============================================================ */
.product-type-phive_booking .ph-calendar-container::before,
.product-type-phive_booking .time-picker:has(#ph-calendar-time li.ph-calendar-date)::before,
.product-type-phive_booking .participant_section::before {
	display: block;
	font-size: 18px;
	font-weight: 700;
	color: #04304f;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 1.5rem 0 0.75rem;
	padding-bottom: 0.4rem;
	border-bottom: 2px solid #C2AB5F;
}
.product-type-phive_booking .ph-calendar-container::before { content: "Seleziona una data"; }
.product-type-phive_booking .time-picker:has(#ph-calendar-time li.ph-calendar-date)::before { content: "Seleziona la fascia oraria"; }
.product-type-phive_booking .participant_section::before { content: "Seleziona tipo di biglietto"; }

/* ============================================================
   Calendario: rendere più evidente la differenza tra date
   disponibili (cliccabili) e date non disponibili / passate
============================================================ */
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date:not(.de-active):not(.booking-full):has(.ph_calendar_day) {
	background: #ffffff !important;
	background-color: #ffffff !important;
	border: 1px solid #C2AB5F !important;
	cursor: pointer;
	font-weight: 600;
	color: #04304f;
	transition: background-color 0.15s ease, color 0.15s ease;
}
/* Stato selezionato + hover — specificità allineata alla regola bianca
   (gli stessi :not() + :has() così il count delle classi è uguale, e
   l'ordine sorgente fa vincere queste). */
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.selected-date:not(.de-active):not(.booking-full):has(.ph_calendar_day),
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.timepicker-selected-date:not(.de-active):not(.booking-full):has(.ph_calendar_day),
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date:not(.de-active):not(.booking-full):has(.ph_calendar_day):hover,
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.mouse_hover:not(.de-active):not(.booking-full):has(.ph_calendar_day) {
	background: #C2AB5F !important;
	background-color: #C2AB5F !important;
	border: 1px solid #C2AB5F !important;
	border-color: #C2AB5F !important;
	color: #ffffff !important;
}
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.de-active,
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.booking-full {
	background: transparent !important;
	background-color: transparent !important;
	color: #04304f !important;
	cursor: not-allowed !important;
	pointer-events: none;
	font-weight: 400;
	opacity: 0.3 !important;
	border: none !important;
	border-radius: 0 !important;
}
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.de-active:hover,
.product-type-phive_booking .ph-calendar-days li.ph-calendar-date.booking-full:hover {
	background: transparent !important;
	background-color: transparent !important;
	opacity: 0.3 !important;
}

/* ============================================================
   Prezzo per tipo di biglietto (iniettato via JS in functions.php)
============================================================ */
.product-type-phive_booking .label-person-price {
	display: block;
	width: 100%;
	font-size: 18px !important;
	color: #C2AB5F;
	font-weight: 600;
	margin-top: 0.15rem;
}

.term-description{
	padding-bottom: 80px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 20px!important;
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button{
	align-items:flex-end;
}


p.event-date{
	display: none;
}

/* Categoria EVENTI: il prezzo è nascosto via filtro PHP (woocommerce_get_price_html).
   Collasso il wrapper rimasto vuoto per evitare un gap verticale sopra il bottone. */
.product_cat-eventi .price:empty{
	display: none;
}