#eltdf-back-to-top{right:35px!important;bottom:28px!important}.eltdf-light-header .eltdf-page-header>div:not(.eltdf-sticky-header):not(.fixed) .eltdf-side-menu-button-opener,.eltdf-light-header .eltdf-page-header>div:not(.eltdf-sticky-header):not(.fixed) .eltdf-side-menu-button-opener svg.eltdf-menu-opener line{color:#a59156!important;stroke:#a59156!important}.prenota>a{color:#fff!important;background-color:#a59156;padding:9px 11px!important;margin:9px 18px!important;border:1px solid #a59156!important;text-align:center!important}.prenota>a:hover{background-color:transparent!important;border:1px solid #a59156!important;color:#000!important}.prenota>a:hover>.item_outer>.item_text:after,.prenota>a:hover>.item_outer>.item_text:before{display:none!important}.prenota.active>a,.prenota.current-menu-ancestor>a,.prenota.current-menu-item>a,.prenota.current_page_item>a{text-decoration:none!important;border-bottom:1px solid #a59156!important}.prenota.current-menu-item>a::after,.prenota.current-menu-item>a::before,.prenota.current-menu-item>a>.item_outer>.item_text::after,.prenota.current-menu-item>a>.item_outer>.item_text::before{display:none!important;content:none!important}.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota a.current>span::after,.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota a.current>span::before,.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota a>span::after,.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota a>span::before,.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota.eltdf-active-item a>span::after,.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota.eltdf-active-item a>span::before{display:none!important;content:none!important;visibility:hidden!important;opacity:0!important;transform:scale(0,0)!important;-webkit-transform:scale(0,0)!important}.eltdf-mobile-header .eltdf-mobile-nav ul li.prenota a>span{position:relative!important}.vc_custom_1650397800975{background-color:#fff!important}.trp-language-switcher-container{text-align:center!important}.wpcf7 form .wpcf7-response-output{color:#000!important}.eltdf-mobile-header .eltdf-mobile-logo-wrapper img{height:85%!important;padding-top:5px!important}.octobook>form{display:flex;align-items:center;justify-content:center}.octobooksubmit>div>input{align-items:flex-start;appearance:button;block-size:54px;caret-color:white;color:#fff;column-rule-color:white;cursor:pointer;height:54px;letter-spacing:1.6px;perspective-origin:117.656px 27px;text-align:center;text-decoration:none solid white;text-emphasis-color:white;text-size-adjust:100%;text-transform:uppercase;transform-origin:117.664px 27px;user-select:none;white-space:pre;width:235.328px;background:#af9751;border:0 none #fff;font-size:700 16px/50px;margin:20px 0 0;outline:white none 0;padding:0;transition:all .3s ease 0s}.textdate{block-size:108.391px;box-sizing:border-box;caret-color:rgb(51,51,51);color:#333;column-rule-color:rgb(51,51,51);cursor:pointer;height:108.391px;max-inline-size:100%;max-width:100%;perspective-origin:117.656px 54.1875px;text-align:left;text-decoration:none solid rgb(51,51,51);text-emphasis-color:rgb(51,51,51);text-size-adjust:100%;transform-origin:117.664px 54.1953px;white-space:nowrap;width:235.328px;border:0 none #333;outline:rgb(51,51,51) none 0;padding:0 0 10px;overflow:hidden!important}.textdate>div{block-size:90.5938px;box-sizing:border-box;caret-color:rgb(51,51,51);color:#333;column-rule-color:rgb(51,51,51);cursor:pointer;display:inline-block;height:90.5938px;perspective-origin:117.656px 45.2969px;text-align:left;text-decoration:none solid rgb(51,51,51);text-emphasis-color:rgb(51,51,51);text-size-adjust:100%;transform-origin:117.664px 45.2969px;white-space:nowrap;width:235.328px;background:#fff none repeat scroll 0 0/auto padding-box border-box;border:0 none #333;font-size:11.2px/23.8px;outline:rgb(51,51,51) none 0}.textdate table{block-size:90.5938px;caret-color:rgb(51,51,51);color:#333;column-rule-color:rgb(51,51,51);cursor:pointer;height:90.5938px;min-block-size:53px;min-height:53px;perspective-origin:117.656px 45.2969px;text-align:left;text-decoration:none solid rgb(51,51,51);text-emphasis-color:rgb(51,51,51);text-size-adjust:100%;transform-origin:117.664px 45.2969px;white-space:nowrap;width:235.328px;border-top:1px solid #eaeaea;border-right:0px solid #eaeaea;border-bottom:0 solid #eaeaea;border-left:1px solid #eaeaea;border-spacing:0px 0px;font-size:11.2px/23.8px;outline:rgb(51,51,51) none 0}.textdate tbody{block-size:89.5938px;box-sizing:border-box;caret-color:rgb(51,51,51);color:#333;column-rule-color:rgb(51,51,51);cursor:pointer;height:89.5938px;perspective-origin:117.156px 44.7969px;text-align:left;text-decoration:none solid rgb(51,51,51);text-emphasis-color:rgb(51,51,51);text-size-adjust:100%;transform-origin:117.164px 44.7969px;white-space:nowrap;width:234.328px;border:0 none #eaeaea;font-size:11.2px/23.8px;outline:rgb(51,51,51) none 0}.textdate tr{block-size:44.7969px;box-sizing:border-box;caret-color:rgb(51,51,51);color:#333;column-rule-color:rgb(51,51,51);cursor:pointer;height:44.7969px;perspective-origin:117.156px 22.3906px;text-align:left;text-decoration:none solid rgb(51,51,51);text-emphasis-color:rgb(51,51,51);text-size-adjust:100%;transform-origin:117.164px 22.3984px;vertical-align:middle;white-space:nowrap;width:234.328px;border:0 none #eaeaea;font-size:11.2px/23.8px;outline:rgb(51,51,51) none 0}.textdate td.day{background-color:#fff;block-size:89.5938px;box-sizing:border-box;cursor:pointer;height:89.5938px;min-inline-size:32px;min-width:32px;perspective-origin:40.6094px 44.7969px;text-align:center;text-size-adjust:100%;text-transform:uppercase;transform-origin:40.6172px 44.7969px;vertical-align:middle;white-space:nowrap;width:81.2344px;border-top:0 solid #eaeaea;border-right:1px solid #eaeaea;border-bottom:1px solid #eaeaea;border-left:0 solid #eaeaea;font-size:26px/23.8px;padding:10px 20px}.textdate td:nth-child(2){background-color:#fff;block-size:44.7969px;box-sizing:border-box;cursor:pointer;height:44.7969px;perspective-origin:76.5469px 22.3906px;text-align:left;text-size-adjust:100%;text-transform:uppercase;transform-origin:76.5469px 22.3984px;vertical-align:middle;white-space:nowrap;width:153.094px;border-top:0 solid #eaeaea;border-right:1px solid #eaeaea;border-bottom:1px solid #eaeaea;border-left:0 solid #eaeaea;font-size:14px/23.8px;padding:10px 20px}.textdate tr:first-child td:nth-child(2){border-bottom:1px solid #eaeaea!important}.textdate td>span.month{box-sizing:border-box;cursor:pointer;perspective-origin:0px 0px;text-align:left;text-size-adjust:100%;text-transform:uppercase;transform-origin:0px 0px;white-space:nowrap;font-size:14px/23.8px}.textdate td>span.year{background-color:#fff;box-sizing:border-box;caret-color:rgb(144,144,144);color:#909090;column-rule-color:rgb(144,144,144);cursor:pointer;perspective-origin:0px 0px;text-align:left;text-decoration:none solid rgb(144,144,144);text-emphasis-color:rgb(144,144,144);text-size-adjust:100%;text-transform:uppercase;transform-origin:0px 0px;white-space:nowrap;border:0 none #909090;font-size:14px/23.8px;outline:rgb(144,144,144) none 0}.textdate td.weekday{background-color:#fff;block-size:44.7969px;box-sizing:border-box;cursor:pointer;height:44.7969px;min-inline-size:70px;min-width:70px;perspective-origin:76.5469px 22.3906px;text-align:left;text-size-adjust:100%;text-transform:uppercase;transform-origin:76.5469px 22.3984px;vertical-align:middle;white-space:nowrap;width:153.094px;border-top:0 solid #eaeaea;border-right:1px solid #eaeaea;border-bottom:1px solid #eaeaea;border-left:0 solid #eaeaea;font-size:14px/23.8px;padding:10px 20px}.octobooksubmit>div>input{background:#a59156!important;width:180px!important;height:48px!important;font-family:'Josefin Sans','caviar dreams',Quicksand,sans-serif!important;margin-bottom:56px!important}#ui-datepicker-div-octorate td a,#ui-datepicker-div-octorate td span{padding:0!important}.octobookpax.Large>div>select{font-family:'Josefin Sans',sans-serif!important;font-size:1.1em!important;padding:0 15px!important;height:48px!important;line-height:48px!important;text-align:center;background-color:#fff!important;box-sizing:border-box!important;border-top:1px solid #eaeaea!important;border-left:1px solid #eaeaea!important;border-right:0px solid transparent!important;border-bottom:0 solid transparent!important}.octobookpax.Large{margin-top:-56px}#ui-datepicker-div-octorate td,#ui-datepicker-div-octorate th{border:hidden}.eltdf-page-footer .widget{margin:5px 0 0 5px}.page-id-2812 .eltdf-section-title-holder{margin-top:-75px}.eltdf-portfolio-single-holder .eltdf-ps-info-holder{display:none}.eltdf-container-inner{padding:0 0 42px 0!important}.vc_custom_1650277637253{padding-top:0!important;padding-bottom:70px!important;margin-top:-90px}.page-id-3392 .vc_custom_1650351553678{padding-top:283px!important;padding-bottom:258px!important;background-position-y:-197px!important;background-position-x:-488px!important;background-size:auto}.page-id-3392 .eltdf-countdown{width:100%;color:#000}.wpcf7-form-control.wpcf7-date,.wpcf7-form-control.wpcf7-number,.wpcf7-form-control.wpcf7-quiz,.wpcf7-form-control.wpcf7-select,.wpcf7-form-control.wpcf7-text,.wpcf7-form-control.wpcf7-textarea,input[type=email],input[type=password],input[type=text]{color:#000;border-color:#a59156!important}.wpcf7-form-control-wrap{color:#000}.eltdf-btn.eltdf-btn-outline{color:#000}.eltdf-btn.eltdf-btn-outline:not(.eltdf-btn-custom-hover-color):hover{color:#000!important}.eltdf-title-holder.eltdf-centered-type .eltdf-page-title{display:none}.eltdf-title-holder.eltdf-centered-type .eltdf-title-inner .eltdf-title-holder-inner .eltdf-title-decor{display:none}.mailto-footer{color:#000!important}.mailto-footer:hover{color:#a59156!important}.p-iva{color:#000!important}.p-iva:hover{color:#000!important}@media (min-width:900px){div.eltdf-eh-item.pulsante_booking.eltdf-horizontal-alignment-center{display:none}}@media (max-width:900px){div.eltdf-eh-item.unavilla_calendar{display:none}}@media (max-width:900px){.vc_custom_1651006160899{padding-left:0!important}.wpb_column.vc_column_container.amalfi .vc_column-inner,.wpb_column.vc_column_container.contatti .vc_column-inner,.wpb_column.vc_column_container.design .vc_column-inner,.wpb_column.vc_column_container.solarium .vc_column-inner{padding-top:200px!important;padding-left:0!important;padding-right:0!important}.wpb_column.vc_column_container.reach .vc_column-inner{padding-top:200px!important;padding-left:0!important;padding-right:0!important}.wpb_column.vc_column_container.mare .vc_column-inner{padding-top:100px!important;padding-bottom:100px!important;padding-left:0!important;padding-right:0!important}:is(body:has(.design),body:has(.contatti),body:has(.solarium),body:has(.amalfi),body:has(.reach),body:has(.mare)) .eltdf-content .eltdf-content-inner>.eltdf-full-width>.eltdf-full-width-inner{padding-top:0!important}.wpb_column.vc_column_container.amalfi,.wpb_column.vc_column_container.contatti,.wpb_column.vc_column_container.design,.wpb_column.vc_column_container.mare,.wpb_column.vc_column_container.reach,.wpb_column.vc_column_container.solarium{padding-left:0!important;padding-right:0!important}.eltdf-full-width .eltdf-full-width-inner{padding-left:0!important;padding-right:0!important}.eltdf-grid-row{margin-left:0!important;margin-right:0!important}.eltdf-container-inner{width:100%;margin:0!important;padding:0 0 42px 0!important}.eltdf-grid-row{margin:0 45px 20px 45px}.eltdf-ps-navigation{margin:0 auto;width:calc(100% - 115px)}.eltdf-breadcrumbs-info>div[itemprop=breadcrumb]{font-size:1rem!important}.eltdf-title-info{text-align:center!important}.eltdf-row-grid-section>.vc_custom_1573574062902{padding-top:50px!important;padding-bottom:10px!important}.eltdf-row-grid-section>.vc_custom_1649861968502{padding-bottom:0!important}.eltdf-row-grid-section>.vc_custom_1649756201757{padding-bottom:70px!important}.eltdf-row-grid-section>.vc_custom_1573574980934{padding-bottom:70px!important}.eltdf-row-grid-section>.vc_custom_1650113660612{padding-top:0!important;padding-bottom:50px!important}.vc_custom_1650277637253{padding-top:0!important;padding-bottom:70px!important;margin-top:0}.eltdf-footer-bottom-inner.eltdf-grid>.eltdf-grid-row{margin:0!important}.eltdf-svg-pattern-holder{display:none}.page-id-4730 .eltdf-elements-holder .eltdf-eh-item-content{margin-left:-25px;margin-right:-25px}.page-id-4056 .eltdf-elements-holder .eltdf-eh-item-content{margin-left:-25px;margin-right:-25px}.page-id-4723 .eltdf-elements-holder .eltdf-eh-item-content{margin-left:-25px;margin-right:-25px}.page-id-4151 .eltdf-elements-holder .eltdf-eh-item-content{margin-left:-25px;margin-right:-25px}.vc_row.design2{padding-top:70px!important}.vc_row:has(>.amalfi.wpb_column),.vc_row:has(>.solarium.wpb_column){padding-top:70px!important}.page-id-3392 .vc_custom_1650351553678{padding-top:287px!important;padding-bottom:108px!important;background-position-y:-1094px;background-position-x:-2091px;background-size:1509px}}.cmplz-btn.cmplz-accept,.cmplz-btn.cmplz-deny,.cmplz-btn.cmplz-save-preferences,.cmplz-btn.cmplz-view-preferences{border-radius:0!important;font-family:'Josefin Sans',sans-serif!important}@media (max-width:768px){.cmplz-cookiebanner{width:85%!important;left:50%!important;transform:translateX(-50%)!important;bottom:15px!important;padding:10px 15px!important;border-radius:12px!important;grid-template-rows:auto!important;gap:5px!important}.cmplz-body,.cmplz-header,.cmplz-message,.cmplz-message p{margin:0!important;padding:0!important}.cmplz-divider{display:none!important}.cmplz-btn.cmplz-view-preferences{display:none!important}.cmplz-buttons{display:flex!important;flex-direction:column-reverse!important;align-items:center!important;gap:8px!important;margin-top:10px!important}.cmplz-btn.cmplz-accept,.cmplz-btn.cmplz-deny{width:70%!important;max-width:200px!important;padding:8px!important;font-size:13px!important}}@media (max-width:1024px) and (max-height:720px){.eltdf-mobile-header .eltdf-mobile-nav .eltdf-grid{padding:10px 0}.eltdf-mobile-header .eltdf-mobile-nav ul li a,.eltdf-mobile-header .eltdf-mobile-nav ul li h6{padding:6px 0}.eltdf-mobile-header .eltdf-mobile-nav ul ul li a{line-height:24px}}
@media (min-width:901px){.vc_row:has(>.solarium.wpb_column){padding-top:40px!important}}

