/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author:	UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/


/* == generali == */

/* BTNs */
.w-btn-wrapper,
.w-btn-wrapper .us-btn-style_1 {
    min-width: 100%;
}
@media(max-width:400px){
    *:not(.w-hwrapper)>.w-btn-wrapper[class*="align_none"] {
        margin-inline-end: 0;
    }
    .w-btn-wrapper .us-btn-style_1 {
        padding-left:16px;
        padding-right:16px;
    }
}
@media(min-width:401px){
    .w-btn-wrapper {
        min-width: 275px;
    }
}

#link-sottopagine > .w-btn-wrapper {
    min-width: auto;
}
#link-sottopagine > .w-btn-wrapper > .w-btn {
    padding: 15px 14px;
    text-transform: none;
}
@media(max-width:768px){
    #link-sottopagine > .w-btn-wrapper {
        flex-grow: 1;
    }
}



/* TIPOGRAFIA */
.w-iconbox.stile-h6 .w-iconbox-text {
    letter-spacing: 0.03rem;
    text-transform: none;
}
.stile-note,
.stile-titoli-note .w-tabs-section-title {
    color: var(--color-testa-di-moro-75);
    font-family: "Futura LT Pro";
    font-size: 15px;
    font-style: italic;
    font-weight: 400;
    line-height: 1.6;
    margin-top:20px;
}
.stile-h1-sub,
.stile-titoli-h1-sub .w-tabs-section-title {
    color: var(--color-testa-di-moro);
    font-family: "IvyPresto Text";
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
}
.l-section.color_alternate .stile-h1-sub {
    color: var(--color-alt-content-text);
}
.stile-p-bold,
.stile-titoli-p-bold .w-tabs-section-title {
    font-family: var(--font-family);
    font-weight: var(--bold-font-weight);
    font-size: var(--font-size);
    line-height: var(--line-height);
}
[class*="stile-"]:not(.w-iconbox) i.fh55 {
    font-size:150%;
    line-height: 1;
} 
li {
    margin: 0 0 1.2rem;
}



/*menu*/
nav a, .w-nav-title, a.w-nav-control {
    text-decoration: none !important;
}

.w-nav-title:hover {
    text-decoration: underline !important;
}

.menu-item.current-menu-item > a > .w-nav-title, 
.menu-item.current-page-ancestor > a > .w-nav-title {
    text-decoration: underline !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 8px !important;
}


.w-nav-control {
    padding-right: 0 !important;
}

.menu-desktop-container .w-image.hide-for-sticky::after {
    content: "";
    display: block;
    width: calc(100vw - 136px);
    height: 0.5px;
    background: #fff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom:-20px;
}
header:not(.sticky) .menu-desktop-container {
    transform: translateY(40px);
}
.header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h {
    padding-top: calc(var(--header-height) + 40px);
}

@media(max-width:991px){
    body:not(.single-post) header::after {
        content: "";
        width: calc(100vw - 40px);
        left: 20px;
        position: relative;
        height: 1px;
        display: block;
        background-color: var(--color-testa-di-moro-25);
    }
    body.sito-hotel header::after {
        bottom:85px;
    }

    .header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h {
        padding-top: calc(var(--header-height) + 0px);
    }
}



/*menu lingue*/
.w-dropdown.source_wpml .w-dropdown-current a,
.w-dropdown.source_wpml .w-dropdown-list a:not(:hover) {
    text-decoration: none !important;
}
.w-dropdown.source_wpml.opened .w-dropdown-current a {
    color: var(--color-testa-di-moro);
} 




/*pannello nostro mondo*/
.w-popup-trigger.type_icon {
    display: inline-flex; 
    align-items: center; 
    gap: 15px; 
}
.w-popup-trigger .w-popup-trigger-text {
    font-size: .9rem;
    position: relative;
    top:2px;
}

/*allo sticky*/
header.sticky .w-popup-trigger .w-popup-trigger-text {
    display: none;
}
header.sticky .w-popup-trigger i {
    position: relative;
    top: 6px;
}
header.sticky .w-popup-trigger i.mondo-fh55::after {
    content:"";
    display: block;
    height: 30px;
    width: 1px;
    background-color: var(--color-testa-di-moro-25);
    position: absolute;
    right: -20px;
    top: 0;
}

