/**
 * ASOR mobile — allineamento a Joomla custom.css (itemid-101 home)
 * Riferimento: ASOR JOOMLA/templates/ja_lawfirm/css/custom.css
 * Caricato per ultimo su home mobile. Desktop (≥992px): nessuna regola.
 */
@media (max-width: 992px) {
  html.itemid-101 .t3-wrapper,
  body.asor-home .t3-wrapper {
    background-color: #243b55 !important;
  }

  html.itemid-101 section.wrap.t3-sections,
  body.asor-home section.wrap.t3-sections {
    background-color: #243b55 !important;
  }

  html.itemid-101 #acm-features-92 .relative,
  body.asor-home #acm-features-92 .relative,
  body.itemid-101 #acm-features-92 .relative {
    display: none !important;
  }

  html.itemid-101 #acm-slideshow-89 p.item-desc,
  body.itemid-101 #acm-slideshow-89 p.item-desc {
    display: none !important;
  }
}

@media (max-width: 991px) {
  html.itemid-101 #acm-slideshow-89 h1::before,
  body.itemid-101 #acm-slideshow-89 h1::before,
  body.asor-home #acm-slideshow-89 h1::before {
    content: "A.SO.R" !important;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
    font-size: clamp(34px, 9vw, 40px) !important;
    letter-spacing: 4px !important;
    margin-top: 0 !important;
    margin-bottom: 10px !important;
  }

  html.itemid-101 #acm-slideshow-89 h1,
  html.itemid-101 #acm-slideshow-89 h1.item-title,
  body.itemid-101 #acm-slideshow-89 h1,
  body.asor-home #acm-slideshow-89 h1 {
    font-family: "Playfair Display", Georgia, "Times New Roman", serif !important;
    font-size: clamp(22px, 6vw, 28px) !important;
    letter-spacing: 0.08em !important;
    line-height: 1.35 !important;
  }

  html.itemid-101 #acm-features-129 .container,
  body.itemid-101 #acm-features-129 .container,
  body.asor-home #acm-features-129 .container {
    margin-top: -80px !important;
    padding-top: 0 !important;
  }

  html.itemid-101 #acm-features-129,
  body.itemid-101 #acm-features-129,
  body.asor-home #acm-features-129 {
    margin-top: 0 !important;
    padding-top: 0 !important;
    background-color: #243b55 !important;
  }

  html.itemid-101 .wrap.t3-sections,
  body.asor-home .wrap.t3-sections {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  html.itemid-101 #acm-features-129 .swiper-container.swiper-container-horizontal,
  body.itemid-101 #acm-features-129 .swiper-container.swiper-container-horizontal {
    min-height: 190px !important;
  }

  /* Foto scroll leggermente più piccole (override 70% Joomla) */
  html.itemid-101 #acm-features-129.acm-features.style-1 .features-image,
  body.itemid-101 #acm-features-129.acm-features.style-1 .features-image,
  body.asor-home #acm-features-129.acm-features.style-1 .features-image {
    width: 86% !important;
    max-width: 86% !important;
    min-height: 170px !important;
    max-height: 228px !important;
  }

  html.itemid-101 #acm-features-129.acm-features.style-1 .features-title,
  body.itemid-101 #acm-features-129.acm-features.style-1 .features-title {
    margin-top: -12px !important;
  }
}

@media (min-width: 360px) and (max-width: 480px) {
  html.itemid-101 #acm-slideshow-89 .slider-content,
  body.itemid-101 #acm-slideshow-89 .slider-content,
  body.asor-home #acm-slideshow-89 .slider-content {
    padding-top: 180px !important;
  }

  html.itemid-101 #acm-slideshow-89 .slider-content-inner.container::before,
  body.itemid-101 #acm-slideshow-89 .slider-content-inner.container::before,
  body.asor-home #acm-slideshow-89 .slider-content-inner.container::before {
    display: none !important;
    content: none !important;
  }

  html.itemid-101 #acm-slideshow-89 .swiper-slide.swiper-slide-active,
  body.itemid-101 #acm-slideshow-89 .swiper-slide.swiper-slide-active,
  body.asor-home #acm-slideshow-89 .swiper-slide.swiper-slide-active,
  html.itemid-101 #acm-slideshow-89 .swiper-container,
  body.itemid-101 #acm-slideshow-89 .swiper-container {
    min-height: 420px !important;
    height: auto !important;
  }

  html.itemid-101 #acm-slideshow-89 .img-bg img,
  body.itemid-101 #acm-slideshow-89 .img-bg img {
    min-height: 420px !important;
  }

  html.itemid-101 #acm-features-129 .container,
  body.itemid-101 #acm-features-129 .container,
  body.asor-home #acm-features-129 .container {
    margin-top: -200px !important;
  }

  html.itemid-101 #acm-features-129,
  body.itemid-101 #acm-features-129,
  body.asor-home #acm-features-129 {
    margin-top: 100px !important;
    padding-top: 0 !important;
  }

  html.itemid-101 #acm-slideshow-89 h1::before,
  body.itemid-101 #acm-slideshow-89 h1::before {
    font-size: 40px !important;
    margin-bottom: 10px !important;
  }

  html.itemid-101 #acm-slideshow-89 h1,
  body.itemid-101 #acm-slideshow-89 h1 {
    font-size: 28px !important;
  }
}

