/*
Theme Name: Acquasanta Theme
Theme URI: http://demo.casethemes.com/maiko/
Author: Giovanni Bonato
Author URI: https://giovannibonato.dev
Description: Theme for Acquasanta Website
Version: 1.0.0
License: GPL-2.0+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Template: maiko
Text Domain: maiko-child
Tags: architecture, portfolio, design, creative, modern, minimalist, photography, agency, responsive, grid
Requires at least: 5.8 or Higher
Requires PHP: 7.4 or Higher
Tested up to: 6.4

Copyright (c) 2026 Giovanni Bonato. All rights reserved.
This theme is licensed under the GPL-2.0+ license.
*/

.pxl-anchor-divider .pxl-icon-line::before, .pxl-anchor-divider .pxl-icon-line::after {
	background: #000 !important;
}

body.home .pxl-anchor-divider .pxl-icon-line::before,body.home .pxl-anchor-divider .pxl-icon-line::after,
.page-id-25473 .pxl-anchor-divider .pxl-icon-line::before,.page-id-25473 .pxl-anchor-divider .pxl-icon-line::after {
    background: #fff !important;
}

/*
.artists-grid .pxl-post-content-hide {
	background-color: #ffffff8a !important;
	padding: 24px 25px 16px !important;
	transform: unset !important;
	opacity: 0 !important;
	z-index: 2 !important;
}*/

.artists-grid .pxl-post-content-hide {
    transform: unset !important;
}

.pxl-portfolio-grid-layout1 .pxl-grid-item .pxl-post--inner .pxl-post-content-hide {
    background-color: transparent !important;
}

.artists-grid .pxl-portfolio-grid-layout1 .pxl-grid-item .pxl-post--inner:hover .pxl-post-content-hide {
	opacity: 1 !important;
}

/*
.artists-grid .pxl-portfolio-grid-layout1 .pxl-grid-item .pxl-post--inner:hover .pxl-item--overlay {
	background-color: #00000040 !important;
}*/


.artists-grid .pxl-post-content-top {
	text-align: center !important;
}

.pxl-nav-menu.fr-style-divider3 .pxl-menu-primary > li > a::after {
	display: none !important;
}

.artists-grid .pxl-post--holder{
	display: none;
}

@media (min-width: 768px) {
	.artworks-gallery .pxl-post--featured {
		height: 560px !important;
	}
}


.artists-grid .pxl-post--citta,
.artists-grid .pxl-post--data {
	font-weight: 300 !important;
}

.artists-grid .pxl-post--citta {
	margin-bottom: 0 !important;
}


.artists-grid .pxl-post--content {
	display: none !important;
}

.pxl-portfolio-grid-layout6 .pxl-grid-filter .pxl--filter-inner {
	display: flex !important;
}

#grid-artworks-custom .pxl--filter-inner {
	width: 100% !important;
}

#grid-artworks-custom .pxl-post--featured img {
    object-fit: cover !important;
  object-position: center center !important;
  width: 100% !important;
  height: 100% !important;
}

@media (min-width: 768px) {
  #grid-artworks-custom .artworks-gallery .pxl-post--featured,
  #grid-artworks-custom .pxl-post--featured {
    height: 560px !important;
    overflow: hidden;
  }

  #grid-artworks-custom .pxl-post--featured a {
    display: block;
    height: 100%;
  }
}

/* Wrapper principale: full width e centrato */
#grid-artworks-custom .pxl-grid-filter {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important; /* centra tutto orizzontalmente */
    margin-bottom: 20px !important;
}

/* Wrapper interno per le select (flex row) */
#grid-artworks-custom .pxl-grid-filter--selects {
    display: flex !important;
    gap: 15px !important; /* distanza tra le select */
    flex-wrap: unset !important; /* va a capo solo se necessario su mobile */
}

/* Stile base delle select */
#grid-artworks-custom .pxl-filter {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-color: #f8f8f8 !important;
    color: #333 !important;
    padding: 8px 30px 8px 12px !important; /* spazio per freccia a destra */
    font-size: 14px !important;
    border-radius: 6px !important;
    border: none !important;
    cursor: pointer !important;
    position: relative !important;
    transition: all 0.3s ease !important;
    min-width: 150px !important;
    outline: none !important;
    display: none !important;
}

/* Freccia custom */
#grid-artworks-custom .pxl-filter::after {
    content: '' !important;
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    width: 10px !important;
    height: 10px !important;
    border-right: 2px solid #333 !important;
    border-bottom: 2px solid #333 !important;
    transform: translateY(-50%) rotate(45deg) !important;
    pointer-events: none !important;
    transition: transform 0.3s ease !important;
}

/* Freccia ruota quando la select è aperta/focus */
#grid-artworks-custom .pxl-filter:focus::after {
    transform: translateY(-50%) rotate(-135deg) !important;
}

/* Hover leggero */
#grid-artworks-custom .pxl-filter:hover {
    background-color: #eee !important;
}

/* Mobile: impila le select */
@media (max-width: 768px) {
    #grid-artworks-custom .pxl-grid-filter--selects {
        flex-direction: column !important;
        gap: 10px !important;
        align-items: center !important; /* centra anche in colonna */
    }
    #grid-artworks-custom .pxl-filter {
        width: 100% !important;
        max-width: 300px !important; /* per non andare full width estrema */
    }
}

/* Pulsante reset */
#grid-artworks-custom .pxl-filter-reset {
    display: none;
}

.post-23262 .pxl-grid-item,
.page-id-18 #post-artists-grid .pxl-grid-item {
    filter: brightness( 100% ) contrast( 100% ) saturate( 0% ) blur( 0px ) hue-rotate( 0deg ) !important;
}

/* Rendiamo sticky la colonna di destra */
.elementor-element-47fa596 {
    position: sticky;
    top: 20px; /* distanza dal top dello schermo */
}