/*panel aperto*/
/*desktop*/
.w-popup-overlay.fh55-overlay-lp-icon.active {
	backdrop-filter: blur(4px);
}

/*mobile*/
a.w-nav-control.active[aria-expanded=true] { 
    top: -63px;
}
a.w-nav-control.active[aria-expanded=true] .w-nav-icon.style_custom_image img:last-child {
    width:16px;
    position: relative;
    top: 12px;
}
a.w-nav-control.active[aria-expanded=true] > span {
    display: none;
}

a.w-nav-control.active[aria-expanded=true] + ul.w-nav-list {
    width: 100% !important;
}

.w-menu.layout_ver.type_accordion > ul > li {
    border-bottom: 1px solid var(--color-content-border);
    padding-bottom: 5px;
    margin-bottom: 5px !important;
}




/*mobile principale*/
body.sito-principale a.w-nav-control.active[aria-expanded=true] { 
    top: 7px;
}

a.w-nav-control.active[aria-expanded=true] > .w-nav-icon.style_custom_icon i {
    color:var(--color-testa-di-moro);
    font-size: 15px;
}



/* popup topbar */
.fh55-topbar-popup .w-popup-box-content { 
    text-align: center; 
    padding: 12px 45px 12px 20px !important;
}
.fh55-topbar-popup button.w-popup-closer {
    line-height: 2.2;
}


/*Paginazioni paginazione pagination*/
.w-grid>.pagination {
    margin-top: 3.5rem;
}
.us-nav-style_3  {
    justify-content: center;
}
.us-nav-style_3 > .current {
    font-style: normal;
}
.us-nav-style_3 a {
    text-decoration: none;
}
 


/*== HEADER == */

/* bc */
#breadcrumbs,  
#breadcrumbs *{
    letter-spacing: 0.25px;
    font-size: 16px
}
#breadcrumbs a {
    text-decoration: none;
}

 

/* Nelle INTESTAZIONI di pagina che hanno immagine full width full height, gli elementi da dekstop sono bianchi*/
@media(min-width:1025px){
    /*testi*/
    .l-section.full_height.width_full.with_img + .l-section.full_height p,
    .l-section.full_height.width_full.with_img + .l-section.full_height h1,
    .l-section.full_height.width_full.with_img + .l-section.full_height h2,
    .l-section.full_height.width_full.with_img + .l-section.full_height [class*="stile-"],
    .l-section.full_height.width_full.with_img + .l-section.full_height .w-text,
    .l-section.full_height.width_full.with_img + .l-section.full_height .w-iconbox.color_primary .w-iconbox-icon {
        color: #fff;
    } 
    .l-section.full_height.width_full.with_img + .l-section.full_height .w-text a {
        color: #fff;
        text-decoration-color: #fff;
    } 
    
    /*breadcrumbs*/
    .l-section.full_height.width_full.with_img + .l-section.full_height #breadcrumbs,
    .l-section.full_height.width_full.with_img + .l-section.full_height #breadcrumbs a {
        color: #fff;
    }
    
    /*pulsante*/
    .l-section.full_height.width_full.with_img + .l-section.full_height .us-btn-style_1 .w-btn-label,
    .l-section.full_height.width_full.with_img + .l-section.full_height .us-btn-style_1 i {
        color: #fff;
    }
    .l-section.full_height.width_full.with_img + .l-section.full_height .us-btn-style_1::before {
        border-color: #fff;
    }

    .l-section.full_height.width_full.with_img + .l-section.full_height .us-btn-style_1:hover::before {
        border-color: var(--color-testa-di-moro);
    } 
}





/* ---- Pulsante "Guarda il video" + popup (shortcode [video_popup]) ---- */
.guarda-video   { 
    margin-top:24px; 
}
.guarda-video.align_left   { text-align: left; }
.guarda-video.align_center { text-align: center; }
.guarda-video.align_right  { text-align: right; }

.guarda-video-btn {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	padding: 0;
	border: 0;
	background: none;
	color: inherit; /* eredita il colore del contesto (bianco sull'hero) */
	cursor: pointer;
}

.guarda-video-icona {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 15px;
}

.guarda-video-label {
	padding-bottom: 4px;
	border-bottom: 1px solid currentColor;
}

.guarda-video-btn:hover .guarda-video-label { border-bottom-color: transparent; }

