/* XXXJOINT / Homepage: rules extracted from the exact uploaded IQIT export.
 * Loaded once by xjthemeassets, only on index. No public content IDs or tracking. */
/* Extracted from Elementor widget hatsgx3 */
/* Desktop: allineamento approvato. */
body#index #content .home-section--categories .home-columns--categories{margin-top:0!important}
body#index #content .home-section--categories .home-columns--categories>.elementor-container>.elementor-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
body#index #content .home-section--categories .home-columns--categories>.elementor-container>.elementor-row>.elementor-column{width:100%!important;min-width:0;max-width:none}
body#index #content .home-section.home-section--categories{padding-bottom:20px!important}
body#index #content .home-section--categories+.home-section.home-section--products{padding-top:0!important;margin-top:0!important}
@media(min-width:1025px){
 body#index #content .home-section--hero{padding-bottom:calc(min(14.5vw,208.8px) + 40px)!important}
 body#index #content .home-section--categories .home-columns--categories>.elementor-container>.elementor-row{margin-top:calc(-14.5% + 6.96px)!important}
}
@media(min-width:768px) and (max-width:1024px){
 body#index #content .home-section--hero{padding-bottom:calc(40vw + 36px)!important}
 body#index #content .home-section--categories .home-columns--categories>.elementor-container>.elementor-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:calc(-40% + 4.8px)!important}
}
@media(max-width:767px){
 body#index #content .home-section.home-section--hero{height:auto!important;max-height:none!important;min-height:0!important;padding-bottom:32px!important;background-image:none!important;overflow:visible!important}
 body#index #content .home-section.home-section--hero>.elementor-container,
 body#index #content .home-section.home-section--hero>.elementor-container>.elementor-row{height:auto!important;max-height:none!important}
 body#index #content .home-section.home-section--hero .xj-hero-note{position:static!important;transform:none!important;height:auto!important;max-height:none!important;overflow:visible!important}
 body#index #content .home-section.home-section--hero .xj-hero-note>.elementor-widget-container{padding-bottom:0!important;height:auto!important;overflow:visible!important}
 body#index #content .home-section.home-section--hero:before{bottom:calc(46px - 50vw)!important;background:linear-gradient(180deg,rgba(3,12,8,.9),rgba(3,12,8,.65)),url('/img/cms/immagini-home/hero-cannabis-shop-xxxjoint-960.webp') 66% center/cover no-repeat!important;pointer-events:none}
 body#index #content .home-section.home-section--categories{background:transparent!important;padding-top:0!important;margin-top:0!important;position:relative;z-index:1}
 body#index #content .home-section.home-section--categories .home-columns--categories,
 body#index #content .home-section.home-section--categories .home-columns--categories>.elementor-container,
 body#index #content .home-section.home-section--categories .home-columns--categories>.elementor-container>.elementor-row{margin-top:0!important;transform:none!important;top:auto!important}
 body#index #content .home-section.home-section--categories .home-columns--categories>.elementor-container>.elementor-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
}

/* Extracted from Elementor widget hatsgx3 */
@media(min-width:768px) and (max-width:1024px){
 body#index #content .home-section.home-section--hero{height:auto!important;max-height:none!important;min-height:0!important;padding-bottom:32px!important;background-image:none!important;overflow:visible!important}
 body#index #content .home-section.home-section--hero>.elementor-container,
 body#index #content .home-section.home-section--hero>.elementor-container>.elementor-row{height:auto!important;max-height:none!important}
 body#index #content .home-section.home-section--hero .xj-hero-note{position:static!important;transform:none!important;height:auto!important;max-height:none!important;overflow:visible!important}
 body#index #content .home-section.home-section--hero .xj-hero-note>.elementor-widget-container{padding-bottom:0!important;height:auto!important;overflow:visible!important}
 body#index #content .home-section.home-section--hero:before{bottom:calc(54px - 50vw)!important;background:linear-gradient(90deg,rgba(3,12,8,.93),rgba(3,12,8,.76) 43%,rgba(3,12,8,.08)),url('/img/cms/immagini-home/hero-cannabis-shop-xxxjoint-1536.webp') center/cover no-repeat!important;pointer-events:none}
 body#index #content .home-section.home-section--categories{background:transparent!important;padding-top:0!important;margin-top:0!important;position:relative;z-index:1}
 body#index #content .home-section.home-section--categories .home-columns--categories,
 body#index #content .home-section.home-section--categories .home-columns--categories>.elementor-container,
 body#index #content .home-section.home-section--categories .home-columns--categories>.elementor-container>.elementor-row{margin-top:0!important;transform:none!important;top:auto!important}
 body#index #content .home-section.home-section--categories .home-columns--categories>.elementor-container>.elementor-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
}