/* Assicuriamoci che il container padre delle due colonne abbia display:flex */
.elementor-element-1f1afff,
.elementor-element-47fa596 {
    flex: 1; /* pari larghezza, se vuoi */
}

/* Il container che le contiene deve avere display flex */
.elementor-element-1f1afff.parent-flex,
.elementor-element-47fa596.parent-flex {
    display: flex;
    align-items: flex-start;
}

/*
.elementor-element-47fa596 {
    width: 50%; 
    right: 0;
}
*/

.elementor-element-2de7d2c .e-con-inner {
    position: relative !important;
}

.elementor-element-8655eea .dce-fix-background-loop {
    margin-bottom: 0 !important;
}

.elementor-14490 .elementor-element.elementor-element-d3cfbaf .pxl-nav-menu .pxl-menu-primary > li,
.elementor-14490 .elementor-element.elementor-element-d3cfbaf .pxl-nav-menu .pxl-menu-primary > li > a {
    line-height: 100px !important;
}

.elementor-14490 .elementor-element.elementor-element-d3cfbaf .pxl-nav-menu .pxl-menu-primary > li > a {
    padding: 0 !important;
}

.pxl-language-switch .list-language::after {
    width: 60px !important;
}
.pxl-language-switch .list-language .pxl--item {
    width: 60px !important;
}
.pxl-language-switch .list-language .pxl--item a {
    display: block !important;
    width: 100% !important;
}
.pxl-language-switch .list-language .pxl--item a:hover{
    font-weight: bold !important;
}

.pxl-language-switch .list-language {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.menu-item.current-menu-item a {
    font-weight: 500 !important;
}

#pxl-main {
    padding: 80px 0 !important;
}

#grid-artworks-custom .pxl-post-content-hide {
    display: none !important;
}
#grid-artworks-custom .pxl-post--inner:hover .pxl-item--overlay {
  background-color: #00000040 !important;
}

#post-artists-grid .pxl-post--title {
    font-weight: 500 !important;
    margin: 0 !important;
    color: #fff !important;
    text-align: left;
    transition: 0.3s all;
}

#post-artists-grid .pxl-post--citta {
    font-size: 18px !important;
}

#post-artists-grid .pxl-post--meta {
    display: none;
}

#post-artists-grid .pxl-post-content-hide {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 25px !important;
}

#post-artists-grid .btn-readmore {
  position: absolute;
  bottom: 25%;
  right: 10px;
}

#post-artists-grid .btn-readmore svg path {
    fill: #000;
}

#post-artists-grid .pxl-item--overlay {
    z-index: 5 !important;
}

#artworks-gallery-on-artist-page .pxl-post-content-hide,
#artworks-gallery-on-artwork-page .pxl-post-content-hide {
    display: none !important;
}

#artworks-gallery-on-artist-page .pxl-post--inner:hover .pxl-item--overlay,
#artworks-gallery-on-artwork-page .pxl-post--inner:hover .pxl-item--overlay {
  background-color: #00000040 !important;
}

.page-id-23264 #portfolio-grid-items {
    padding-top: 0 !important;
}

.page-id-23264 .pxl-post--top {
    display: none !important;
}

/* =====================================================
   SELECT2 – PXl GRID FILTER (HTML COMPATIBILE)
   ===================================================== */

/* wrapper select2 */
.pxl-grid-filter .select2-container {
    max-width: 300px;
    font-size: 14px;
}

/* selezione multipla */
.pxl-grid-filter .select2-selection--multiple {
    min-height: 44px;
    padding: 6px 10px;
    border: 1px solid #dcdcdc;
    border-radius: 6px;
    background-color: #fff;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    cursor: text;
}

/* focus */
.pxl-grid-filter
.select2-container--focus
.select2-selection--multiple {
    border-color: #000;
}

/* lista elementi selezionati */
.pxl-grid-filter .select2-selection__rendered {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    padding: 0;
    margin: 0;
}

/* singolo tag */
.pxl-grid-filter .select2-selection__choice {
    background: #f4f4f4;
    border: none;
    border-radius: 4px;
    padding: 3px 8px;
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
}

/* testo tag */
.pxl-grid-filter .select2-selection__choice__display {
    color: #222;
}

/* bottone rimozione */
.pxl-grid-filter .select2-selection__choice__remove {
    margin-right: 4px;
    color: #888;
    font-size: 14px;
}

.pxl-grid-filter .select2-selection__choice__remove:hover {
    color: #000;
}

/* campo ricerca inline */
.pxl-grid-filter .select2-search--inline {
    margin: 0;
}

.pxl-grid-filter .select2-search__field {
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
    padding: 2px 0;
}

/* =====================================================
   DROPDOWN
   ===================================================== */

.pxl-grid-filter .select2-dropdown {
    border-radius: 6px;
    border: 1px solid #dcdcdc;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}

.pxl-grid-filter .select2-results__option {
    padding: 8px 12px;
    font-size: 14px;
    line-height: 1.4;
}

.pxl-grid-filter .select2-results__option--highlighted {
    background-color: #000;
    color: #fff;
}

.pxl-grid-filter .select2-results__option[aria-selected="true"] {
    background-color: #f2f2f2;
    color: #000;
}

/* =====================================================
   RESET BUTTON
   ===================================================== */

.pxl-grid-filter .pxl-filter-reset {
    font-size: 16px;
    color: #000;
    cursor: pointer;
    transition: all .2s ease;
    position: absolute;
    top: -35px;
    text-decoration: underline;
    left: 0;
    text-transform: uppercase;
}

.pxl-grid-filter .pxl-filter-reset:hover {
    color: #ababab;
}

.pxl-grid-filter .pxl-filter-reset i {
    margin-right: 10px;
}

.pxl-filter-row {
    display: flex;
    align-items: flex-start; 
    gap: 16px;
    width: 100%;
}

.pxl-filter-fields {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    flex: 1;
    align-items: center;
}

.pxl-filter-actions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    flex-shrink: 0; 
    position: relative;
}

