/*
	Theme Name: Milenia (child)
	Theme URI: http://velikorodnov.com/wordpress/milenia
	Description: Milenia WordPress Theme is a responsive WordPress theme created especially for hotels, resorts, hostels, boutique and apartments a complete hotel and vacation rental booking system within theme package. Developed for the latest WordPress version. Milenia supports all responsive layouts and looks great on all devices. Theme doesn’t focus on any specific hotel establishment, so you may use it for hotels, bed and breakfast websites, guest houses, apartments, villas, and even hostels.
	Author: Monkeysan
	Author URI: https://themeforest.net/user/monkeysan/portfolio
	Template: milenia
	Version: 1.0.0
	License: Commercial
	License URI: http://themeforest.net/licenses/regular_extended
	Text Domain: milenia
	Tags: one-column, two-columns, left-sidebar, right-sidebar, sticky-post, rtl-language-support, threaded-comments, translation-ready, theme-options, featured-images
*/

/*------------------------------------------------------------------
[Add Your Custom CSS Here] */


/* -------------------------------- CSS GABRIELE -------------------------------------------- */

/* ============== CSS PER PRENOTAZIONE =========== */

/* ===== Pagina "Prenotazione ricevuta" (pagamento completato) ===== */
.mphb_sc_booking_confirmation{
  --c1:#c19b76;--c2:#a67f5c;--bg:#faf6f1;--line:#eadfd2;--tx:#555;
  max-width:960px;margin:0 auto;color:var(--tx);box-sizing:border-box;
}
.mphb_sc_booking_confirmation *{box-sizing:border-box}

/* Banner di successo */
.mphb_sc_booking_confirmation .mphb-payment-messages{
  position:relative;margin:0 0 28px;padding:24px 28px 24px 92px;
  background:var(--bg);border-left:5px solid var(--c1);border-radius:4px;
}
.mphb_sc_booking_confirmation .mphb-payment-messages::before{
  content:"";position:absolute;left:26px;top:50%;margin-top:-26px;width:52px;height:52px;border-radius:50%;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a67f5c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/28px no-repeat;
  border:1px solid var(--line);
}
.mphb_sc_booking_confirmation .mphb-payment-messages p{
  margin:0;font-family:"Playfair Display",serif;font-size:24px;line-height:1.4;color:var(--c2);
}

/* Schede */
.mphb_sc_booking_confirmation .mphb-booking-details-section{
  background:#fff;border:1px solid var(--line);border-top:4px solid var(--c1);border-radius:6px;
  padding:28px 30px;margin:0 0 26px;box-shadow:0 2px 14px rgba(120,90,60,.06);
}
.mphb_sc_booking_confirmation .mphb-booking-details-title{
  margin:0 0 20px;padding:0 0 12px;border-bottom:1px solid var(--line);
  font-size:26px;line-height:1.3;color:var(--c2);
}

/* Dati a riquadri */
.mphb_sc_booking_confirmation ul.mphb-booking-details{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;
}
.mphb_sc_booking_confirmation ul.mphb-booking-details li{
  margin:0;padding:14px 16px;background:var(--bg);border:0;border-left:4px solid var(--c1);
  border-radius:4px;min-width:0;
}
.mphb_sc_booking_confirmation ul.mphb-booking-details li::before,
.mphb_sc_booking_confirmation ul.mphb-booking-details li::after,
.mphb_sc_booking_confirmation ul.mphb-booking-details li .label::before{display:none!important}
.mphb_sc_booking_confirmation ul.mphb-booking-details li .label{
  display:block;margin:0 0 4px;padding:0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--c2);
}
.mphb_sc_booking_confirmation ul.mphb-booking-details li .value{
  display:block;margin:0;padding:0;font-size:19px;font-weight:600;color:#333;word-break:break-word;
}
.mphb_sc_booking_confirmation .booking-price .value,
.mphb_sc_booking_confirmation .payment-number:nth-last-child(2) .value{color:var(--c2)}

/* Stato */
.mphb_sc_booking_confirmation .booking-status .value,
.mphb_sc_booking_confirmation .payment-number:last-child .value{
  display:inline-block;padding:3px 12px;border-radius:20px;background:#fff;border:1px solid var(--c1);
  font-size:15px;color:var(--c2);
}

