/* MINI */
@media only screen
and (min-width: 768px)
and (max-width: 1024px)
and (min-height: 429px)
and (orientation: landscape) {
    /* Header mobile: altezza fissa = drawer top, burger trigger visibile, nav desktop nascosta */
    .site-header { height: var(--header-h); }
    .site-header .nav,
    .site-header .header-actions { display: none; }
    .header-inner { padding: 0 24px; justify-content: space-between; gap: 1rem; } /* = .container */
    .brand-block { padding-left: 0 !important; }
    .mobile-nav-trigger { display: inline-flex; align-items: center; justify-content: center; }
    .uf-glitch { display: none; }

    /* Header verde su scroll + drawer aperto */
    .site-header.is-scrolled,
    body.header-light .site-header.is-scrolled,
    body.mobile-nav-open .site-header { background: var(--uf-mint); color: var(--uf-black); border-bottom-color: var(--uf-black); }
    .mobile-nav__body { background: var(--uf-mint); }

    /* Drawer side-sheet */
    .mobile-nav__panel { width: 55%; max-width: 480px; }

    /* Calendario */
    .month-tabs { display: none; }
    .month-select { display: block; }
    .calendar-events { grid-template-columns: repeat(2, 1fr); }
    .news-grid { grid-template-columns: repeat(3, 1fr); }
    /* PB visibility */
    .is-desktop-only { display: none; }
    .is-mobile-only { display: block; }

    /* Gallery detail masonry -> 2-col */
    .gallery-detail-grid--masonry { gap: 1rem; }
    .gallery-detail-grid--masonry .gallery-detail-item--w25,
    .gallery-detail-grid--masonry .gallery-detail-item--w50,
    .gallery-detail-grid--masonry .gallery-detail-item--w100 { width: calc(50% - 0.5rem); height: 15rem; }

    /* Hospitality cards: 3-col -> 2-col, ultima full-width */
    .hospitality-cards { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .hospitality-card:nth-child(3) {/* grid-column: span 2; */}

    /* Societa Trasparente - layout desktop (aside + content) */
    .trasparente-grid { grid-template-columns: 240px minmax(0, 1fr); gap: 24px; }
    .trasparente-content__title { font-size: 40px; }
    /* Overflow guards content col stretta */
    .trasparente-buttons-list__item { flex-wrap: wrap; min-width: 0; row-gap: 12px; column-gap: 16px; padding: 16px 0; }
    .trasparente-buttons-list__info { max-width: none; flex: 1 1 auto; min-width: 0; }
    .trasparente-buttons-list__cta { min-width: 0; max-width: 100%; flex-basis: auto; padding: 10px 14px; gap: 10px; font-size: 12px; white-space: nowrap; }
    .trasparente-table--cols-4 th,
    .trasparente-table--cols-4 td { font-size: 12px; padding: 8px; }
    .trasparente-table--cols-3 th,
    .trasparente-table--cols-3 td,
    .trasparente-table--cols-4 th,
    .trasparente-table--cols-4 td { max-width: 0; }


    /* === FIXES === */
    .event-card__media { border: 0; }
    .event-card__media .image-slot,
    .event-card__media img { height: auto; object-fit: contain; border: 1px solid var(--uf-gray-300); }
    .hero-content { padding-left: 0; padding-top: 10rem; }
    .hero-content > .container { padding-left:24px }
    .hero--about .hero-h1 { font-size: 72px; line-height: 1.05; }
    .calendar-card { min-height: 440px; }
    .uf-lightbox__stage { padding: 60px 80px; }
    .trasparente-body { padding-bottom: 112px; }
    .hospitality-card:nth-child(3) .hospitality-card__media { aspect-ratio: 24/9; max-height: 380px; }
    .contact-map iframe { height: 440px; }
    .event-card { grid-template-columns: 240px 1fr 280px; gap: 1.5rem; }
    .cards-row { gap: 16px; }
    .tag-card { padding: 32px 24px 20px; min-height: 280px; }
    .tag-card__cta { margin: auto -24px 0; padding: 16px 24px 0; }
    .hero--about { padding-left: 0; }
    .hero--about__inner { padding-left: 2rem; padding-right: var(--gutter); }
    .avvisi-body { padding-left: 0; }
    .avvisi-body__inner { padding-left: 0; }
    .hero-news-detail__title { font-size: 64px; line-height: 1.05; }
    .news-detail__grid { grid-template-columns: 1fr; gap: 36px; }
    .news-detail__aside { position: static; }
    .news-aside { max-height: none; }
    .news-aside__scroll { max-height: 420px; padding: 24px; gap: 24px; }
    .news-aside__item { padding: 0; }
    /* Anti-desync paint iOS Safari: no aspect-ratio, no -webkit-box/line-clamp */
    .news-aside__item-media { aspect-ratio: auto; height: 69px; }
    .news-aside__item-title { display: block; overflow: visible; }
    .split-cols { gap: 32px; }
    .split-cols__image--caption { height: auto; }
    .services-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
    .container { padding: 0 24px; }
    .spazi-section__grid { grid-template-columns: 2fr 1fr; gap: 36px; }
    .form-section__grid { grid-template-columns: 1fr; gap: 36px; }
    .form-section__row { grid-template-columns: 1fr 1fr; gap: 14px; }
    .news-pagination, .gallery-pagination { flex-wrap: wrap; }
    .news-pagination-label, .gallery-pagination-label { position: static; width: auto; margin-left: auto; }
    .month-tabs { display: none; }
    .month-select { display: block; }
    .month-tab { font-size: 14px; padding: 14px 0; }
    .trasparente-content__title { font-size: 38px; }
    .trasparente-menu__link { padding: 12px 14px; font-size: 13px; gap: 10px; }
    .trasparente-aside { top: calc(var(--header-h) + 8px); }
    .numbers-grid {grid-template-columns: repeat(2, 1fr);}

    /* === MOBILE FIXES === */
    .events__head .btn-swap, .news__head .btn-swap { justify-content: flex-end; }
    body.page-contact\.us .form-section__intro { order: 2; }
    body.page-contact\.us .form-section__form { order: 1; }
    .form-section__form button.event-card__cta { min-width: 0; width: 100%; align-self: stretch; justify-content: flex-start; min-height: 48px; }
    .calendar-card, .calendar-card:hover { border-left: 0; }
    .calendar-card__arrow, .calendar-card:hover .calendar-card__arrow { fill: var(--uf-gray-50);}
    .footer-legal > * + *::before{margin: 0 0.8rem;}
}

/* AIR */
@media only screen
and (min-width: 1025px)
and (max-width: 1300px)
and (min-height: 429px)
and (orientation: landscape){
    /* Header mobile: altezza fissa = drawer top, burger trigger visibile, nav desktop nascosta */
    .site-header { height: var(--header-h); }
    .site-header .nav,
    .site-header .header-actions { display: none; }
    .header-inner { padding: 0 var(--gutter); justify-content: space-between; gap: 1rem; } /* = .container */
    .brand-block { padding-left: 0 !important; }
    .mobile-nav-trigger { display: inline-flex; align-items: center; justify-content: center; }
    .uf-glitch { display: none; }

    /* Header verde su scroll + drawer aperto */
    .site-header.is-scrolled,
    body.header-light .site-header.is-scrolled,
    body.mobile-nav-open .site-header { background: var(--uf-mint); color: var(--uf-black); border-bottom-color: var(--uf-black); }
    .mobile-nav__body { background: var(--uf-mint); }

    /* Drawer side-sheet */
    .mobile-nav__panel { width: 50%; max-width: 540px; }

    /* Calendario */
    .month-tabs { display: none; }
    .month-select { display: block; }
    .calendar-events,
    .calendar-events { grid-template-columns: repeat(2, 1fr); }
    .news-grid { grid-template-columns: repeat(3, 1fr); }

    /* PB visibility */
    .is-desktop-only { display: none; }
    .is-mobile-only { display: block; }

    /*Spazi*/
    .spazi-section__grid { grid-template-columns: 2fr 1fr; gap: 36px; }

    /* Gallery detail masonry -> 2-col */
    .gallery-detail-grid--masonry { gap: 1rem; }
    .gallery-detail-grid--masonry .gallery-detail-item--w25,
    .gallery-detail-grid--masonry .gallery-detail-item--w50,
    .gallery-detail-grid--masonry .gallery-detail-item--w100 { width: calc(50% - 0.5rem); height: 15rem; }

    /* Hospitality cards: 3-col -> 2-col, ultima full-width */
    .hospitality-cards { grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .hospitality-card:nth-child(3) {/* grid-column: span 2; */}

    /* Societa Trasparente - layout desktop (aside + content) */
    .trasparente-grid { grid-template-columns: 260px minmax(0, 1fr); gap: 28px; }
    .trasparente-content__title { font-size: 44px; }
    /* Overflow guards content col stretta */
    .trasparente-buttons-list__item { flex-wrap: wrap; min-width: 0; row-gap: 12px; column-gap: 16px; padding: 16px 0; }
    .trasparente-buttons-list__info { max-width: none; flex: 1 1 auto; min-width: 0; }
    .trasparente-buttons-list__cta { min-width: 0; max-width: 100%; flex-basis: auto; padding: 10px 14px; gap: 10px; font-size: 12px; white-space: nowrap; }
    .trasparente-table--cols-4 th,
    .trasparente-table--cols-4 td { font-size: 12px; padding: 8px; }
    .trasparente-table--cols-3 th,
    .trasparente-table--cols-3 td,
    .trasparente-table--cols-4 th,
    .trasparente-table--cols-4 td { max-width: 0; }


    /* === FIXES === */
    .event-card__media { border: 0; }
    .event-card__media .image-slot,
    .event-card__media img { height: auto; object-fit: contain; border: 1px solid var(--uf-gray-300); }
    .hero-content { padding-left: 0; padding-top: 11rem;}
    .hero-content > .container { padding-left:24px }
    .hero--about .hero-h1 { font-size: 72px; line-height: 1.05; }
    .calendar-card { min-height: 440px; }
    .uf-lightbox__stage { padding: 60px 80px; }
    .trasparente-body { padding-bottom: 112px; }
    .hospitality-card:nth-child(3) .hospitality-card__media { aspect-ratio: 24/9; max-height: 380px; }
    .contact-map iframe { height: 440px; }
    .event-card { grid-template-columns: 260px 1fr 360px; gap: 1.5rem; }
    .hero--about { padding-left: 0; }
    .hero--about__inner { padding-left: 2rem; }
    .split-cols__image--caption { height: auto; }
    .avvisi-body__inner { padding-left: calc(var(--gutter) + 60px); }
    .form-section__grid { gap: 32px; }

    /* === MOBILE FIXES === */
    .events__head .btn-swap, .news__head .btn-swap { justify-content: flex-end; }
    body.page-contact\.us .form-section__intro { order: 2; }
    body.page-contact\.us .form-section__form { order: 1; }
    .form-section__form button.event-card__cta { min-width: 0; width: 100%; align-self: stretch; justify-content: flex-start; min-height: 48px; }
    .calendar-card, .calendar-card:hover { border-left: 0; }
    .calendar-card__arrow, .calendar-card:hover .calendar-card__arrow { fill: var(--uf-gray-50); }
    .footer-legal > * + *::before{margin: 0 0.8rem;}
}

/* PRO */
@media only screen
and (min-width: 1300px)
and (max-width: 1377px)
and (min-height: 429px)
and (orientation: landscape){
    /* Header mobile: altezza fissa = drawer top, burger trigger visibile, nav desktop nascosta */
    .site-header { height: var(--header-h); }
    .site-header .nav,
    .site-header .header-actions { display: none; }
    .header-inner { padding: 0 var(--gutter); justify-content: space-between; gap: 1rem; } /* = .container */
    .brand-block { padding-left: 0 !important; }
    .mobile-nav-trigger { display: inline-flex; align-items: center; justify-content: center; }
    .uf-glitch { display: none; }

    /* Header verde su scroll + drawer aperto */
    .site-header.is-scrolled,
    body.header-light .site-header.is-scrolled,
    body.mobile-nav-open .site-header { background: var(--uf-mint); color: var(--uf-black); border-bottom-color: var(--uf-black); }
    .mobile-nav__body { background: var(--uf-mint); }

    /* Drawer side-sheet */
    .mobile-nav__panel { width: 45%; max-width: 560px; }

    /* Calendario */
    .month-tabs { display: flex; }
    .month-select { display: none; }
    .calendar-events,
    .news-grid { grid-template-columns: repeat(3, 1fr); }

    /* PB visibility */
    .is-desktop-only { display: none; }
    .is-mobile-only { display: block; }

    /*Spazi*/
    .spazi-section__grid { grid-template-columns: 2fr 1fr; gap: 36px; }

    /* Gallery detail masonry -> 2-col */
    .gallery-detail-grid--masonry { gap: 1rem; }
    .gallery-detail-grid--masonry .gallery-detail-item--w25,
    .gallery-detail-grid--masonry .gallery-detail-item--w50,
    .gallery-detail-grid--masonry .gallery-detail-item--w100 { width: calc(50% - 0.5rem); height: 15rem; }

    /* Hospitality cards: 3-col -> 2-col, ultima full-width */
    .hospitality-cards {grid-template-columns: repeat(3, 1fr);gap: 20px;}
    .hospitality-card:nth-child(3) {/* grid-column: span 2; */}

    /* Societa Trasparente */
    .trasparente-grid { grid-template-columns: 280px minmax(0, 1fr); gap: 32px; }
    .trasparente-content__title { font-size: 44px; }
    /* Overflow guards content col stretta */
    .trasparente-buttons-list__item { flex-wrap: wrap; min-width: 0; row-gap: 12px; column-gap: 16px; padding: 16px 0; }
    .trasparente-buttons-list__info { max-width: none; flex: 1 1 auto; min-width: 0; }
    .trasparente-buttons-list__cta { min-width: 0; max-width: 100%; flex-basis: auto; padding: 10px 14px; gap: 10px; font-size: 12px; white-space: nowrap; }
    .trasparente-table--cols-3 th,
    .trasparente-table--cols-3 td,
    .trasparente-table--cols-4 th,
    .trasparente-table--cols-4 td { max-width: 0; }


    /* === FIXES === */
    .event-card__media { border: 0; }
    .event-card__media .image-slot,
    .event-card__media img { height: auto; object-fit: contain; border: 1px solid var(--uf-gray-300); }
    .hero-content { padding-left: 0; padding-top: 14rem;}
    .hero-content > .container { padding-left:24px }
    .hero--about .hero-h1 { font-size: 72px; line-height: 1.05; }
    .calendar-card { min-height: 440px; }
    .uf-lightbox__stage { padding: 60px 80px; }
    .trasparente-body { padding-bottom: 112px; }
    .hospitality-card:nth-child(3) .hospitality-card__media {/* aspect-ratio: 24/9; *//* max-height: 380px; */}
    .contact-map iframe { height: 440px; }
    .hero--about { padding-left: 0; }
    .hero--about__inner { padding-left: 2rem; }
    .split-cols__image--caption { height: auto; }
    .avvisi-body__inner { padding-left: calc(var(--gutter) + 60px); }
    .form-section__grid { gap: 32px; }

    /* === MOBILE FIXES === */
    .events__head .btn-swap, .news__head .btn-swap { justify-content: flex-end; }
    body.page-contact\.us .form-section__intro { order: 2; }
    body.page-contact\.us .form-section__form { order: 1; }
    .form-section__form button.event-card__cta { min-width: 0; width: 100%; align-self: stretch; justify-content: flex-start; min-height: 48px; }
    .calendar-card, .calendar-card:hover { border-left: 0; }
    .calendar-card__arrow, .calendar-card:hover .calendar-card__arrow { fill: var(--uf-gray-50); }
}