.pxl-filter-year {
    max-width: 140px;
}

.pxl-filter-year + .select2 {
    max-width: 140px;
    min-width: 140px;
}

.select2-container--default .select2-selection--multiple {
    max-height: 44px;
    overflow-y: auto;
}

.pxl-filter-reset {
    color: #999;
    text-decoration: underline;
    cursor: pointer;
    white-space: nowrap;
}

.pxl-filter-apply {
    padding: 10px 18px;
    font-size: 16px;
    white-space: nowrap;
    height: 44px; /* uguale alla select */
    background-color: #000;
}

.breadcrumb-link a {
    padding:0 !important;
}

.filter-label {
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1.95px;
  line-height: 25px;
}

.elementor-23443 .elementor-element.elementor-element-83c5a88.elementor-element,
.elementor-23443 .elementor-element.elementor-element-8655eea li.dce-post,
.elementor-23443 .elementor-element.elementor-element-03332a2.elementor-element,
.elementor-23443 .elementor-element.elementor-element-03332a2 .dynamic-content-for-elementor-acf,
.elementor-23443 .elementor-element.elementor-element-83c5a88 .dynamic-content-for-elementor-acf {
    line-height: 1 !important;
}

.elementor-23443 .elementor-element.elementor-element-8655eea .elementor-repeater-item-5e3cdca > * {
    transition: 0.3s all;
}
.elementor-23443 .elementor-element.elementor-element-8655eea .elementor-repeater-item-5e3cdca > *:hover{
    text-decoration: underline;
}

body.home .pxl-nav-menu.pxl-menu-show-line .pxl-divider-move,
.page-id-25473 .pxl-nav-menu.pxl-menu-show-line .pxl-divider-move {
    border-color: #fff !important;
}

.pxl-nav-menu.pxl-menu-show-line .pxl-divider-move {
    border-color: #000 !important;
    padding-top: 20px;
}

body.home #pxl-main,
.page-id-23266 #pxl-main,
.elementor-page-24463 #pxl-main,
.page-id-25473 #pxl-main {
	padding-top: 0 !important;
}

/*
.pxl-hidden-panel-popup.pxl-pos-right .pxl-popup--conent {
    left: 0 !important;
    right: unset !important;
  transform: translateX(-100%);
}*/

.pxl-scroll-top {
    display: none !important;
}

.main-footer a:hover {
    text-decoration: underline;
}

#menu-item-24401,
#menu-main-menu-1 .menu-item-24401 {
    width: 0 !important;
}

body.home #pxl-header-elementor,
.page-id-25473 #pxl-header-elementor {
    position: absolute !important;
    z-index: 20;
    width: 100%;
}

.pxl-header-elementor-sticky.pxl-onepage-sticky.pxl-sticky-stt.pxl-header-fixed {
    background-color: #fff;
}

.pxl-header-elementor-sticky.pxl-onepage-sticky.pxl-sticky-stt.pxl-header-fixed .pxl-nav-menu .pxl-menu-primary > li > a {
    color: #000;
}

.pxl-header-elementor-sticky.pxl-onepage-sticky.pxl-sticky-stt.pxl-header-fixed .pxl-cursor--cta .pxl-icon-line::after,
.pxl-header-elementor-sticky.pxl-onepage-sticky.pxl-sticky-stt.pxl-header-fixed .pxl-cursor--cta .pxl-icon-line::before{
    background: #000 !important;
}


.pxl-header-elementor-sticky.pxl-onepage-sticky.pxl-sticky-stt.pxl-header-fixed .pxl-nav-menu.pxl-menu-show-line .pxl-divider-move {
    border-color: #000 !important;
}

body:not(.home) .pxl-nav-menu .pxl-menu-primary > li > a {
    color: #000 !important;
}

.page-id-25473 .pxl-nav-menu .pxl-menu-primary > li > a {
    color: #fff !important;
}

.pxl-hidden-panel-popup.pxl-pos-right .pxl-popup--conent {
    left: 0 !important;
    right: unset !important;
    -webkit-transform: translateX(-100%) !important;
    -khtml-transform: translateX(-100%) !important;
    -moz-transform: translateX(-100%) !important;
    -ms-transform: translateX(-100%) !important;
    -o-transform: translateX(-100%) !important;
    transform: translateX(-100%) !important;
}

.pxl-hidden-panel-popup.active .pxl-popup--conent {
    -webkit-transform: translatex(0%) !important;
  -khtml-transform: translatex(0%) !important;
  -moz-transform: translatex(0%) !important;
  -ms-transform: translatex(0%) !important;
  -o-transform: translatex(0%) !important;
  transform: translatex(0%) !important;
  transition-delay: 0s !important;
}

.pxl-portfolio-grid-layout6 .pxl-grid-filter {
    display: none !important;
}

.pxl-portfolio-grid-layout6 .pxl-grid-item .pxl-post--holder .pxl-post--area {
    font-size: 20px;
}

.pxl-portfolio-grid-layout6 .pxl-grid-item .pxl-post--holder .pxl-post--year {
    font-size: 20px;
}

/*
#pxl-header-mobile {
    background-color: #fff !important;
}*/

@media (min-width: 768px) {
  .elementor-14490 .elementor-element.elementor-element-5ba2768 {
    width: 10% !important;
  }
}

#menu-main-menu, #menu-main-menu-1 {
  display: flex;
  column-gap: 24px;
  justify-content: end;
}