/* Mobile: niente logo stemma hero (desktop invariato) */
@media (max-width: 991px) {
  html.itemid-101 #acm-slideshow-89 .slider-content-inner.container::before,
  html.itemid-101.home #acm-slideshow-89 .slider-content-inner.container::before,
  body.itemid-101 #acm-slideshow-89 .slider-content-inner.container::before,
  body.asor-home #acm-slideshow-89 .slider-content-inner.container::before {
    display: none !important;
    visibility: hidden !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    max-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    overflow: hidden !important;
  }

  /* Centratura hero: NO left 50% + translateX(-50%) con width 100% (taglia il testo a sinistra) */
  html.itemid-101 #acm-slideshow-89.slideshow .slider-content-inner,
  html.itemid-101 #acm-slideshow-89 .slider-content-inner,
  html.itemid-101 #acm-slideshow-89 .slider-content-inner.container,
  body.itemid-101 #acm-slideshow-89 .slider-content-inner,
  body.itemid-101 #acm-slideshow-89 .slider-content-inner.container,
  body.asor-home #acm-slideshow-89 .slider-content-inner,
  body.asor-home #acm-slideshow-89 .slider-content-inner.container {
    position: relative !important;
    top: auto !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    -webkit-transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    align-items: center !important;
    text-align: center !important;
  }

  html.itemid-101 #acm-slideshow-89 .slider-content,
  body.itemid-101 #acm-slideshow-89 .slider-content,
  body.asor-home #acm-slideshow-89 .slider-content {
    padding-top: 158px !important;
    justify-content: flex-start !important;
    align-items: center !important;
  }

  html.itemid-101 #acm-slideshow-89 .slider-content-inner.container,
  body.itemid-101 #acm-slideshow-89 .slider-content-inner.container,
  body.asor-home #acm-slideshow-89 .slider-content-inner.container {
    margin-top: 0 !important;
  }

  html.itemid-101 #acm-slideshow-89 .slider-content-inner .ja-animation,
  html.itemid-101 #acm-slideshow-89 h1.ja-animation,
  body.itemid-101 #acm-slideshow-89 h1.ja-animation,
  body.asor-home #acm-slideshow-89 h1.ja-animation {
    transform: none !important;
    -webkit-transform: none !important;
    opacity: 1 !important;
  }

  html.itemid-101 #acm-slideshow-89 h1,
  html.itemid-101 #acm-slideshow-89 h1.item-title,
  body.itemid-101 #acm-slideshow-89 h1,
  body.asor-home #acm-slideshow-89 h1 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 12px !important;
    text-align: center !important;
    white-space: normal !important;
    margin-top: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html.itemid-101 #acm-slideshow-89 h1::before,
  body.itemid-101 #acm-slideshow-89 h1::before,
  body.asor-home #acm-slideshow-89 h1::before {
    content: "A.SO.R" !important;
    display: block !important;
    order: 1 !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 auto 10px !important;
    margin-top: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    position: static !important;
    float: none !important;
  }

  /* Numero centrato viewport; email e menu ai lati */
  html body .ja-topbar .asor-mobile-topbar-stack,
  html.itemid-101.home .ja-topbar .asor-mobile-topbar-stack,
  body.asor-home .ja-topbar .asor-mobile-topbar-stack {
    display: flex !important;
    justify-content: space-between !important;
    position: relative !important;
  }

  html body .ja-topbar .asor-mobile-numero-floating,
  html.itemid-101 .ja-topbar .asor-mobile-numero-floating,
  body.asor-home .ja-topbar .asor-mobile-numero-floating {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(calc(-50% + 35px), calc(-50% + 22px)) !important;
    -webkit-transform: translate(calc(-50% + 35px), calc(-50% + 22px)) !important;
    margin: 0 !important;
  }

  html body .ja-topbar .asor-mobile-topbar-meta,
  html body .ja-topbar .asor-mobile-hamburger-slot {
    z-index: 3 !important;
  }

  html body .ja-topbar .asor-mobile-topbar-meta,
  html.itemid-101 .ja-topbar .asor-mobile-topbar-meta,
  body.asor-home .ja-topbar .asor-mobile-topbar-meta {
    max-width: none !important;
    width: 100% !important;
    overflow: visible !important;
  }

  html body .ja-topbar .asor-topbar-email-inline a.asor-topbar-email-link,
  html.itemid-101 .ja-topbar .asor-topbar-email-inline a.asor-topbar-email-link {
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: none !important;
    white-space: nowrap !important;
    font-size: 13px !important;
  }

  html body .ja-topbar .asor-mobile-numero-floating .asor-numero-blu-img,
  html.itemid-101 .ja-topbar .asor-mobile-numero-floating .asor-numero-blu-img {
    max-width: min(200px, 52vw) !important;
    max-height: 54px !important;
    width: auto !important;
    height: auto !important;
  }

  html body .ja-topbar .asor-mobile-numero-floating,
  html.itemid-101 .ja-topbar .asor-mobile-numero-floating,
  body.asor-home .ja-topbar .asor-mobile-numero-floating {
    max-width: min(200px, 52vw) !important;
  }
}