/* Due varianti: mobile fino a 768, desktop da 769 */
.guarda-video--desktop { display: none; }

@media (min-width: 769px) {
    .guarda-video   { 
        margin-top:120px; 
    }
	.guarda-video--mobile  { display: none; }
	.guarda-video--desktop { display: block; }
}

/* Popup: il player occupa tutto il box */
.w-popup-wrap.guarda-video-popup .w-popup-box-content { padding: 0 !important; }





/* blocchi impreza */
.w-post-elm.post_custom_field:has(>i) {
    display: flex;
    align-items: center;
}
.w-post-elm.post_custom_field i.icon-big {
    font-size: 150%;
}

/* ===== vc_column_text: icona custom per le liste puntate ===== */
ul.fh55-lista-icone {
	list-style: none;
	padding-left: 0;
	margin-left: 0;
}
ul.fh55-lista-icone > li {
	position: relative;
	padding-left: 1.8em;
    line-height: 1.4;
}
ul.fh55-lista-icone > li > .fh55-list-marker {
	position: absolute;
	left: 0;
	top: 0;
	color: var(--color-testa-di-moro);
	font-size: 1em;
	line-height: inherit;
}

/* ===== vc_column_text: colonne (mobile-first, 1 colonna di base) ===== */
@media (min-width: 992px) {
	.wpb_text_column.fh55-txt-cols-2 .wpb_wrapper,
	.wpb_text_column.fh55-txt-cols-3 .wpb_wrapper {
		column-count: 2;
		column-gap: 40px;
	}
}
@media (min-width: 1200px) {
	.wpb_text_column.fh55-txt-cols-3 .wpb_wrapper {
		column-count: 3;
	}
}
/* evita che un elemento venga spezzato tra due colonne */
.wpb_text_column.fh55-txt-cols-2 .wpb_wrapper > *:not(ul),
.wpb_text_column.fh55-txt-cols-3 .wpb_wrapper > *:not(ul) {
	break-inside: avoid;
} 


/*vc solumn text quando text è troncato*/
.with_collapsible_content>div[style]:first-of-type {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(black 75%,transparent);
}



/* us_hwrapper: inverti ordine da un breakpoint in su */
@media (min-width: 600px) {
	.w-hwrapper.reverse-order-from-sm { flex-direction: row-reverse; }
}
@media (min-width: 768px) {
	.w-hwrapper.reverse-order-from-md { flex-direction: row-reverse; }
}
@media (min-width: 1025px) {
	.w-hwrapper.reverse-order-from-lg { flex-direction: row-reverse; }
}

/*se ci sono blocchi icone in wrapper orizzontali con la regola di stack su mobile, lasciare flex per evitare che l'icona allineata a sx resti isolata*/
@media (max-width: 599px) {
    .w-hwrapper.stack_on_mobiles>.w-iconbox.iconpos_left {
        display: flex;
    }
}


.w-separator.layout_vertical {
    width: 100%;
}



/*Override gravity forms*/
.gform-theme--foundation .gform_fields {
    grid-row-gap: 20px !important;
}
.gform_button[type="submit"] {
    background-color: transparent !important;
    border: 1px solid var(--color-testa-di-moro) !important;
    color: var(--color-testa-di-moro) !important;
    text-transform: uppercase !important;
    border-radius: 100px !important;
    min-height: 48px !important;
    font-size: 18px !important;
    line-height: 1.1 !important;
    font-weight: 500 !important;
    letter-spacing: 0.03em !important;
    cursor: pointer !important;
} 
.gform_button[type="submit"]:hover {
    background-color: var(--color-testa-di-moro) !important;
    color: #fff !important;
}
.gfield--type-html {
    line-height: 1.4 !important;
}
.gform_wrapper.gravity-theme .gfield_label {
    letter-spacing: 0.2px;
    font-weight: 400;
}

@media(min-width:1025px){
    /* Spaziature tra i campi del form */
    .l-main .gform_wrapper.gravity-theme .gform_fields {
        grid-row-gap: 48px;      /* tra le righe */
        grid-column-gap: 48px;   /* tra le colonne affiancate */
    }
}

p.gform_required_legend {
    display: none;
}

/*form gravity in footer*/
footer span.gform-field-label__text {
    font-size: 15.5px;
    line-height: 1.6;
}
footer legend span.gform-field-label__text {
    font-size: 14px;
    line-height: 1.2;
}
footer .ginput_container.ginput_container_consent {
    display: flex;
}
 