/* Artists post grid — Swiper slider */
.page-id-18 .elementor-element-84853e2 {
    display: none !important;
}

#post-artists-grid .pxl-post-grid-slider .pxl-artists-slider {
    position: relative;
}

#post-artists-grid .pxl-post-grid-slider .pxl-carousel-inner {
    position: relative;
}

#post-artists-grid .pxl-post-grid-slider .pxl-swiper-container {
    overflow: hidden;
}

#post-artists-grid .pxl-post-grid-slider .pxl-swiper-slide {
    height: auto;
}

#post-artists-grid .pxl-post-grid-slider .pxl-swiper-slide.pxl-grid-item {
    width: auto;
    max-width: none;
    flex: 0 0 auto;
    margin-bottom: 0 !important;
}

#post-artists-grid .pxl-post-grid-slider .pxl-post--featured {
    aspect-ratio: 840 / 988;
    overflow: hidden;
}

#post-artists-grid .pxl-post-grid-slider .pxl-post--featured a {
    display: block;
    height: 100%;
}

#post-artists-grid .pxl-post-grid-slider .pxl-post--featured img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

#post-artists-grid .pxl-post-grid-slider .pxl-swiper-slide .pxl-post--inner {
    height: 100%;
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 5;
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .pxl-swiper-arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    cursor: pointer;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    padding: 0;
    background: none;
    border: 0;
    transition: opacity 0.2s ease;
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .pxl-swiper-arrow:hover {
    opacity: 1;
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .acquasanta-artists-arrow-svg {
    width: 96px;
    height: auto;
    display: block;
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .acquasanta-artists-arrow-stroke {
    fill: none;
    stroke: #ffffff;
    stroke-width: 38;
    stroke-miterlimit: 10;
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .pxl-swiper-arrow-prev {
    left: 0;
    transform: translateY(-50%) scaleX(-1);
}

#post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .pxl-swiper-arrow-next {
    right: 0;
    left: auto;
}

@media (max-width: 991px) {
    #post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .acquasanta-artists-arrow-svg {
        width: 72px;
    }
}

@media (max-width: 575px) {
    #post-artists-grid .pxl-artists-slider .pxl-swiper-arrow-wrap.style-artists-arrow .acquasanta-artists-arrow-svg {
        width: 52px;
    }
}

.pxl-post-grid-slider .pxl-swiper-slide {
    height: auto;
}

#post-artists-grid .btn-readmore {
    display: none;
}

#post-artists-grid .pxl-post--inner:hover .pxl-post--title {
    color: #000 !important;
} 

.exhibition-internal-gallery .wrap-content{
    display: none !important;
}

.pxl-post-navigation .pxl-icon-link {
    font-family: "DM Sans", Sans-serif;
}

.pxl--item.pxl-navigation-btn--wrap {
    width: 20%;
}

.pxl--item.item--next.pxl-navigation-btn--wrap.pxl-navigation--next {
    justify-content: end;
}

.navigation-prev-next .prev-post-title,
.navigation-prev-next .next-post-title{
    display: none;
 }

.artworks-gallery .pxl-post--holder {
    position: absolute;
    background-color: transparent !important;
    bottom: 0;
    width: 100% !important;
    padding-bottom: 0 !important;
    padding-left: 10px !important;
}

.artworks-gallery .pxl-post--holder h5 {
    color: #fff;
}
.artworks-gallery .pxl-post--holder h6 {
    color: #fff;
    font-size: 22px;
}

.pxl-portfolio-grid-layout1 .pxl-grid-item {
    margin-bottom: 8px !important;
}
#artworks-gallery-on-artwork-page .pxl-post--category {
    display: none;
}

/*    */

/* ===== Sezione principale ===== */
.elementor-element-2de7d2c {
    align-items: flex-start;
}

/* ===== Colonna immagini ===== */
.elementor-element-1f1afff {
    position: relative;
}

/* Ogni immagine diventa uno "step" alto quanto la viewport */

@media (min-width: 991px) {
    .elementor-element-1f1afff .elementor-widget-image,
    .elementor-element-1f1afff .elementor-widget-theme-post-featured-image {
        position: sticky;
        top: 30px; /* allineato con il testo sticky */
        height: calc(100vh - 30px);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 2 !important;
    }
}

@media (max-width: 991px) {
    .elementor-element-47fa596 {
        position: unset !important; 
        top: unset !important;
    }
}

/* L'immagine si adatta senza uscire dalla viewport */
.elementor-element-1f1afff img {
    max-height: 100%;
    width: 100%;
    object-fit: cover;
}

/* Spazio tra uno step e l'altro */
.elementor-element-1f1afff .elementor-widget-image:not(:last-child),
.elementor-element-1f1afff .elementor-widget-theme-post-featured-image:not(:last-child) {
    margin-bottom: 40vh;
}

/* layering */
.elementor-element-1f1afff .elementor-widget-image:nth-child(1),
.elementor-element-1f1afff .elementor-widget-theme-post-featured-image:nth-child(1) {
    z-index: 1;
}
.elementor-element-1f1afff .elementor-widget-image:nth-child(2) {
    z-index: 2;
}
.elementor-element-1f1afff .elementor-widget-image:nth-child(3) {
    z-index: 3;
}
.elementor-element-2de7d2c {
    min-height: 300vh; /* deve essere più alto dello stack immagini */
}




/* Forza il container a comportarsi bene con sticky */
.elementor-element-2de7d2c {
    display: flex !important;
    align-items: flex-start;
}

@media (max-width: 768px) {
    .elementor-element-2de7d2c {
        display: block !important;
    }
}


/* Importantissimo: niente overflow */
.elementor-element-2de7d2c,
.elementor-element-1f1afff,
.elementor-element-47fa596 {
    overflow: visible !important;
}
.elementor-element-47fa596 {
    position: sticky !important;
    top: 120px;
    align-self: flex-start;
}