/* Regole del widget Octorate spostate qui dal pannello di Octorate il 19/08/2026.
   Nel pannello restano solo i due @import che riparano un difetto loro (i fogli
   del widget chiesti al dominio del cliente invece che al proprio).
   ATTENZIONE: finche' unavilla.it e' il sito vivo, queste regole devono restare
   ANCHE nel pannello, altrimenti il vecchio sito le perde. Vanno tolte da li'
   il giorno del cutover, non prima. */
.octobookcheckin>div>div,.octobookcheckout>div>div{height:90px!important}
/* Numero di adulti selezionabili: solo 1 e 2 */
div.octobookpax select[name=pax] option:nth-child(n+3){display:none!important}
/* Il tooltip delle notti creava spazi vuoti */
div.octorate-tooltip{display:none!important;opacity:0!important;visibility:hidden!important;height:0!important;width:0!important;padding:0!important}
.ui-datepicker,.ui-datepicker-multi,.ui-datepicker-div-octorate,.ui-datepicker *,.ui-datepicker-multi *,.ui-datepicker-div-octorate *{font-family:'Josefin Sans',sans-serif!important}

/* Calendario del widget Octorate: solo i colori, nient'altro.
   Di serie Octorate usa il blu #5570F1 per le date scelte, l'azzurro #dde2fc
   per le notti intermedie e il nero per le frecce dei mesi. Qui diventano
   l'oro del sito e la sua tinta chiara. Forme, spaziature, bordi e ombre
   restano quelli di Octorate: un tentativo di ridisegnarli e' stato annullato
   il 19/08/2026 perche' snaturava il calendario.
   ID ripetuto due volte: le regole di Octorate arrivano dopo questo foglio
   (l'@import del pannello si risolve nel body) e usano gia' !important,
   quindi va superata la loro specificita', non pareggiata. */
