/* Luliva product catalogue — isolated from the rest of the site */
.page.pageproduct{overflow-y:auto!important;overflow-x:hidden!important;background:#faf9f5!important;color:#30372d;z-index:0}.pageproduct .catalog-shell{max-width:1340px;margin:auto;padding:125px 6% 100px;min-height:100%;position:relative}.catalog-eyebrow{font-size:12px;letter-spacing:.25em;color:#82915a;font-weight:700}.catalog-heading h1{font-size:clamp(35px,5vw,70px);font-weight:500;margin:12px 0 12px;color:#344a29}.catalog-heading p{font-size:17px;max-width:680px;line-height:1.6;color:#686e61}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin:45px 0 28px}.catalog-filters{display:flex;gap:8px;flex-wrap:wrap}.catalog-filter{border:1px solid #d9ddcf;background:transparent;border-radius:30px;padding:10px 18px;color:#44523b;cursor:pointer}.catalog-filter.is-active,.catalog-filter:hover{background:#435a32;color:white;border-color:#435a32}.catalog-search{border:1px solid #d9ddcf;border-radius:24px;padding:11px 17px;background:white;max-width:100%;color:#344a29}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.catalog-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;border:1px solid #e9e9e2;background:#fff;padding:0 0 24px;cursor:pointer;transition:transform .25s,box-shadow .25s;color:#33412d;min-width:0}.catalog-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #283b221b}.catalog-card-image{height:275px;background:#f1f1e9;display:flex;align-items:center;justify-content:center;padding:24px}.catalog-card-image img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.catalog-card:hover img{transform:scale(1.045)}.catalog-card-category{font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#82915a;margin:23px 24px 8px}.catalog-card strong{font-size:24px;font-weight:500;margin:0 24px}.catalog-card-more{margin:18px 24px 0;color:#69804c;font-size:14px}.catalog-empty{padding:40px;text-align:center}.catalog-detail[hidden],.catalog-card[hidden],.catalog-empty[hidden]{display:none!important}.catalog-detail{position:absolute;inset:0;min-height:100%;background:#faf9f5;z-index:8;overflow:auto}.catalog-detail-panel{max-width:1300px;margin:auto;padding:125px 6% 100px}.catalog-back{border:0;background:transparent;color:#536c3e;cursor:pointer;margin-bottom:35px;font-size:15px}.catalog-detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.catalog-detail-image{background:#f0f0e9;min-height:450px;display:flex;align-items:center;justify-content:center;padding:40px}.catalog-detail-image img{width:100%;max-height:450px;object-fit:contain}.catalog-detail-category{color:#809459;letter-spacing:.18em;text-transform:uppercase;font-size:13px}.catalog-detail-title{font-size:clamp(36px,5vw,66px);font-weight:500;color:#344a29;margin:16px 0}.catalog-detail-content p{color:#697267;line-height:1.7}.catalog-spec{display:flex;justify-content:space-between;gap:15px;padding:18px 0;border-bottom:1px solid #dfe2d8}.catalog-spec span{color:#788173}.catalog-contact{display:inline-block;background:#435a32;color:white!important;padding:15px 28px;margin-top:30px;text-decoration:none}.catalog-contact:hover{background:#304324}.pageproduct .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:850px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-detail-layout{grid-template-columns:1fr}.catalog-detail-image{min-height:280px}.catalog-shell,.catalog-detail-panel{padding-top:105px!important}}@media(max-width:540px){.catalog-grid{grid-template-columns:1fr}.catalog-card-image{height:245px}.catalog-toolbar{margin-top:30px}.catalog-filter{padding:8px 12px}.catalog-shell,.catalog-detail-panel{padding-left:20px!important;padding-right:20px!important}}

.catalog-detail-weight{color:#344a29;text-align:right}.catalog-detail-description{max-width:560px}.catalog-card[data-weight]::after{content:attr(data-weight);margin:8px 24px 0;color:#788173;font-size:13px}

/* Four products per row on desktop; two on tablets; one on phones. */
@media (min-width: 1101px) {
  .pageproduct .catalog-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
  .pageproduct .catalog-card-image { height: 235px; padding: 18px; }
  .pageproduct .catalog-card strong { font-size: 21px; }
}
@media (min-width: 541px) and (max-width: 1100px) {
  .pageproduct .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  .pageproduct .catalog-grid { grid-template-columns: 1fr; }
}

/* Colore del link Privacy e Cookie soltanto nella sezione Prodotti */
body.luliva-products-active .footer .privacy-link a[href="privacy.html"]{color:#435a32!important;}

/* Zoom interattivo della fotografia nella scheda prodotto */
@media (hover:hover) and (pointer:fine){
.pageproduct .catalog-detail-image{overflow:hidden;cursor:zoom-in;position:relative}
.pageproduct .catalog-detail-image img{transition:transform .28s ease;transform-origin:var(--zoom-x,50%) var(--zoom-y,50%);will-change:transform;pointer-events:none}
.pageproduct .catalog-detail-image:hover img{transform:scale(1.75)}
}
@media (prefers-reduced-motion:reduce){.pageproduct .catalog-detail-image img{transition:none!important}}

/* Menu nero solo nella sezione Prodotti; hover verde originale. */
body.luliva-products-active .header .main-menu .nav-bar ul li a,
body.luliva-products-active .header .top-links.language,
body.luliva-products-active .header .top-links.language a,
body.luliva-products-active .header .menu-mobile { color:#111!important; }
body.luliva-products-active .header .main-menu .nav-bar ul li a:hover,
body.luliva-products-active .header .main-menu .nav-bar ul li a:focus-visible,
body.luliva-products-active .header .top-links.language a:hover,
body.luliva-products-active .header .top-links.language a:focus-visible { color:var(--luliva-green,#a4c52b)!important; }

/* Mobile: keep Luliva logo, language switcher and hamburger visible while
   scrolling the Products section. Does not affect other site sections. */
@media (max-width: 991px) {
  body.luliva-products-active header.header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 90px !important;
    z-index: 9990 !important;
    background: rgba(250,249,245,.97) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
  }
  body.luliva-products-active .header .logo,
  body.luliva-products-active .header .top-links.language {
    position: fixed !important;
    z-index: 9992 !important;
  }
  body.luliva-products-active .header .menu-mobile {
    position: fixed !important;
    z-index: 9993 !important;
    color: #111 !important;
  }
  body.luliva-products-active .header .menu-mobile.menu-open {
    color: #fff !important;
  }
  body.luliva-products-active .header .main-menu {
    z-index: 9991 !important;
  }
  body.luliva-products-active .header .main-menu.main-menu-open .nav-bar ul li a {
    color: #fff !important;
  }
  body.luliva-products-active .header .main-menu.main-menu-open .nav-bar ul li a:hover,
  body.luliva-products-active .header .main-menu.main-menu-open .nav-bar ul li a:focus-visible {
    color: var(--luliva-green,#a4c52b) !important;
  }
  body.luliva-products-active .pageproduct .catalog-shell,
  body.luliva-products-active .pageproduct .catalog-detail-panel {
    padding-top: 125px !important;
  }
}

/* Desktop: persistent header while scrolling within Products only. */
@media (min-width: 992px) {
  body.luliva-products-active header.header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9990 !important;
    background: rgba(250,249,245,.97) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
  }
  body.luliva-products-active .header .logo,
  body.luliva-products-active .header .main-menu,
  body.luliva-products-active .header .top-links.language {
    z-index: 9991 !important;
  }
  body.luliva-products-active .pageproduct .catalog-shell,
  body.luliva-products-active .pageproduct .catalog-detail-panel {
    padding-top: 145px !important;
  }
}

/* Desktop correction: one opaque, compact header bar, no transparent overlay.
   Restricted to the active Products section. */
@media (min-width: 992px) {
  body.luliva-products-active header.header {
    height: 116px !important;
    min-height: 116px !important;
    background: #faf9f5 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.07) !important;
    overflow: visible !important;
  }
  body.luliva-products-active header.header .main-header {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 116px !important;
    width: 100% !important;
    padding: 25px 42px 10px !important;
    box-sizing: border-box !important;
    background: #faf9f5 !important;
  }
  body.luliva-products-active .header .logo {
    position: relative !important;
    top: auto !important; left: auto !important;
    margin: 0 !important;
    width: 152px !important;
    height: auto !important;
    flex: 0 0 152px !important;
  }
  body.luliva-products-active .header .main-menu {
    position: relative !important;
    top: auto !important; right: auto !important;
    margin: 0 0 0 auto !important;
    width: auto !important;
    flex: 0 1 auto !important;
  }
  body.luliva-products-active .header .top-links.language {
    position: absolute !important;
    top: 12px !important;
    right: 42px !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.luliva-products-active .header .main-menu .nav-bar ul li { margin-right: clamp(12px,2vw,35px) !important; }
  body.luliva-products-active .header .main-menu .nav-bar ul li:last-child { margin-right: 0 !important; }
  body.luliva-products-active .pageproduct .catalog-shell,
  body.luliva-products-active .pageproduct .catalog-detail-panel { padding-top: 145px !important; }
}