/* Nota reCAPTCHA in linea nel form, sopra il pulsante di invio.
 * La stampa inc/gravity-forms-modifiche.php quando il badge fluttuante e'
 * nascosto dalle impostazioni dell'add-on. Qui solo l'impaginazione: il testo
 * usa .stile-note, la classe tipografica del progetto. */
/* Il footer del form e' un flex container (.gform_wrapper.gravity-theme
   .gform_footer{display:flex}), quindi senza questo la nota si affiancherebbe
   al pulsante dividendosi lo spazio. Si fa andare a capo il footer e si prende
   tutta la riga. Il :has() limita il flex-wrap ai soli footer con la nota. */
.gform_wrapper .gform_footer:has(> .gform-nota-recaptcha) {
    flex-wrap: wrap;
    padding-top: 0 !important;
}

.gform-nota-recaptcha {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    flex: 0 0 100%;
    width: 100%;
    margin-bottom: 1.5rem;
    margin-top:20px;
}
.gform-nota-recaptcha-logo {
    width: 30px;
    height: auto;
    flex-shrink: 0;
}
.gform-nota-recaptcha-logo + span {
    margin-top:0;
}


/* Campi trasparenti nelle righe con sfondo colorato */
.l-section.ha-sfondo {
    --inputs-background: transparent;
    --inputs-focus-background: transparent;
    --inputs-border-color: var(--color-testa-di-moro-50);
}




/* ============================================================
   Override us_image_slider (RoyalSlider) — pagination + icona (usato per es. negli alloggi)
   Replica lo stile della Gallery Slider Lightbox (Swiper)
   ============================================================ */

/* --- Pagination: dots "smudge" (trattino attivo + puntini piatti) --- */
.w-slider .rsBullets {
	gap: 8px;
	align-items: center;
    margin-top:30px;
}

.w-slider .rsBullet span {
	width: 12px;
	height: 2px;
	border-radius: 10px;
	background: var(--color-testa-di-moro) !important;
	opacity: 0.25;
	margin: 0 !important;
	box-shadow: none !important;
	transition: width 0.25s ease, opacity 0.25s ease;
}

.w-slider .rsBullet.rsNavSelected span {
	width: 60px;
	height: 2px;
	background: var(--color-testa-di-moro) !important;
	opacity: 1;
	box-shadow: none !important;
}

/* rimuove l'anello attivo di default di Impreza */
.w-slider .rsNavSelected::after {
	display: none !important;
}

/* --- Icona lightbox/fullscreen: fh55 "ico-espandi", in basso a sinistra --- */
.w-slider .rsFullscreenBtn {
	top: auto;
	right: auto;
	left: 16px;
	bottom: 16px;
	width: 48px;
	height: 48px;
	line-height: 48px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.85);
	color: var(--color-testa-di-moro);
	text-shadow: none;
	font-size: 22px;
}

.w-slider .rsFullscreenBtn:after {
	font-family: 'fh55-icons';
	font-weight: normal;
	content: "\e90b"; /* ico-espandi */
}

/* quando la lightbox è aperta, l'icona diventa "chiudi" */
.w-slider .rsFullscreen .rsFullscreenBtn:after {
	content: "\e902"; /* chiudi */
}




/* === OVERRIDE OWL CAROUSEL === */
/* Dots "smudge" dei carousel Impreza (dots_style="smudge") — identici alla gallery custom */
.dotstyle_smudge .owl-dot span {
	width: 12px;
	height: 2px;
	border-radius: 10px;
	background: var(--color-testa-di-moro);
	opacity: 0.25;
	margin: 0 4px; /* 4+4 = 8px di gap, come la gallery */
	transition: width 0.25s ease, opacity 0.25s ease;
}
.dotstyle_smudge .owl-dot.active span {
	width: 60px;
	height: 2px;
	background: var(--color-testa-di-moro);
	opacity: 1;
}

/* ============================================================
   Frecce carousel stile "Simple"
   Solo icona XL del font fh55, senza box ne sfondo.
   Il param arrows_style="simple" e aggiunto in inc/wpbakery-modifiche.php
   ============================================================ */