#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-range-start a,#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-range-end a{background-color:#a59156!important}
#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-range-start{background:linear-gradient(90deg,#fff 50%,rgba(165,145,86,0) 50%,#f2ead9 100%)}
#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-range-end{background:linear-gradient(270deg,#fff 50%,rgba(165,145,86,0) 50%,#f2ead9 100%)}
#ui-datepicker-div-octorate#ui-datepicker-div-octorate .ui-datepicker-prev span{border-right-color:#a59156!important}
#ui-datepicker-div-octorate#ui-datepicker-div-octorate .ui-datepicker-next span{border-left-color:#a59156!important}

/* Le notti in mezzo al soggiorno: la barra azzurra fra le due date scelte.
   Octorate la disegna con `td.ui-state-highlight{background:#dde2fc}` e la
   stessa tinta sull'<a> dentro; qui diventa la crema #f2ead9, cioe' la
   stessa mezza cella che si vede gia' a fianco del cerchio d'oro.

   Il 23/08/2026 questa regola era stata tolta credendola inerte, perche'
   all'apertura del calendario `ui-state-highlight` risulta sull'<a>. E' vero
   solo per la cella di OGGI, che jQuery UI marca cosi'. Per le notti
   intermedie la classe la mette Octorate sul <td>: in `form.js`,
   `u.addClass("ui-state-highlight")` dove `u` e' la cella, e il ritorno
   `[!0,"ui-state-highlight"]` di `beforeShowDay`, che jQuery UI applica al
   <td>. Quindi il selettore `td.ui-state-highlight` prende solo le notti
   intermedie e non tocca la cella di oggi: e' il motivo per cui la regola
   sotto e' sicura, ed e' il motivo per cui il 24/08/2026 la barra era
   ancora blu. Verificare sempre su un periodo SELEZIONATO, non a calendario
   appena aperto. */