.elementor-element.elementor-element-47fa596.e-con-full.e-flex.e-con.e-child {
    z-index: 5 !important;
}
.pxl-nav-menu .pxl-menu-primary > li:hover > a {
    font-weight: 500 !important;
}


.pxl-divider-move { display: none !important; }

.pxl-menu-primary { position: relative; }

.pxl-sliding-bar {
  position: absolute;
  bottom: 20px;
  height: 4px;
  pointer-events: none;
}

body.home .pxl-sliding-bar {
    background:#fff;
}
body:not(.home) .pxl-sliding-bar,
body.home #menu-main-menu-1 .pxl-sliding-bar {
    background:#000;
}

.pxl-sliding-bar.is-animated {
  transition: left 0.5s cubic-bezier(.4,0,.2,1), width 0.5s cubic-bezier(.4,0,.2,1);
}



/* Fix salto: riserva già lo spazio del testo bold */
.pxl-menu-primary > li > a .pxl-menu-item-text {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}

.pxl-menu-primary > li > a .pxl-menu-item-text::after {
  content: attr(data-text);
  font-weight: 500;
  height: 0;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
  user-select: none;
}

.elementor-element-59c77ea .elementor-heading-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}

.elementor-element-59c77ea .elementor-heading-title::before,
.elementor-element-59c77ea .elementor-heading-title::after {
  content: '';
  display: block;
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='9' x2='12' y2='21'/%3E%3Cpolyline points='6 15 12 21 18 15'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  margin-top: -15px;
}

.elementor-18 .elementor-element.elementor-element-50cd152 > .elementor-element-populated {
    padding:0 !important;
}

body.home .elementor-element.elementor-element-9fcf531 {
    display: none;
}

body.home .elementor-element.elementor-element-a8473cb {
    display: none;
}

#artworks-gallery-on-artist-page .pxl-post--title {
    margin-bottom: 0 !important;
}

#artworks-gallery-on-artist-page .pxl-post--title {
    margin-bottom: 15px;
}

.inquire-form label {
    margin-bottom: 10px;
    font-weight: 300 !important;
}
.inquire-form select {
    font-weight: 300 !important;
}

.inquire-form input,
.inquire-form input::placeholder{
    font-weight: 300 !important;
    padding: 15px !important;
}

body:not(.rtl) .elementor-18 .elementor-element.elementor-element-3ad2df1,
body:not(.rtl) .elementor-18 .elementor-element.elementor-element-f9d7983,
body:not(.rtl) .elementor-18 .elementor-element.elementor-element-3ddcd76 {
    transform: translateX(-50%);
}

.dce-nav-menu {
    margin-left: 0 !important;
    margin-top: 10% !important;
    padding-left: 10px !important;
}

#dce-ul-menu .current-menu-item.current_page_item a {
    text-decoration: underline;
    text-decoration-thickness: 4px;    
    text-underline-offset: 10px;   
}

@media screen and (max-width: 1200px) {
  #pxl-header-default, #pxl-header-elementor {
    background-color: #fff;
  }
}


@media screen and (max-width: 991px) {
    #pxl-main {
        padding: 40px 0 !important;
    }
    .page-id-25473 #pxl-main {
        padding-top: 0 !important;
    }
    .page-id-23264 .pxl-content-area {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .page-id-23264 #portfolio-grid-items {
        margin-left: 0 !important;
    }
    .elementor-element-2de7d2c {
        min-height: unset !important;
    } 
}

@media screen and (max-width: 767px) {
    #grid-artists-listing {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

@media screen and (max-width: 768px) {
    
    #post-artists-grid:not(.pxl-post-grid-slider) .pxl-grid-item,
    #post-artists-grid .pxl-post-grid-slider .pxl-swiper-slide {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    
    body.page-id-23260 #pxl-content-area {
        padding-left: 0;
        padding-right: 0;
    }
    .elementor-element-8f49146,
    .elementor-element-41f5b37 {
        left: 25px;
        right: unset !important;
    }
}

@media screen and (max-width: 991px) and (min-width: 768px) {
    #post-artists-grid:not(.pxl-post-grid-slider) .pxl-grid-item:nth-child(even) {
        padding-left: 0 !important;
        padding-right: 10px !important;
    }
    #post-artists-grid:not(.pxl-post-grid-slider) .pxl-grid-item:nth-child(odd) {
        padding-left: 10px !important;
        padding-right: 0 !important;
    }
    #pxl-post-23264 .pxl-portfolio-grid-layout6 .pxl-post-container-hover {
        flex-direction: column;
    }
    #pxl-post-23264 .pxl-portfolio-grid-layout6 .pxl-imgs-hover {
        max-width: 100% !important;
        width: 100% !important;
    }
    #pxl-post-23264 .pxl-portfolio-grid-layout6 .pxl-grid-inner {
        max-width: 100% !important;
        width: 100% !important;
    }
}

@media (max-width: 575px) {
  .pxl-post-navigation .pxl-icon-link {
    font-size: 20px;
  }
}

#privacy-content h1 {
    font-size: 40px !important;
    font-weight: 400 !important;
}

#privacy-content h2 {
    font-size: 32px !important;
    font-weight: 400 !important;
}

#privacy-content h3 {
    font-size: 30px !important;
    font-weight: 400 !important;
}

.cky-consent-container.cky-banner-bottom a {
    color: #000 !important;
}

.cky-consent-container.cky-banner-bottom .cky-btn {
    background-color: #000 !important;
    color: #fff !important;
    border: 1px solid #000;
    border-color: #000 !important;
}
.cky-consent-container.cky-banner-bottom .cky-btn:hover {
    background-color: #fff !important;
    color: #000 !important;
    opacity: 1 !important;
}