.owl-carousel.navstyle_simple > .owl-nav button {
    width: auto;
    height: auto;
    border-radius: 0;
    background: none;
    box-shadow: none;
    text-shadow: none;
    color: inherit;
    font-size: 48px !important; /* forzato: il tema usa var(--arrows-size) con !important */
    line-height: 1;
    max-width:24px;
}

.owl-carousel.navstyle_simple > .owl-nav button:hover {
    background: none;
    box-shadow: none;
}

/* rimuove il pseudo-elemento di bordo/box del tema */
.owl-carousel.navstyle_simple > .owl-nav button:before {
    display: none;
}

/* Glifi fh55 al posto delle frecce FontAwesome */
.owl-carousel.navstyle_simple > .owl-nav .owl-prev:after {
    content: "\e909"; /* freccia-xl-sinistra */
    font-family: 'fh55-icons';
    font-weight: normal;
    padding-right: 0;
}

.owl-carousel.navstyle_simple > .owl-nav .owl-next:after {
    content: "\e908"; /* freccia-xl-destra */
    font-family: 'fh55-icons';
    font-weight: normal;
    padding-left: 0;
}


/* Carosello post: peek con full bleed a destra su mobile.
 * La classe .carosello-peek-bleed e la variabile --cpb-peek NON vanno scritte a
 * mano: le applica il PHP (inc/wpbakery-modifiche.php) quando il carosello ha un
 * "Next Item Offset" impostato sul breakpoint Mobiles.
 *
 * Richiede "Number of Items to Show: Auto" su quel breakpoint: solo con Auto
 * Owl calcola le coordinate leggendo la larghezza reale degli item invece di
 * imporla lui (owl.carousel.js: grid = !autoWidth), quindi la nostra width
 * viene rispettata dallo scorrimento. Con un numero fisso di item le coordinate
 * le decide Owl e forzare la width qui le manderebbe fuori sincrono.
 *
 * Perche' non si usa "Next Item Offset" come stagePadding: quel valore riduce
 * l'item di 2*stagePadding e ogni item ha gia' --gap di padding interno, quindi
 * il peek reale sarebbe stagePadding - gap, con lo slider fermo a 100px. */
@media (max-width: 599px) {

    /* Gap ridotto su mobile: nel pannello si puo' impostare un valore solo, che
       vale per tutti i breakpoint. Impreza scrive --gap inline su .w-grid,
       quindi qui serve !important. Il valore del pannello resta quello desktop. */
    .w-grid.carosello-peek-bleed {
        --gap: var(--cpb-gap-mobile, 10px) !important;
    }

    /* Bordo destro a filo schermo. calc(50% - 50vw) vale -1 volta il margine
       laterale quando il contenitore e' centrato nella finestra. Il margine
       sinistro resta quello di Impreza, che allinea gia' la prima card al
       contenuto. Specificita' alzata: Impreza usa .w-grid.type_carousel
       .w-grid-list, che e' 0,3,0. */
    .w-grid.carosello-peek-bleed.type_carousel .w-grid-list {
        margin-right: calc(50% - 50vw);
    }

    /* Larghezza della card. Si misura sul margine laterale della sezione
       (--cpb-margine) e NON su --gap: la prima card e' allineata al contenuto
       grazie al margine negativo di Impreza, che usa gia' --gap, quindi le due
       cose si annullano. Cosi' cambiare il gap non sposta il peek.
       !important obbligatorio: in modalita' Auto Owl scrive "width: auto"
       INLINE su ogni .owl-item, e un inline batte qualsiasi selettore. */
    .carosello-peek-bleed .owl-item {
        width: calc(100vw - var(--cpb-margine, 30px) - var(--cpb-peek, 0px)) !important;
    }
}







/* Indice ancore (sidebar FAQ) */
.fh55-indice-anchor ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.fh55-indice-anchor li {
    margin-bottom: 20px;
    /*text-align: center;*/
}

.fh55-indice-anchor li:last-child {
    margin-bottom: 0;
}

.fh55-indice-anchor a {
    font-family: var(--font-family);
    font-style: italic;
    font-size: 20px;
    line-height: 1.5;
    color: var(--color-testa-di-moro);
    text-decoration: none;
}

.fh55-indice-anchor a:hover {
    text-decoration: underline;
}