#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-state-highlight,#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-state-highlight .ui-state-default{background:#f2ead9!important}

/* La data di oggi era invisibile: bianca su grigio chiaro.
   All'apertura Octorate marca la cella di oggi con
   ui-state-highlight + ui-state-active + ui-state-hover e le da' lo sfondo
   #ededed, ma il testo restava bianco. Il bianco non e' di Octorate: arriva
   dal nostro bundle del tema, `a, p a{color:#fff}` in m-9fec526d64.css. Le
   altre date si salvano perche' .ui-state-default le porta a #555; su quella
   combinazione di stati vinceva il bianco. Misurato il 23/08/2026 sulla home.

   Serve il doppio ID perche' le regole di Octorate arrivano dopo questo
   foglio e usano !important (vedi la nota sulla specificita' qui sopra).
   L'esclusione di ui-range-start/end lascia intatta la data scelta, che resta
   bianca sull'oro come tutte le altre selezionate. */
#ui-datepicker-div-octorate#ui-datepicker-div-octorate td.ui-datepicker-today:not(.ui-range-start):not(.ui-range-end)>a{color:#212121!important}

/* Immagini di testata: versione piu' leggera sotto i 900px.
   Il tema imposta background-image inline sul .vc_parallax-inner leggendo
   data-vc-parallax-image, quindi qui serve !important per superarlo.
   Sopra i 900px vale l'attributo nell'HTML (width=1800, in AVIF).
   Misurato il 19/08/2026 su unavilla.it, il caso peggiore (la mappa di
   Come raggiungerci): 535 KB in WebP -> 249 KB in AVIF a 1200px. */