/* Extracted from Elementor widget hrh973e */
/* XXXJOINT R8: preserve each original image ratio; no clipping. */
body#index #content .xjb-section .xjb-slide { display: flow-root; }
body#index #content .xjb-section .xjb-featured .xjb-card { display: flow-root; }
body#index #content .xjb-section .xjb-card .ybc_item_img {
  display: block; position: relative; overflow: hidden;
  width: 100%; height: auto !important; min-height: 0 !important;
  max-height: none !important; padding-bottom: 0 !important; aspect-ratio: auto !important;
}


body#index #content .xjb-section .xjb-card .ybc_item_img img {
  display: block; position: static !important; inset: auto;
  width: 100% !important; height: auto !important; aspect-ratio: auto !important;
  max-width: 100% !important; max-height: none !important;
  object-fit: contain !important; object-position: center;
}
body#index #content .xjb-section .xjb-featured .ybc_item_img::after {
  content: ""; position: absolute; inset: 45% 0 0;
  background: linear-gradient(transparent, var(--xjb-green));
  pointer-events: none;
}
body#index #content .xjb-section .xjb-featured .blog_description,
body#index #content .xjb-section .xjb-featured .blog_description * {
  color: #fff !important; opacity: 1 !important;
}
body#index #content .xjb-section .xjb-horizontal .xjb-viewport { touch-action: pan-y pinch-zoom; }
body#index #content .xjb-section .xjb-vertical .xjb-viewport { touch-action: auto; }
/* Categoria homepage: le card sono gestite solo dal foglio principale
   xj-custom-20261028.css (overlay, gradiente, H3 e link). Nessun duplicato. */
/* Review copy spacing; Elementor native margin mirrors these values. */
body#index #content .home-section--reviews .xj-review-final-lead{margin-bottom:0}
body#index #content .home-section--reviews .xj-review-final-lead>p+p{margin-top:12px}
body#index #content .home-section--reviews .xj-review-final-lead.elementor-widget{margin-bottom:34px}
body#index #content .home-section--reviews .xj-review-summary-v3{margin-bottom:0}
body#index #content .home-section--reviews .xj-reviews-cta{margin:25px auto 0;text-align:center}
/* Buttons: keyboard focus has the same high-contrast change as hover. */
body#index #content .home-button .elementor-button,
body#index #content .home-button .elementor-button-link{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease}
body#index #content .home-button .elementor-button:hover,
body#index #content .home-button .elementor-button:focus-visible,
body#index #content .home-button .elementor-button-link:hover,
body#index #content .home-button .elementor-button-link:focus-visible{background-color:#22513b!important;border-color:#22513b!important;color:#fff!important;box-shadow:0 4px 16px rgba(0,0,0,.16)}
body#index #content .home-button .elementor-button:hover *,
body#index #content .home-button .elementor-button-link:hover *,
body#index #content .home-button .elementor-button-link:focus-visible *{color:inherit}
/* Also cover the homepage buttons without the optional home-button utility class. */
body#index #content .elementor-widget-button .elementor-button:hover,
body#index #content .elementor-widget-button .elementor-button:focus-visible{background-color:#22513b!important;border-color:#22513b!important;color:#fff!important}
/* Native heading widgets can emit DIV while preserving old presentation classes. */
body#index #content .home-service-title .elementor-heading-title,
body#index #content .home-dealer-title .elementor-heading-title,
body#index #content .home-store-title .elementor-heading-title{display:block}
/* FAQ: single readable answer block, consistent alignment and responsive gutters. */
body#index #content .xj-faq-accordion .elementor-accordion-item{box-sizing:border-box;overflow:hidden}
body#index #content .xj-faq-accordion .elementor-accordion-content{display:block;box-sizing:border-box;width:100%;padding:20px 24px;text-align:left;overflow-wrap:break-word}
body#index #content .xj-faq-accordion .elementor-accordion-content>p{margin:0 0 12px}
body#index #content .xj-faq-accordion .elementor-accordion-content>p:last-child{margin-bottom:0}
@media(max-width:1024px){body#index #content .home-section--reviews .xj-review-final-lead.elementor-widget{margin-bottom:28px}}
@media(max-width:767px){
 body#index #content .home-section--reviews .xj-review-final-lead.elementor-widget{margin-bottom:24px}
 body#index #content .home-section--reviews .xj-reviews-cta{margin-top:20px}
 body#index #content .xj-faq-accordion .elementor-accordion-content{padding:16px 16px}
}
@media(prefers-reduced-motion:reduce){body#index #content .home-button .elementor-button{transition:none}}