@media(max-width:768px){
    nav.fh55-indice-anchor {
        columns: 2;
    }
}
@media(min-width:769px){
    /*.fh55-indice-anchor li {
        text-align: left;
    }*/
    .fh55-indice-anchor ul {
        padding-left: 24px;
    }
}



/* Menu ancore in pagina (pillola) — shortcode [page_anchors] */
.page-anchors {
    display: flex;
    justify-content: center;
    width: calc(100vw - 40px);
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    max-width:400px;
}

.page-anchors ul {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 8px 24px;
    margin: 0;
    padding: 12px 24px;
    list-style: none;
    background: #fff;
    border-radius: 999px;
    width: 100%;
} 

.page-anchors li {
    margin: 0;
}

.page-anchors a {
    line-height: 1.2;
    color: var(--color-testa-di-moro);
    text-decoration: none;
    white-space: nowrap;
}

.page-anchors a:hover {
    text-decoration: underline;
}

@media(min-width:769px){
    .page-anchors ul {
        gap: 40px;
        padding: 18px 48px;
    }
    .page-anchors a {
        font-size: 20px;
    }
}



@media(min-width:769px){
    /* La card sale di 200px finché la colonna non è agganciata, poi torna a posto */
    #ristorante-card .w-vwrapper,
    #quick-reserve-card .wpb_text_column {
        transition: transform 0.5s ease;
    }
    #ristorante-card.is-stuck .w-vwrapper,
    #quick-reserve-card.is-stuck .wpb_text_column {
        transform: translateY(0);
    }    
    
    
    #ristorante-card .w-vwrapper {
        transform: translateY(-500px);
    }
}

@media(min-width:1025px){  
    #ristorante-card .w-vwrapper {
        transform: translateY(-300px);
    }    
    
    #quick-reserve-card .wpb_text_column {
        transform: translateY(-300px);
    }
}
 


/*Globo*/
.w-post-elm.post_custom_field.con-img::before {
	content: "";
	display: inline-block;
	width: 40px;
	height: 40px;
	vertical-align: middle;
    margin-bottom:4px;
}

.w-post-elm.post_custom_field.con-img.sala_cap_teatro::before {
	background: url("/wp-content/uploads/sites/3/2026/07/ico-globo-teatro.svg") no-repeat center / contain;
}
.w-post-elm.post_custom_field.con-img.sala_cap_tavolo_unico::before {
	background: url("/wp-content/uploads/sites/3/2026/07/ico-globo-tavolo-unico.svg") no-repeat center / contain;
}
.w-post-elm.post_custom_field.con-img.sala_cap_ferro::before {
	background: url("/wp-content/uploads/sites/3/2026/07/ico-globo-ferro-di-cavallo.svg") no-repeat center / contain;
}
.w-post-elm.post_custom_field.con-img.sala_cap_banchi::before {
	background: url("/wp-content/uploads/sites/3/2026/07/ico-globo-banchi-scuola.svg") no-repeat center / contain;
}
.w-post-elm.post_custom_field.con-img.sala_cap_cabaret::before {
	background: url("/wp-content/uploads/sites/3/2026/07/ico-globo-cabaret.svg") no-repeat center / contain;
}
.w-post-elm.post_custom_field.con-img.sala_cap_cocktail::before {
	background: url("/wp-content/uploads/sites/3/2026/07/ico-globo-cocktail.svg") no-repeat center / contain;
}



/* == instagram == */

/*pulsante follow*/
div#sbi_load {
    margin-top: 30px;
}
#sb_instagram .sbi_follow_btn a {
    color:var(--color-testa-di-moro) !important;
    font-size: var(--font-size) !important;
    text-decoration: underline !important;
    text-underline-offset: 5px !important;
    text-decoration-thickness: 1px !important;
}
#sb_instagram .sbi_follow_btn a svg {
    font-size: 22px !important;
}


/* MODALITà GRIGLIA -> mobile è fino a 480, tablet fino a 640*/
/*2 col - mobile*/
@media(max-width:480px){
    #sb_instagram[data-options*="grid"] #sbi_images {gap: 16px !important;}
}

/*3 col - tablet*/
@media(min-width:481px) and (max-width:640px){
    #sb_instagram[data-options*="grid"] #sbi_images {gap: 8px !important;}
}