@media (max-width: 767px) {
  /* Disabilita il positioning assoluto del masonry */
  #grid-artworks-custom .pxl-grid-inner.pxl-grid-masonry {
    height: auto !important;
  }

  #grid-artworks-custom .pxl-grid-inner.pxl-grid-masonry .pxl-grid-item {
    position: relative !important;
    left: auto !important;
    top: auto !important;
  }

  /* Forza tutte le immagini allo stesso ratio */
  #grid-artworks-custom .pxl-grid-item .pxl-post--featured {
    height: auto !important;
    aspect-ratio: 2 / 3;
    overflow: hidden;
  }

  #grid-artworks-custom .pxl-grid-item .pxl-post--featured a {
    display: block;
    height: 100%;
  }

  #grid-artworks-custom .pxl-grid-item .pxl-post--featured img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}


@media (max-width: 768px) {
  .page-id-23264 #portfolio-grid-items {
    height: auto !important;
  }

  .page-id-23264 #portfolio-grid-items .pxl-grid-item {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 100% !important;
  }

  .page-id-23264 .pxl-grid-item .pxl-post--holder {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    grid-template-areas:
      "project year"
      "area    year" !important;
    column-gap: 12px !important;
  }

  .page-id-23264.pxl-grid-item .pxl-post--project {
    grid-area: project !important;
  }

  .page-id-23264 .pxl-grid-item .pxl-post--area {
    grid-area: area !important;
  }

  .page-id-23264 .pxl-grid-item .pxl-post--year {
    grid-area: year !important;
    align-self: center !important;
    text-align: right !important;
  }
}

@media (max-width: 768px) {
  .postid-23882 .pxl-grid-inner.pxl-grid-masonry {
    height: auto !important;
    display: flex;
    flex-direction: column;
  }

  .postid-23882 .pxl-grid-inner.pxl-grid-masonry .pxl-grid-item {
    position: static !important;
    width: 100% !important;
    left: auto !important;
    top: auto !important;
  }
}

/* Case Images Slip Caption */
.pxl-images-slip-caption.style-1 {
  --pxl-slip-caption-height: min(950px, 100svh);
}