/* Alloggio */
.mphb_sc_booking_confirmation .accommodations{margin:20px 0 0;padding:16px 0 0;border-top:1px dashed #dccbb8;font-size:17px}
.mphb_sc_booking_confirmation .accommodations-title{color:var(--c2);margin-right:8px;text-transform:uppercase;font-size:13px;letter-spacing:.14em}
.mphb_sc_booking_confirmation .accommodations-list a{font-family:"Playfair Display",serif;font-size:22px;color:#333;text-decoration:none}
.mphb_sc_booking_confirmation .accommodations-list a:hover{color:var(--c2)}

@media(max-width:640px){
  .mphb_sc_booking_confirmation .mphb-payment-messages{padding:88px 20px 22px}
  .mphb_sc_booking_confirmation .mphb-payment-messages::before{left:20px;top:22px;margin-top:0}
  .mphb_sc_booking_confirmation .mphb-booking-details-section{padding:20px 18px}
  .mphb_sc_booking_confirmation ul.mphb-booking-details{grid-template-columns:1fr 1fr}
}

/* ===== Checkout MotoPress – La Serra ===== */
.mphb_sc_checkout-wrapper{--c1:#c19b76;--c2:#a67f5c;--bg:#faf6f1;--line:#eadfd2;--tx:#555;color:var(--tx);max-width:100%}
.mphb_sc_checkout-wrapper *{box-sizing:border-box}

/* Saluto (visibile solo a chi è loggato) */
.mphb_sc_checkout-wrapper .mphb-login-form-wrap{margin:0 0 18px;font-size:14px;color:#888}
.mphb_sc_checkout-wrapper .mphb-login-form-wrap p{margin:0}

/* Card per ogni sezione */
.mphb_sc_checkout-wrapper .mphb-checkout-section{background:#fff;border:1px solid var(--line);border-top:4px solid var(--c1);border-radius:6px;padding:28px 30px;margin:0 0 26px;box-shadow:0 2px 14px rgba(120,90,60,.06)}
.mphb_sc_checkout-wrapper .mphb-checkout-section>h3,
.mphb_sc_checkout-wrapper .mphb-price-breakdown-title{margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:26px;line-height:1.3;color:var(--c2)}

/* Dettagli prenotazione: date affiancate */
.mphb_sc_checkout-wrapper .mphb-booking-details{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}
.mphb_sc_checkout-wrapper .mphb-booking-details>h3,
.mphb_sc_checkout-wrapper .mphb-reserve-rooms-details{grid-column:1/-1}
.mphb_sc_checkout-wrapper .mphb-check-in-date,
.mphb_sc_checkout-wrapper .mphb-check-out-date{margin:0;padding:16px 18px;background:var(--bg);border-left:4px solid var(--c1);border-radius:4px;line-height:1.7}
.mphb_sc_checkout-wrapper .mphb-check-in-date span:first-child,
.mphb_sc_checkout-wrapper .mphb-check-out-date span:first-child{display:block;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--c2)}
.mphb_sc_checkout-wrapper .mphb-check-in-date strong,
.mphb_sc_checkout-wrapper .mphb-check-out-date strong{font-size:19px;color:#333}

/* Alloggio */
.mphb_sc_checkout-wrapper .mphb-room-details{background:var(--bg);border-radius:6px;padding:22px 24px}
.mphb_sc_checkout-wrapper .mphb-room-number{margin:0 0 6px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--c2);font-family:inherit}
.mphb_sc_checkout-wrapper .mphb-room-type-title{margin:0 0 18px;font-size:0}
.mphb_sc_checkout-wrapper .mphb-room-type-title span{display:none}
.mphb_sc_checkout-wrapper .mphb-room-type-title a{font-size:26px;line-height:1.3;color:#333;font-family:"Playfair Display",serif;text-decoration:none}
.mphb_sc_checkout-wrapper .mphb-room-type-title a:hover{color:var(--c2)}
.mphb_sc_checkout-wrapper .mphb-adults-chooser,
.mphb_sc_checkout-wrapper .mphb-guest-name-wrapper{margin:0 0 16px}

/* Servizi aggiuntivi */
.mphb_sc_checkout-wrapper .mphb-services-details{margin-top:20px;padding-top:18px;border-top:1px dashed #dccbb8}
.mphb_sc_checkout-wrapper .mphb-services-details-title{margin:0 0 12px;font-size:20px;color:var(--c2)}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list{list-style:none;margin:0;padding:0}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list li{margin:0 0 10px;padding:0}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list label{display:flex;align-items:center;gap:12px;margin:0;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:4px;cursor:pointer;line-height:1.4}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list label:hover{border-color:var(--c1)}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--c2);flex:0 0 auto}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list em{margin-left:auto;font-style:normal;color:var(--c2);font-weight:600;white-space:nowrap}

/* Campi del form */
.mphb_sc_checkout-wrapper label{display:block;margin:0 0 6px;font-size:14px;color:#777}
.mphb_sc_checkout-wrapper label abbr{color:#c0392b;text-decoration:none}
.mphb_sc_checkout-wrapper .mphb-checkbox-label{display:flex}
.mphb_sc_checkout-wrapper input[type=text],
.mphb_sc_checkout-wrapper input[type=email],
.mphb_sc_checkout-wrapper select,
.mphb_sc_checkout-wrapper textarea{width:100%!important;max-width:100%;padding:12px 14px!important;background:#fff;border:1px solid #ded3c6!important;border-radius:4px!important;font-size:16px;color:#444;box-shadow:none;transition:border-color .2s,box-shadow .2s}
.mphb_sc_checkout-wrapper input:focus,
.mphb_sc_checkout-wrapper select:focus,
.mphb_sc_checkout-wrapper textarea:focus{outline:none;border-color:var(--c1)!important;box-shadow:0 0 0 3px rgba(193,155,118,.2)}
.mphb_sc_checkout-wrapper .jq-selectbox{width:100%}
.mphb_sc_checkout-wrapper textarea{resize:vertical;min-height:110px}

/* Dati cliente: 2 colonne */
.mphb_sc_checkout-wrapper .mphb-customer-details{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}
.mphb_sc_checkout-wrapper .mphb-customer-details>h3,
.mphb_sc_checkout-wrapper .mphb-required-fields-tip,
.mphb_sc_checkout-wrapper .mphb-customer-country,
.mphb_sc_checkout-wrapper .mphb-customer-note{grid-column:1/-1}
.mphb_sc_checkout-wrapper .mphb-customer-details p{margin:0 0 14px}
.mphb_sc_checkout-wrapper .mphb-customer-details p br{display:none}
.mphb_sc_checkout-wrapper .mphb-required-fields-tip{color:#888}

/* Ripartizione prezzi */
.mphb_sc_checkout-wrapper table.mphb-price-breakdown{width:100%;border:0;border-collapse:collapse;margin:0}
.mphb_sc_checkout-wrapper table.mphb-price-breakdown th,
.mphb_sc_checkout-wrapper table.mphb-price-breakdown td{padding:12px 6px;border:0;border-bottom:1px solid #f0e8de;text-align:left;font-size:16px;font-weight:400;background:none}
.mphb_sc_checkout-wrapper .mphb-table-price-column{text-align:right!important;white-space:nowrap}
.mphb_sc_checkout-wrapper .mphb-price-breakdown-booking td{font-weight:600;color:#333}
.mphb_sc_checkout-wrapper .mphb-price-breakdown-booking a{color:#333;text-decoration:none}
.mphb_sc_checkout-wrapper .mphb-price-breakdown-rate{margin-top:4px;font-size:14px;font-weight:400;color:#888}
.mphb_sc_checkout-wrapper .mphb-price-breakdown-total th{padding-top:16px;border-bottom:0;font-size:20px;font-weight:600;color:#333}
.mphb_sc_checkout-wrapper .mphb-price-breakdown-total .mphb-price{color:var(--c2);font-size:24px}

/* Totale e pulsante */
.mphb_sc_checkout-wrapper .mphb-total-price{margin:0 0 22px;padding:18px 22px;background:var(--bg);border-left:5px solid var(--c1);border-radius:4px;text-align:right;font-size:18px}
.mphb_sc_checkout-wrapper .mphb-total-price strong{margin-left:10px;font-size:28px;color:var(--c2);font-family:"Playfair Display",serif;font-weight:400}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper{margin:0;text-align:right}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper input.button{min-width:240px;padding:16px 36px!important;background:var(--c2)!important;color:#fff!important;border:0!important;border-radius:4px!important;font-size:15px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper input.button:hover{background:var(--c1)!important}

/* Errori */
.mphb_sc_checkout-wrapper .mphb-errors-wrapper{padding:14px 18px;background:#fdf0ee;border-left:4px solid #c0392b;border-radius:4px;color:#8a2a1f}

/* Mobile */
@media(max-width:640px){
  .mphb_sc_checkout-wrapper .mphb-checkout-section{padding:20px 18px}
  .mphb_sc_checkout-wrapper .mphb-booking-details,
  .mphb_sc_checkout-wrapper .mphb-customer-details{grid-template-columns:1fr}
  .mphb_sc_checkout-wrapper .mphb-room-details{padding:18px 16px}
  .mphb_sc_checkout-wrapper .mphb-total-price,
  .mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper{text-align:center}
  .mphb_sc_checkout-wrapper .mphb_sc_checkout-submit-wrapper input.button{width:100%}
  .mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list label{flex-wrap:wrap}
}

/* Checkbox del servizio: riserva lo spazio e allinea */
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list label{position:relative;padding-left:52px}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list label::before,
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list label::after{top:50%;left:16px;margin-top:-10px}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-services-list input[type=checkbox]{position:absolute;top:50%;left:16px;margin-top:-9px}

.mphb_sc_checkout-wrapper .mphb-errors-wrapper{position:relative;padding:16px 18px 16px 62px;min-height:56px;display:flex;align-items:center}
.mphb_sc_checkout-wrapper .mphb-errors-wrapper::before{left:18px;top:50%;transform:translateY(-50%)}
.mphb_sc_checkout-wrapper .mphb-errors-wrapper>*:first-child{position:absolute;left:18px;top:50%;transform:translateY(-50%)}

/* ===== Prenotazione inviata ===== */
.mphb_sc_checkout-wrapper:has(.mphb-reservation-submitted-title){
  --c1:#c19b76;--c2:#a67f5c;--bg:#faf6f1;--line:#eadfd2;--tx:#555;
  position:relative;background:#fff;border:1px solid var(--line);border-top:4px solid var(--c1);
  border-radius:6px;padding:34px 36px 34px 112px;margin:0 0 26px;
  box-shadow:0 2px 14px rgba(120,90,60,.06);box-sizing:border-box;max-width:100%;
}
.mphb_sc_checkout-wrapper:has(.mphb-reservation-submitted-title)::before{
  content:"";position:absolute;left:36px;top:34px;width:52px;height:52px;border-radius:50%;
  background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a67f5c' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/28px no-repeat;
  border:1px solid var(--line);
}
.mphb_sc_checkout-wrapper .mphb-reservation-submitted-title{
  margin:0 0 14px;padding:0 0 14px;border-bottom:1px solid var(--line);
  font-size:28px;line-height:1.3;color:var(--c2);
}
.mphb_sc_checkout-wrapper .mphb_sc_checkout-success-reservation-message{
  margin:0;font-size:17px;line-height:1.8;color:var(--tx);
}
@media(max-width:640px){
  .mphb_sc_checkout-wrapper:has(.mphb-reservation-submitted-title){padding:96px 20px 26px}
  .mphb_sc_checkout-wrapper:has(.mphb-reservation-submitted-title)::before{left:20px;top:26px}
}

/* GENERAL GRAPH */

.social-footer img {
    max-width: 45px;
}

html {
  scroll-behavior: smooth;
}

.titolo-graph h6:before {
    content: "";
    background-image: url(/wp-content/uploads/2026/09/logo-icon.png);
    min-width: 50px;
    min-height: 50px;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    top: -30px;
    left: 0;
}

.titolo-graph h6 {
	position: relative;
}

/* HOME */

.milenia-logo img {
    max-width: 250px;
}

.cucina-home p.milenia-section-description {
    padding: 0;
}

.cucina-home h2 {
    margin-bottom: 0;
}

.cucina-home p {
    color: #fff;
    font-size: 18px;
}

.cucina-home .milenia-section-heading {
    margin: 0;
}

.cucina-home:before {
    content: "";
    background: color(a98-rgb 0.13 0.13 0.13 / 0.51);
    min-width: 100%;
    min-height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    visibility: visible;
    z-index: 1;
}

.contact-home .milenia-entity-content.milenia-aligner {
    background-color: #c19b76e3;
}

.corsi-home .milenia-entities--style-1 .milenia-entity-content {
    background: #ae745a;
    color: #fff;
}

.corsi-home h2.milenia-entity-title {
    color: #fff;
}

.contact-home h2.milenia-entity-title {
    font-size: 35px;
}

/* CHI SIAMO */

.vc_row.wpb_row.vc_row-fluid.fiore {
    padding-top: 0;
}

.fiore .wpb_single_image.wpb_content_element.vc_align_left.wpb_content_element {
    display: flex;
    justify-content: center;
}

.intro-pages {
    min-height: 650px;
    display: flex;
    align-items: center;
    background-attachment: fixed;
}

.intro-pages:before {
    content: "";
    background-color: #0000007d;
    min-width: 100%;
    min-height: 100%;
    position: absolute;
}

/*  CONTATTI */

.form-contatti p.milenia-section-description.milenia-font--like-body {
    padding-left: 0;
}

.mappa iframe {
    min-width: 100%;
}

.vc_row.wpb_row.vc_row-fluid.mappa {
    padding-bottom: 0;
}

/* Alloggi */

.la-desc {
    margin-bottom: 50px;
}

.mphb-calendar.mphb-datepick.inlinePicker.is-datepick {
    margin-bottom: 90px;
}

.single .milenia-entity-content {
    padding-left: 0 !important;
}

.testo-dimore-interno {
    margin-bottom: 30px;
}

.single h2.mphb-calendar-title {
    margin-top: 30px;
}

/* WIDGET */

.indicazioni-widget {
    margin-left: 20px;
}

.social-icons.social-footer {
    display: flex;
    gap: 10px;
}





























/* ==========================================================================
   RESPONSIVE MOBILE (novembre 2026)
   Correzioni per telefono, fino a 767px. Le poche regole fuori dalla media
   query correggono difetti visibili a tutte le larghezze.
   ========================================================================== */

/* Schede alloggio: niente data e autore da articolo di blog (mostravano il nome utente admin) */
.single-mphb_room_type .milenia-entity-header--single .milenia-entity-meta { display: none; }

/* Menu laterale: il logo e' bianco, quindi serve un fondo scuro; via le voci demo "Search" e "Webcams" */
.milenia-sidebar-hidden-header { background-color: #1c1c1c; }
.milenia-sidebar-hidden-close, .milenia-sidebar-hidden-close:hover { color: #fff; }
.milenia-sidebar-hidden-actions { display: none; }

/* Contact Form 7: niente riquadro vuoto prima dell'invio */
.wpcf7 form.init .wpcf7-response-output { display: none; }

/* Telefoni ed email diventati link (tel:/mailto:, vedi functions.php del child): stesso aspetto del testo di prima */
.milenia-icon-box-title a[href^="tel:"], .milenia-icon-box-title a[href^="mailto:"],
.contact-home .milenia-entity-body a[href^="tel:"], .contact-home .milenia-entity-body a[href^="mailto:"],
.contatti-widget a[href^="tel:"], .contatti-widget a[href^="mailto:"] { color: inherit; text-decoration: none; }

/* Caroselli Owl (gallery, foto degli alloggi, slider): owl mette touch-action:none e la pagina non scorre
   se il dito parte su una foto; cosi' lo scroll verticale torna e lo swipe orizzontale resta a owl */
.owl-carousel.owl-drag .owl-item { touch-action: pan-y pinch-zoom !important; }

@media (max-width: 767px) {

	/* ---------- Comuni a tutte le pagine ---------- */

	/* Selettore lingua: resta in cima alla pagina invece di coprire i contenuti, e sotto il menu aperto */
	.trp-language-switcher.trp-floating-switcher { position: absolute !important; z-index: 25 !important; right: 8px !important; left: auto !important; }

	/* Header: MENU e logo sulla stessa riga, pulsante "Fattoria didattica" sotto */
	#milenia-header.milenia-header { padding: 0 !important; }
	#milenia-header .milenia-header-section-md { padding: 6px 0 14px; }
	#milenia-header .milenia-header-section-md > .container-fluid { display: grid !important; grid-template-columns: minmax(96px, 1fr) auto minmax(96px, 1fr); align-items: center; }
	#milenia-header .milenia-header-col { width: auto !important; min-width: 0; }
	#milenia-header .milenia-header-col:nth-child(1) { justify-self: start; }
	#milenia-header .milenia-header-col:nth-child(2) { justify-self: center; }
	#milenia-header .milenia-header-col:nth-child(2) .milenia-header-items { width: auto !important; }
	#milenia-header .milenia-header-col:nth-child(3) { grid-column: 1 / -1; }
	#milenia-header .milenia-header-col .milenia-aligner-inner { padding: 6px 0 !important; }
	#milenia-header .milenia-header-items > div { margin-left: 0 !important; margin-right: 0 !important; }
	#milenia-header .milenia-header-menu-btn { min-height: 44px; padding: 12px 8px; }
	#milenia-header .milenia-logo img { max-width: 120px !important; }
	#milenia-header .milenia-btn--big { padding: 12px 22px !important; font-size: 12px !important; }

	/* Pulsante WhatsApp nascosto quando il menu e' aperto */
	.milenia-body--hidden-sidebar-opened .qlwapp { display: none; }

	/* Titoli di sezione (dimensioni inline di WPBakery, servono gli !important) */
	.milenia-section-heading .milenia-section-title { font-size: 34px !important; line-height: 1.2 !important; margin-bottom: 20px !important; text-wrap: balance; }
	.milenia-section-heading .milenia-section-subtitle { font-size: 13px !important; letter-spacing: 2px !important; text-wrap: balance; }
	/* occhielli su fondo chiaro: il beige del tema su bianco non si legge (contrasto 2,6:1) */
	.wpb-content-wrapper .vc_row:not(.vc_row-has-fill) .milenia-section-heading .milenia-section-subtitle { color: #8a6a4c !important; }
	.wpb-content-wrapper .vc_row:not(.vc_row-has-fill) p.milenia-section-description { color: #5f5f5f; }
	.corsi-home .milenia-section-heading.text-left { text-align: center !important; }

	/* Hero delle pagine interne: piu' basso, foto non fissa (iPhone non la supporta), titolo che sta nello schermo */
	.vc_row.intro-pages { min-height: 440px !important; background-attachment: scroll !important; background-position: center center !important; padding-top: 56px; padding-bottom: 56px; }
	.intro-pages:before { top: 0; left: 0; height: 100%; }
	.intro-pages .milenia-section-heading .milenia-section-title { font-size: 42px !important; line-height: 1.1 !important; overflow-wrap: break-word; }
	.intro-pages .milenia-section-subtitle { color: #fff !important; text-shadow: 0 1px 8px rgba(0, 0, 0, .7); }
	.intro-pages .milenia-section-heading .milenia-section-subtitle { font-size: 14px !important; letter-spacing: 3px !important; }

	/* Spazi verticali tra le sezioni (il tema mette 94px ovunque) */
	.wpb-content-wrapper .vc_row, .wpb-content-wrapper .vc_section { padding-bottom: 3.5rem; }
	.wpb-content-wrapper .vc_row-has-fill { padding-top: 3.5rem; }
	/* dopo una riga a tutta larghezza WPBakery mette un .vc_clearfix: senza il ">" toccherebbe anche la riga sotto l'hero */
	.wpb-content-wrapper > .vc_row-has-fill + .vc_clearfix + .vc_row, .wpb-content-wrapper > .vc_row-has-fill + .vc_clearfix + .vc_section { padding-top: 3.5rem; }
	.vc_row.wpb_row > .wpb_column.vc_column_container:not(:last-child) { margin-bottom: 2.5rem; }
	.vc_row > .wpb_column:has(> .vc_column-inner > .wpb_wrapper:empty) { display: none; }
	.vc_row.wpb_row > .wpb_column.vc_column_container:has(+ .wpb_column:last-child > .vc_column-inner > .wpb_wrapper:empty) { margin-bottom: 0; }
	.wpb-content-wrapper .vc_row:has(.owl-carousel--nav-huge), .wpb-content-wrapper .vc_section:has(.owl-carousel--nav-huge) { padding-bottom: 0; }

	/* Campi dei moduli a 16px: iPhone non ingrandisce la pagina quando li tocchi */
	input[type="text"], input[type="email"], input[type="tel"], input[type="search"], input[type="number"], select, textarea { font-size: 16px !important; }

	/* Blocco contatti a 3 riquadri: testo leggibile e titoli su una riga */
	.contact-home .milenia-entity-content.milenia-aligner { background-color: rgba(125, 88, 60, .92) !important; padding: 28px 16px; }
	.contact-home h2.milenia-entity-title { font-size: 26px !important; line-height: 1.25 !important; }
	.contact-home .milenia-entity-body, .contact-home .milenia-entity-body p, .contact-home .milenia-entity-body a { color: #fff !important; }
	.contact-home .milenia-entity-body a { text-decoration: underline; text-underline-offset: 3px; display: inline-block; padding: 4px 0; }

	/* Gallery: griglia a 2 colonne con la prima foto larga, invece di 5 miniature minuscole */
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-stage-outer { height: auto !important; }
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-stage { transform: none !important; transition: none !important; width: auto !important; display: grid !important; grid-template-columns: 1fr 1fr; gap: 4px; }
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-item { width: auto !important; margin: 0 !important; }
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-item.cloned,
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-nav { display: none !important; }
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-item:nth-child(1 of :not(.cloned)) { grid-column: span 2; }
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-item img { width: 100%; height: auto !important; aspect-ratio: 3 / 2; object-fit: cover; }
	.milenia-simple-slideshow--shortcode.owl-carousel--nav-huge .owl-stage::after { display: none !important; }

	/* Mappa: larga quanto lo schermo; finche' iubenda la blocca (cookie non accettati) e' vuota, quindi la nascondo */
	.mappa iframe { width: 100% !important; min-width: 0 !important; height: 340px !important; display: block; }
	.mappa iframe[src*="iubenda.com/cookie_solution/empty"] { display: none !important; }

	/* Riquadri di testo su fondo grigio (Ospitalita' italiana, Il mare a due passi...) */
	.milenia-entities--style-3 .milenia-entity-content { padding: 32px 20px !important; }
	.milenia-entities--style-3 .milenia-entity-body { padding: 0 !important; }
	.milenia-entities--style-3 .milenia-entity-body p { color: #5f5f5f; }
	.milenia-entities--style-3 .milenia-entity-title { font-size: 30px; }

	/* Card delle attivita': cornice allineata e testo piu' contrastato */
	.corsi-home .milenia-entities--style-1 .milenia-entity { margin: 12px 0 0 12px; }
	.corsi-home .milenia-entities--style-1 .milenia-entity::after { top: -12px; left: -12px; right: 12px; bottom: 12px; }
	.corsi-home .milenia-entities--style-1 .milenia-entity-content { background: #9c6248; padding: 22px 22px 26px; }
	.corsi-home .milenia-entity-body p { font-size: 15px; }

	/* Footer: logo centrato, i due menu affiancati, spazio per i pulsanti flottanti sopra il copyright */
	#milenia-footer .logo-footer { text-align: center; }
	#milenia-footer .logo-footer img { max-width: 190px; margin: 0 auto; display: block; }
	#milenia-footer .milenia-grid--cols-4 > .milenia-grid-item.widget_nav_menu { flex: 0 0 50% !important; max-width: 50% !important; }
	#milenia-footer .widget_nav_menu li { margin-bottom: 0; }
	#milenia-footer .widget_nav_menu li a { display: inline-block; padding: 8px 0; }
	#milenia-footer .milenia-footer-row--thin .milenia-footer-row--inner { padding-bottom: 90px !important; }

	/* ---------- Home ---------- */

	/* Slider: lo slider non ha un layout mobile, sistemo i livelli (meglio ancora: breakpoint mobile nell'editor di Slider Revolution) */
	sr7-module[data-alias="home-1-slider-with-header-1"] #SR7_21_1-71-11 { left: 0 !important; top: 0 !important; width: 100% !important; height: 100% !important; }
	sr7-module[data-alias="home-1-slider-with-header-1"] sr7-txt { left: 0 !important; right: 0 !important; width: 100% !important; text-align: center !important; white-space: normal !important; padding: 0 20px !important; box-sizing: border-box; }
	sr7-module[data-alias="home-1-slider-with-header-1"] #SR7_21_1-71-1 { font-size: 12px !important; line-height: 18px !important; letter-spacing: 3px !important; top: calc(50% - 110px) !important; }
	sr7-module[data-alias="home-1-slider-with-header-1"] #SR7_21_1-71-2 { font-size: 36px !important; line-height: 42px !important; top: calc(50% - 82px) !important; }
	sr7-module[data-alias="home-1-slider-with-header-1"] #SR7_21_1-71-5 { top: calc(50% + 24px) !important; }
	sr7-module[data-alias="home-1-slider-with-header-1"] sr7-prl { display: none !important; }

	/* Corsi di cucina: sfondo intero invece di un dettaglio ingrandito, testo a misura di telefono */
	.cucina-home .vc_parallax-inner { height: 100% !important; top: 0 !important; background-position: center center !important; }
	.cucina-home p, .cucina-home p.milenia-section-description { font-size: 16px !important; line-height: 26px !important; }

	/* Carosello alloggi: altezza costante tra una scheda e l'altra */
	.milenia-grid.owl-carousel .mphb-room-type .milenia-entity-header { min-height: 112px; }

	/* ---------- Chi siamo / Attivita' ---------- */

	.tre-spighe h3 { font-size: 24px; line-height: 1.35; }
	.vc_section + .vc_row .wpb_text_column h4 { font-size: 21px; line-height: 1.55; }

	/* ---------- Contatti ---------- */

	.form-contatti .milenia-icon-boxes .milenia-icon-box-title { font-size: 19px; line-height: 1.4; overflow-wrap: anywhere; }
	.form-contatti .wpcf7-form label { display: block; width: 100%; }
	.form-contatti .wpcf7-form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance) { width: 100%; max-width: 100%; min-height: 48px; }
	.form-contatti .wpcf7-form textarea.wpcf7-form-control { height: 160px; }
	.form-contatti .wpcf7-form .wpcf7-submit { width: 100%; min-height: 50px; font-size: 14px; background-color: #ae745a; border-color: #ae745a; color: #fff; }
	.form-contatti .wpcf7-form .wpcf7-submit:disabled { opacity: .5; }
	.form-contatti .wpcf7-acceptance input[type="checkbox"] { width: 20px; height: 20px; margin-right: 8px; vertical-align: -4px; accent-color: #ae745a; }

	/* ---------- Schede alloggio ---------- */

	.single-mphb_room_type .milenia-content { padding-top: 40px; padding-bottom: 50px; }
	.single-mphb_room_type .col-lg-9 > .milenia-section:first-child { padding-bottom: 40px; }
	.milenia-breadcrumb { padding-top: 10px; padding-bottom: 10px; }
	.milenia-breadcrumb-path, .milenia-breadcrumb-path a { font-size: 12px; letter-spacing: .5px; line-height: 1.8; }
	.single .milenia-entity-single > .milenia-entity-content { padding-right: 0 !important; }
	.single-mphb_room_type h1.milenia-entity-title { font-size: 40px; line-height: 1.15; }
	.single-mphb_room_type h2.mphb-details-title, .single-mphb_room_type h2.mphb-calendar-title, .single-mphb_room_type h2.mphb-reservation-form-title { font-size: 30px; line-height: 1.2; margin-bottom: 16px; }
	.la-desc .la-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.la-desc .la-grid .la-tile:last-child:nth-child(odd) { grid-column: 1 / -1; }
	.la-desc .la-tile span { text-wrap: balance; }
	.mphb-calendar .datepick-ctrl { align-items: center; }
	.single-mphb_room_type .mphb-calendar { margin-bottom: 40px; }
	.mphb-booking-form input.mphb-datepick { height: 46px; }
	.mphb-booking-form .mphb-reserve-btn { width: 100%; min-height: 48px; font-size: 13px; }
	.single-mphb_room_type .milenia-entity-single.milenia-entity--post.milenia-entity--style-1::after { display: none; }
	.single-mphb_room_type .milenia-entity-footer { display: none; }
	.single-mphb_room_type .milenia-entity-single { margin-bottom: 0; }
	aside#milenia-sidebar .widget_search { display: none; }
	.indicazioni-widget, .indicazioni-widget address { margin-left: 0; padding-left: 0; }
	.indicazioni-widget .row { margin-left: 0; margin-right: 0; }
	.indicazioni-widget a { display: inline-block; padding: 10px 0; }
	.milenia-banner-actions .milenia-btn--link { display: inline-block; padding: 12px 10px; }
}

/* Telefoni piccoli: titolo dello slider su una riga */
@media (max-width: 380px) {
	sr7-module[data-alias="home-1-slider-with-header-1"] #SR7_21_1-71-2 { font-size: 31px !important; line-height: 38px !important; }
}

/* Telefoni molto piccoli (320-370px): logo e selettore lingua non si toccano */
@media (max-width: 374px) {
	#milenia-header .milenia-logo img { max-width: 100px !important; }
	.trp-language-switcher.trp-floating-switcher { right: 2px !important; transform: scale(.85); transform-origin: top right; }
}