/*3 col - desktop*/
@media(min-width:641px) and (max-width:768px){
    #sb_instagram[data-options*="grid"] #sbi_images {gap: 8px !important;}
}
@media(min-width:769px) and (max-width:1024px){
    #sb_instagram[data-options*="grid"] #sbi_images {gap: 40px !important;}
}
@media(min-width:1025px) and (max-width:1200px){
    #sb_instagram[data-options*="grid"] #sbi_images {gap: 24px !important;}
}
@media(min-width:1201px) and (max-width:1366px){
    #sb_instagram[data-options*="grid"] #sbi_images {gap: 40px !important;}
}

/*alternanza colonne*/
#sb_instagram[data-options*="grid"] {
    margin-top: 60px;
}
@media(max-width:480px){
    #sb_instagram[data-options*="grid"] #sbi_images>.sbi_item:nth-child(even) {
        top: -40px;
        position: relative;
    } 
}
@media(min-width:481px){
   #sb_instagram[data-options*="grid"] #sbi_images>.sbi_item:nth-child(3n+2) {
        top: -40px;
        position: relative;
    } 
}

/*instagram - MODALITà CAROSELLO -> mobile è fino a 479, tablet fino a 639*/
/*2 col - mobile*/
@media(max-width:479px){
    #sb_instagram[data-options*="carousel"] #sbi_images .sbi_item {padding: 8px !important;}
} 


   

/* ===== FOOTER ===== */
footer nav.layout_ver.style_links.colonne-2 {
    column-count: 2;
}
@media(min-width:769px) and (max-width:1024px){
    footer nav.layout_ver.style_links.colonne-2 {
        column-count: 3;
        column-gap: 3rem;
    }
} 




/* lavora con noi - il resto degli stili li eredita dallo stile campi impreza --> da spostare poi in css dedicato*/
.aw_searchBox {
    background: #fff !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    border-radius: 0 !important;
    margin-bottom:24px !important;
}
.aw_searchBox select {
    padding:10px !important;
    border: 1px solid var(--color-content-border) !important;
    border-radius: 0;
}
.aw_jobPosting mark {
    background-color: var(--color-beige-75) !important;
    color:var(--color-testa-di-moro) !important;
    border-radius: 3px !important;
    margin-bottom:0 !important;
}
.aw_jobPosting {
    margin-top:0 !important;
    padding: 32px 4px;
}
.aw_jobPosting:not(:last-child) {
    border-bottom: 1px solid var(--color-content-border) !important;
}
.aw_jobPosting .aw_title {
    padding-top:15px !important;
}
a[data-allibo] {
    display: none!important;
}
.aw_searchButton {
    order: 10;
    height: 48px !important;
    width: 48px !important;
    text-align: center !important;
    line-height: 48px;
    color: var(--color-testa-di-moro) !important;
}
.aw_searchButton button:focus {
    border: none;
    background-color: var(--color-beige-ultra-light);
    color: var(--color-testa-di-moro)
}
.aw_searchButton i {
    position: relative;
    z-index: 1;
    pointer-events: none;
}


/*Sovrascrivo blastness qr*/
.offerta {
    width:100%;
    padding:0;
}



/* condizionali in base al tipo di sito */
/*nei grid layout nascondo la struttura se siamo dentro a un hotel*/
body.sito-hotel .w-post-elm.post_taxonomy.tax-offerta-struttura {
    display: none;
}
/*tolgo border bottom da ultimi grid item*/
.w-grid.cols_1 .w-grid-list > article:last-child > .w-grid-item-h > div {
    border-bottom: none !important;
}


/*DEBUG link e pulsanti*/
body.logged-in a[href=""], 
body.logged-in a[href="#"], 
body.logged-in a[href$="/#"],
body.logged-in a[href*="#link"] {
    outline: 2px solid lime;
}

body.logged-in a[href*="post_type"],
body.logged-in a[href*="page_id"] {
    outline: 2px solid magenta;
}

li#wp-admin-bar-customize,
li#wp-admin-bar-comments,
li#wp-admin-bar-new-content {
    display: none !important;
}

#wpadminbar #wp-admin-bar-my-sites {background: #523f6d}
#wpadminbar #wp-admin-bar-my-sites > a {color: #fff !important;}


/*nascondo le breadcrumbs nelle pagine il cui header è stato nascosto dalle opzioni di pagina*/
body.header_none #page-content > section:has(#breadcrumbs) {
    display:none;
}