@media (max-width:900px){
.design .vc_parallax-inner{background-image:url(/cdn-cgi/image/width=1200,format=auto/https://img.unavilla.it/site/design/design-04.jpg)!important}
.amalfi .vc_parallax-inner{background-image:url(/cdn-cgi/image/width=1200,format=auto/https://img.unavilla.it/site/amalfi/amalfi-07.jpg)!important}
.solarium .vc_parallax-inner{background-image:url(/cdn-cgi/image/width=1200,format=auto/https://img.unavilla.it/site/solarium/solarium-13.jpg)!important}
.contatti .vc_parallax-inner{background-image:url(/cdn-cgi/image/width=1200,format=auto/https://img.unavilla.it/site/contatti/contatti-01.jpg)!important}
.reach .vc_parallax-inner{background-image:url(/cdn-cgi/image/width=1200,format=auto/https://img.unavilla.it/site/come-raggiungerci/mappa-01.jpg)!important}
}

/* ---- Inquadratura delle immagini di testata --------------------------------
   Un numero per pagina: il secondo valore di background-position.
   0% = cima della foto, 100% = fondo. Alzarlo fa salire l'immagine e scopre
   quello che sta sotto. 0% equivale al comportamento predefinito del tema.

   background-size resta "cover" e non va cambiato: garantisce che l'immagine
   copra sempre tutto il riquadro. Il 19/08/2026 era stato provato
   "auto 120%" per creare margine di manovra, ma quello garantisce la
   copertura solo in altezza: su un monitor 2K l'immagine risultava larga
   2052px contro un riquadro di 2575 e si ripeteva in orizzontale.

   Il margine per spostarsi esiste solo quando, dopo il ritaglio, l'immagine
   e' piu' alta del riquadro: succede sugli schermi larghi (su un 2K sono
   577px di gioco) e non su quelli stretti, dove l'immagine e' vincolata in
   altezza e il numero non ha effetto. E' un limite di "cover", non un errore.

   Serve !important: il tema imposta lo sfondo come stile inline. */
.design .vc_parallax-inner{background-size:cover!important;background-position:50% 0%!important;background-repeat:no-repeat!important}
.amalfi .vc_parallax-inner{background-size:cover!important;background-position:50% 75%!important;background-repeat:no-repeat!important}
.solarium .vc_parallax-inner{background-size:cover!important;background-position:50% 70%!important;background-repeat:no-repeat!important}
.contatti .vc_parallax-inner{background-size:cover!important;background-position:50% 0%!important;background-repeat:no-repeat!important}
.reach .vc_parallax-inner{background-size:cover!important;background-position:50% 0%!important;background-repeat:no-repeat!important}


/* Testo selezionato. Il tema imposta ::selection con sfondo bianco E testo
   bianco (in m-9fec526d64.css), quindi selezionando un
   testo qualsiasi questo spariva. Si notava soprattutto nel modulo contatti,
   dove selezionare per riscrivere e' naturale, ma il difetto era su tutto il
   sito. Segnalato dall'utente il 20/08/2026.
   Oro chiaro con testo quasi nero: rapporto di contrasto 11,5:1.
   !important perche' sulle pagine camera b-50e701cc14.css viene caricato
   dopo questo foglio. */
::selection{background:#e0d5b7!important;color:#1f1d1a!important}
::-moz-selection{background:#e0d5b7!important;color:#1f1d1a!important}

/* Pan & zoom appena percettibile sulle foto dello slider della home.
   Misurato il 23/08/2026 sul deployato: una slide ogni ~4950 ms, con
   dissolvenza `opacity 1.4s ease-in-out` sul wrapper .hsd-bg. L'animazione
   dura 6,4s per coprire anche l'uscita.

   Sta sull'IMG e non su .hsd-bg perche' il tema usa gia' un transform sul
   wrapper per la transizione: animarlo li' significherebbe sovrascriverlo.

   Solo `transform`, mai width/height o top/left: il transform non partecipa
   al layout, quindi il CLS resta 0 (vale il 25% del punteggio, §16) e
   l'animazione gira sulla GPU senza ricalcoli di stile.

   La scala parte da 1 e sale a 1.04, non scende mai sotto: sotto 1
   l'immagine non coprirebbe piu' il riquadro e si vedrebbero i bordi.
   A 1.04 il margine e' del 2% per lato, quindi lo spostamento dello 0,7%
   resta abbondantemente dentro. Verificato: scala minima osservata 1.0041.

   .last-active e' incluso di proposito: durante gli 1,4s di dissolvenza la
   slide uscente ha perso .active, e senza questa regola tornerebbe di scatto
   a scala 1 mentre e' ancora visibile. Verificato che invece prosegue fino a
   1.04 e l'entrante riparte da 1.0005.

   La direzione alternata va assegnata con la scorciatoia completa, non con
   il solo `animation-name`: quest'ultimo si applica anche quando la slide non
   e' attiva, dove nessuna durata e' definita, quindi vale 0s e la foto scatta
   subito a fine corsa restandoci. La slide 2 risultava ferma e ingrandita.
   Sintomo per riconoscerlo: quella slide mostra solo due valori di scala, 1 e
   quello finale, mentre le altre hanno tutti gli intermedi. */
@keyframes uv-kenburns{from{transform:scale(1)}to{transform:scale(1.06) translate3d(.7%,-.4%,0)}}
@keyframes uv-kenburns-b{from{transform:scale(1)}to{transform:scale(1.06) translate3d(-.7%,.4%,0)}}
.hsd-bg.active .hsd-bg-img,.hsd-bg.last-active .hsd-bg-img{animation:uv-kenburns 6.4s ease-out both}
.hsd-bgs .hsd-bg:nth-child(2n).active .hsd-bg-img,.hsd-bgs .hsd-bg:nth-child(2n).last-active .hsd-bg-img{animation:uv-kenburns-b 6.4s ease-out both}
@media (prefers-reduced-motion:reduce){
.hsd-bg.active .hsd-bg-img,.hsd-bg.last-active .hsd-bg-img{animation:none}
}

/* h1: aspetto invariato rispetto al tag che sostituiscono.
   Fino al 23/08/2026 nessuna delle pagine aveva un <h1>: il tema usa <h2>
   per i titoli di sezione, <h3> sulle camere e sulle pagine legali, <h4> su
   contatti e posizione. Il difetto viene dall'export di WordPress e c'e'
   anche sul sito vivo.

   Promuovere il titolo a <h1> senza compensare cambierebbe la resa, perche'
   nel tema la dimensione dipende dal TAG e non dalla classe:
     h1 48px/1.27em/.22em   h2 41px/1.31em/.23em
     h3 36px/1.3em/.23em    h4 28px/1.39em/.23em
   e sotto i 680px: h1 31/41, h2 26/36, h3 22/31, h4 19/28.
   Queste classi rimettono i valori del tag originale. Verificato in browser
   confrontando 16 proprieta' calcolate piu' la geometria prima e dopo la
   promozione: zero differenze.

   ATTENZIONE: sulla home il titolo ha classe .hsd-heading, che definisce da
   se' font-size con un clamp() in uno <style> inline della pagina. Li' NON
   va aggiunta nessuna di queste classi: avendo specificita' maggiore
   sovrascriverebbe il clamp e il titolo passerebbe da 104px a 41px. */
.uv-as-h2{font-size:41px;line-height:1.31em;letter-spacing:.23em}
.uv-as-h3{font-size:36px;line-height:1.3em;letter-spacing:.23em}
.uv-as-h4{font-size:28px;line-height:1.39em;letter-spacing:.23em}
@media only screen and (max-width:680px){
.uv-as-h2{font-size:26px;line-height:36px}
.uv-as-h3{font-size:22px;line-height:31px}
.uv-as-h4{font-size:19px;line-height:28px}
}

/* Solo per /booking/ e /en/booking/, che sono gusci attorno all'iframe di
   Octorate e non hanno alcun testo proprio (§7). L'h1 c'e' per la struttura
   della pagina e per i lettori di schermo, e ripete il titolo della pagina:
   non e' testo aggiuntivo nascosto ai motori. */
.uv-h4-gap{margin:0 0 25px}
.uv-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Frecce dello slider in cima alle pagine camera.
   Il tema le disegna come un chevron di 1px in oro (#a59156, la regola sta
   in m-d98d5fa9dc.css insieme a un'ottantina di altri selettori) alto 46px,
   sopra la foto: su una parete chiara o sul cielo spariva. Qui diventano
   bianche con un'ombra portata, che regge su qualsiasi foto, e tornano oro
   al passaggio del mouse.

   Il selettore ripete tutta la catena del tema perche' sulle pagine camera
   l'ultimo foglio caricato NON e' questo ma b-50e701cc14.css (§3): meglio
   non pareggiare la specificita', superarla.

   Cambia solo l'aspetto della freccia: posizione (left/right 20px, top 50%)
   e animazione .eltdf-popout restano quelle del tema. */
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-prev,
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-next{color:#fff;filter:drop-shadow(0 0 2px rgba(0,0,0,.5)) drop-shadow(0 2px 7px rgba(0,0,0,.45))}
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-prev:hover,
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-next:hover{color:#c9ab81}
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-prev>span,
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-next>span{font-size:56px}
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-prev>span svg,
.eltdf-portfolio-single-holder.eltdf-ps-slider-layout .eltdf-ps-image-holder .eltdf-owl-slider .owl-nav .owl-next>span svg{stroke-width:1.6px}

/* Scheda sintetica in cima alle pagine camera: metratura, ospiti, wi-fi e,
   dove c'e', idromassaggio.

   Fino al 24/08/2026 era una sola immagine per camera (camera-zen-08.svg e
   compagne): icone e numeri erano tutti tracciati vettoriali, quindi il testo
   non si selezionava, non si traduceva e con alt="" non lo leggeva nessuno,
   ne' un lettore di schermo ne' Google. Ed era in inglese anche sulle pagine
   italiane. Ora le icone sono cinque SVG separati e il testo e' testo.

   Le icone condividono la stessa banda verticale nel viewBox (16..180), che
   e' quella dell'immagine di partenza: a parita' di height le proporzioni e
   l'allineamento fra loro restano quelli originali, e le basi si allineano
   da sole senza scriverci una regola.

   Ogni voce e' larga quanto il suo contenuto e l'icona sta CENTRATA sul
   testo che ha sotto (align-items:center). Da qui discende tutto il resto:
   una larghezza minima non c'e' apposta, perche' allargherebbe le voci
   corte oltre il loro testo e la prima non partirebbe piu' a filo con il
   paragrafo della descrizione. La separazione uniforme la da' quindi il
   solo column-gap, che e' l'unico numero da girare per stringere o
   allargare la fila.

   Provate e scartate, in quest'ordine: gap fra voci CENTRATE e larghe
   diversamente - le icone finivano a intervalli irregolari; colonne a
   min-width fissa con tutto allineato a sinistra - ritmo regolare ma
   l'icona stretta finiva a filo di un testo largo il doppio, che e'
   esattamente cio' che align-items:center risolve.

   I margini verticali stanno qui e non nel markup. Sopra la scheda non c'e'
   nessuno spazio che arrivi dal tema: il paragrafo della descrizione ha
   margine zero (.wpb_text_column p:last-child e .eltdf-ps-info-item p).
   Fino al 24/08/2026 la sola pagina Zen sembrava spaziata bene, ma era per
   un <p> vuoto avanzato da WordPress, che infatti e' stato tolto: lo spazio
   ora e' lo stesso su tutte e dieci. Sotto, ai 20px di qui si sommano i 25
   di .uv-h4-gap prima di "Servizi:".

   alt="" sulle icone e' corretto e non e' una dimenticanza: la voce accanto
   dice gia' cosa sono, come per le bandierine del selettore di lingua. */
.uv-scheda{display:flex;flex-wrap:wrap;column-gap:34px;row-gap:24px;margin:38px 0 26px;padding:0;list-style:none}
.uv-scheda li{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:9px}
.uv-scheda img{display:block;height:42px;width:auto}
.uv-scheda span{font-family:'Josefin Sans',-apple-system,'Segoe UI',sans-serif;font-size:15px;font-weight:300;line-height:1;letter-spacing:.06em;color:#000;white-space:nowrap}
@media only screen and (max-width:680px){
.uv-scheda{column-gap:26px;row-gap:22px;margin:34px 0 24px}
.uv-scheda li{gap:8px}
.uv-scheda img{height:36px}
.uv-scheda span{font-size:14px}
}