.pxl-images-slip-caption.style-1 .pxl-images--content {
  justify-content: flex-start !important;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content {
  overflow: visible;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content:not(:last-child) {
  z-index: auto;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content:nth-child(1) {
  z-index: 1;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content:nth-child(2) {
  z-index: 2;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content:nth-child(3) {
  z-index: 3;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content:nth-child(4) {
  z-index: 4;
}

.pxl-images-slip-caption.style-1 .pxl-images--content .pxl-item--content:nth-child(5) {
  z-index: 5;
}

.pxl-images-slip-caption.style-1 .pxl-item--content {
  position: relative;
}

.pxl-images-slip-caption.style-1 .pxl-item--content::before {
  content: '';
  display: block;
  height: var(--pxl-slip-caption-height);
}

.pxl-images-slip-caption.style-1 .pxl-item--media {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--pxl-slip-caption-height);
}

.pxl-images-slip-caption.style-1 .pxl-item--image {
  height: 100%;
  overflow: hidden;
}

.pxl-images-slip-caption.style-1 .pxl-item--captions {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: var(--pxl-slip-caption-height);
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 0 25px max(24px, 4svh) 25px;
  box-sizing: border-box;
  z-index: 10;
  pointer-events: none;
}

.elementor-widget-pxl_images_slip_caption .pxl-images-slip-caption.style-1 .pxl-item--image {
  max-height: none !important;
  height: 100% !important;
}

@media screen and (max-width: 1200px) {
  .pxl-images-slip-caption.style-1 {
    --pxl-slip-caption-height: min(800px, 100svh);
  }
}

@media screen and (max-width: 1024px) {
  .pxl-images-slip-caption.style-1 {
    --pxl-slip-caption-height: min(768px, 100svh);
  }
}

.pxl-images-slip-caption .pxl-item--caption {
  position: static;
  margin: 0;
  color: #fff !important;
  font-family: 'Founders Grotesk', sans-serif;
  font-size: clamp(16px, 1.56vw, 24px);
  line-height: 1.2;
  font-weight: 300;
  font-style: normal;
}

.pxl-images-slip-caption .pxl-item--caption .pxl-item--title {
  margin: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  font-style: inherit;
}

.pxl-images-slip-caption .pxl-item--caption-left,
.pxl-images-slip-caption .pxl-item--caption-right {
  bottom: auto;
  left: auto;
  right: auto;
}

.pxl-images-slip-caption .pxl-item--caption-link {
  color: inherit;
  text-decoration: none;
  pointer-events: auto;
}

.pxl-images-slip-caption .pxl-item--caption-link:hover {
  text-decoration: underline;
}

/* Acquasanta Hero Slider */
.acquasanta-hero-slider {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  background: #111;
}

.acquasanta-hero-main,
.acquasanta-hero-main .pxl-swiper-wrapper,
.acquasanta-hero-main .pxl-swiper-slide {
  height: 100%;
}

.acquasanta-hero-main .pxl-swiper-wrapper {
  position: relative;
}

.acquasanta-hero-main.swiper-fade .pxl-swiper-slide {
  pointer-events: none;
}

.acquasanta-hero-main.swiper-fade .pxl-swiper-slide.swiper-slide-active {
  pointer-events: auto;
}

.acquasanta-hero-slide {
  position: relative;
}

/* Before Swiper init: full-width slides (content is absolute, so width:auto collapses them), only first visible */
.acquasanta-hero-main:not(.swiper-initialized) .acquasanta-hero-slide {
  width: 100%;
}

.acquasanta-hero-main:not(.swiper-initialized) .acquasanta-hero-slide:not(:first-child) {
  visibility: hidden;
}

.acquasanta-hero-slide-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.acquasanta-hero-slide-link {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
}

.acquasanta-hero-caption,
.acquasanta-hero-title,
.acquasanta-hero-subtitle,
.acquasanta-hero-credit {
  color: #fff !important;
  font-family: 'Founders Grotesk', sans-serif;
}

.acquasanta-hero-caption {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 3;
  width: 100%;
  max-width: 720px;
  padding: 50px clamp(20px, 3.65vw, 56px) 60px;
  margin: 0;
  pointer-events: none;
}

.acquasanta-hero-title {
  margin: 0 0 4px;
  font-size: clamp(32px, 4.4vw, 68px);
  line-height: 1.05;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
}

.acquasanta-hero-subtitle {
  margin: 0 0 4px;
  font-size: clamp(22px, 2.5vw, 38px);
  line-height: 1.2;
  font-weight: 300;
  font-style: italic;
}

.acquasanta-hero-credit {
  margin: 0;
  font-size: clamp(16px, 1.56vw, 24px);
  line-height: 1.2;
  font-weight: 300;
  font-style: normal;
}

.acquasanta-hero-slider--has-nav .acquasanta-hero-pagination {
  position: absolute;
  left: clamp(20px, 3.65vw, 56px);
  z-index: 4;
  display: flex;
  gap: 12px;
  width: min(360px, calc(100% - 2 * clamp(20px, 3.65vw, 56px)));
  pointer-events: auto;
}

.acquasanta-hero-pagination button {
  flex: 1;
  position: relative;
  height: 28px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  cursor: pointer;
  opacity: 1;
}

.acquasanta-hero-pagination button::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 3px;
  background: rgba(255, 255, 255, 0.35);
  transition: height 0.25s ease, background 0.25s ease;
}

.acquasanta-hero-pagination button:hover::before {
  background: rgba(255, 255, 255, 0.6);
}

.acquasanta-hero-pagination button.swiper-pagination-bullet-active::before {
  height: 6px;
  background: #fff;
}
/* Artwork single: designer block above "Other Editions" */
.elementor-widget-shortcode:has(.acquasanta-artwork-designer) {
  width: 100%;
}

.acquasanta-artwork-designer {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 50px;
  max-width: 1100px;
  margin: 0 auto 90px;
}

.acquasanta-artwork-designer__image {
  flex: 0 0 42%;
  display: block;
}

.acquasanta-artwork-designer__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.acquasanta-artwork-designer__content {
  flex: 1 1 auto;
}

.acquasanta-artwork-designer__label {
  margin: 0 0 10px;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b6b6b;
}

.acquasanta-artwork-designer__name {
  margin: 0 0 30px;
  font-size: 40px;
  line-height: 1.1;
}

.acquasanta-artwork-designer__name a {
  color: #000;
}

.acquasanta-artwork-designer__link {
  display: inline-block;
  padding: 12px 30px;
  border: 1px solid #000;
  color: #000;
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.acquasanta-artwork-designer__link:hover {
  background-color: #000;
  color: #fff;
}

@media (max-width: 767px) {
  .acquasanta-artwork-designer {
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
    margin-bottom: 60px;
    padding: 0 20px;
  }

  .acquasanta-artwork-designer__name {
    font-size: 30px;
    margin-bottom: 20px;
  }
}

/* Masonry grids: keep the empty grid-sizer out of the flow so items sit in place before Isotope runs (no jump on load) */
.pxl-grid .pxl-grid-masonry > .grid-sizer {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
}

/* Elementor "stretched" sections are widened by JS only after load: on touch screens
   show them full width from the start (no white side bands). The negative margin stays
   on after Elementor's JS runs; Elementor measures the shifted offset and sets left: 0,
   so the end result is the same. Desktop excluded: 100vw would include the scrollbar. */
@media (max-width: 1024px) {
  body .elementor-section.elementor-section-stretched {
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}

/* Soft page transition (js/page-transition.js): fade in on load, fade out when leaving.
   "backwards" fill: no opacity left on body after the animation (no lasting stacking context). */
@keyframes acquasanta-page-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

body {
  animation: acquasanta-page-in 0.35s ease-out backwards;
}

html.acquasanta-is-leaving body {
  animation: none;
  opacity: 0;
  transition: opacity 0.2s ease-in;
}

@media (prefers-reduced-motion: reduce) {
  body,
  html.acquasanta-is-leaving body {
    animation: none;
    opacity: 1;
    transition: none;
  }
}

/* Header (template 14490): Elementor "laptop" breakpoint (<=1366px) sets the section padding
   to 0, so on small notebooks the logo touched the screen edge while the content keeps 25px. */
@media (min-width: 1201px) and (max-width: 1366px) {
  .elementor-14490 .elementor-element.elementor-element-9e58479 {
    padding-left: 25px;
    padding-right: 25px;
  }
}

/* Desktop sidebar menu (hidden panel, template 14516): the panel starts below the header
   (inline top) but was 100vh tall, so its bottom was off screen; the close-button section
   also pushed the menu down. Fit the panel to the visible area and center the menu. */
.pxl-hidden-panel-popup.pxl-hidden-template-14516 {
  height: auto;
  bottom: 0;
}

.pxl-hidden-panel-popup.pxl-pos-right.pxl-hidden-template-14516 .pxl-popup--conent {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
  max-height: none;
}

.pxl-hidden-template-14516 .pxl-conent-elementor,
.pxl-hidden-template-14516 .elementor-14516 {
  display: flex;
  flex-direction: column;
  flex: 1 0 auto;
  position: relative;
}

.pxl-hidden-template-14516 .elementor-14516 > .elementor-element-4d3cdaa {
  position: absolute;
  top: 0;
  z-index: 2;
}

.pxl-hidden-template-14516 .elementor-14516 > .elementor-element-aee323e,
.pxl-hidden-template-14516 .elementor-14516 > .elementor-element-aee323e > .e-con-inner {
  flex: 1 0 auto;
  justify-content: center;
}

/* 404 page (404.php). The parent theme hides header and footer on 404: show them. */
.error404 header,
.error404 footer {
  display: block;
}

.acquasanta-404 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 60vh;
  padding: 80px 25px;
  text-align: center;
}

.acquasanta-404__code {
  margin: 0 0 10px;
  font-size: clamp(80px, 14vw, 180px);
  font-weight: 200;
  line-height: 1;
  color: #000;
}

.acquasanta-404__title {
  margin: 0 0 16px;
  font-size: clamp(28px, 3vw, 40px);
  text-transform: uppercase;
  color: #000;
}

.acquasanta-404__text {
  max-width: 480px;
  margin: 0 0 36px;
  color: #6b6b6b;
}

.acquasanta-404__button {
  display: inline-block;
  padding: 14px 34px;
  background-color: #000;
  border: 1px solid #000;
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.acquasanta-404__button:hover {
  background-color: #fff;
  color: #000;
}

/* Elementor popups (e.g. Enquire on artworks) above the cookie banner (z-index 9999999):
   otherwise, until cookies are accepted, the banner covered the form and its Send button on phones. */
.elementor-popup-modal {
  z-index: 10000000 !important;
}

/* Elementor Pro caps popups at 100vh: on phones that is the screen with the browser bars
   hidden, so with Chrome's bottom toolbar visible the end of the popup (Send button) sat
   under it. 100dvh follows the area actually visible. */
.elementor-popup-modal {
  height: 100dvh;
}

.elementor-popup-modal .dialog-message {
  max-height: 100vh;
  max-height: 100dvh;
  overscroll-behavior: contain;
}

/* iOS zooms into form fields with text under 16px when they get focus */
@media (max-width: 767px) {
  .elementor-popup-modal .elementor-field-group .elementor-field,
  .elementor-popup-modal .elementor-field-group select,
  .elementor-popup-modal .elementor-field-group textarea {
    font-size: 16px;
  }

  /* shorter form on phones: less scrolling to reach Send */
  .elementor-popup-modal .elementor-field-group textarea {
    height: 120px;
  }
}

/* Mobile/tablet header: the theme switches it to "fixed" past 100px of scroll and slides it
   in again (0.95s animation) every time; fast scrolling / iOS bounce around the threshold
   made it flicker. Keep it fixed all the time, with its 68px reserved in the flow. */
@media (max-width: 1199px) {
  #pxl-header-elementor {
    min-height: 68px !important;
  }

  #pxl-header-elementor #pxl-header-mobile,
  #pxl-header-elementor #pxl-header-mobile.pxl-header-mobile-fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 999;
    background-color: #fff;
    animation: none;
  }
}

/* Artwork single (template 23443): the ARTIST / YEAR / DIMENSION table split 50/50, so long
   artist names (e.g. "Francesco Maria Messina") wrapped on phones and on tablets (~800-1000px,
   where the info column is narrow) and the row borders no longer lined up. Labels column
   shrinks to its content, values get the rest, rows size to content and both cells of a row
   stretch to the same height. Values are right-aligned, so on wide screens it looks unchanged. */
.elementor-23443 .elementor-element.elementor-element-4daef1d.e-grid {
  --e-con-grid-template-columns: auto 1fr;
  --e-con-grid-template-rows: auto;
  --align-items: stretch;
}

/* space between columns as padding, not gap, so the row borders stay one continuous line */
.elementor-23443 .elementor-element.elementor-element-4daef1d.e-grid > .elementor-widget-heading {
  padding-right: 20px;
}

.elementor-23443 .elementor-element.elementor-element-4daef1d.e-grid > .elementor-element {
  --align-self: stretch;
  display: flex;
  align-items: center;
}

.elementor-23443 .elementor-element.elementor-element-4daef1d.e-grid > .elementor-element > .elementor-widget-container {
  align-self: stretch;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

@media (max-width: 767px) {
  .elementor-23443 .elementor-element.elementor-element-4daef1d .elementor-element h2 {
    font-size: 16px;
  }
}

/* Breadcrumb single artwork: hover come il menu principale (bold + barra sotto) */
.elementor-element-a569e8f a {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}

/* Riserva lo spazio del testo bold per evitare il salto */
.elementor-element-a569e8f a::before {
  content: "ARTWORKS";
  font-weight: 500;
  height: 0;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
  user-select: none;
  order: 1;
}

.elementor-element-a569e8f a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 100%;
  height: 4px;
  background: #000;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.5s cubic-bezier(.4,0,.2,1);
  pointer-events: none;
}

.elementor-element-a569e8f a:hover {
  font-weight: 500;
}

.elementor-element-a569e8f a:hover::after {
  transform: scaleX(1);
}

/* Exhibitions: immagine per riga (markup in maiko/elements/element-templates.php,
   maiko_get_portfolio_grid_layout6). Per ora nascosta ovunque: su mobile si usa il doppio tap
   (js/portfolio-ajax.js). Per tornare alle immagini per riga, mostrarla sotto i 991px e
   nascondere .pxl-imgs-hover. */
.pxl-portfolio-grid-layout6 .pxl-post--mobile-img {
  display: none;
}

/* Doppio tap: la riga toccata una volta mostra la freccia come l'hover desktop ("tocca di nuovo") */
.pxl-portfolio-grid-layout6 .pxl-grid-item.is-tapped .pxl-post--title a {
  padding-left: 28px;
}
.pxl-portfolio-grid-layout6 .pxl-grid-item.is-tapped .pxl-post--title svg {
  transform: scale(1);
  opacity: 1;
}
