/* ==========================================================
   Nuvola – tema di pietrangioli.it (figlio di Classic)
   ========================================================== */
:root{
  --nv-bg:#F4F6FB; --nv-surface:#FFFFFF; --nv-ink:#14213D; --nv-muted:#55607A; --nv-line:#DCE2EE;
  --nv-cobalt:#2548C9; --nv-cobalt-dark:#1D3BA8; --nv-cobalt-soft:#E6ECFB; --nv-kraft-soft:#F7F0E4; --nv-bio:#2F7F52;
  --nv-font:"Bricolage Grotesque", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --nv-radius:14px;
}

/* ---------- Base ---------- */
html{-webkit-text-size-adjust:100%}
body{font-family:var(--nv-font);color:var(--nv-ink);background:var(--nv-bg);overflow-x:clip;font-size:1rem}
#wrapper{background:var(--nv-bg)}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:var(--nv-font);color:var(--nv-ink);text-transform:none;letter-spacing:-.01em}
a{color:var(--nv-cobalt)}
a:hover,a:focus{color:var(--nv-cobalt-dark)}
:focus-visible{outline:3px solid var(--nv-cobalt);outline-offset:2px}
.btn-primary{background:var(--nv-cobalt);border-color:var(--nv-cobalt);border-radius:24px;text-transform:none;font-weight:700}
.btn-primary:hover,.btn-primary:focus{background:var(--nv-cobalt-dark);border-color:var(--nv-cobalt-dark)}
.btn-secondary,.btn-tertiary{border-radius:24px;text-transform:none}
.container{width:100%!important;max-width:1600px;padding-left:24px;padding-right:24px}
.nv-wrap{max-width:1600px;margin:0 auto;padding:0 24px}
.nv-wrap *,.nv-drawer *,.nv-minicart *{box-sizing:border-box}

/* Pulsanti del tema */
.nv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:24px;font-weight:700;text-decoration:none;border:2px solid var(--nv-cobalt);color:var(--nv-cobalt);background:transparent;cursor:pointer;line-height:1.2}
.nv-btn:hover{background:var(--nv-cobalt-soft);color:var(--nv-cobalt);text-decoration:none}
.nv-btn--primary,.nv-btn-primary{background:var(--nv-cobalt);color:#fff}
.nv-btn--primary:hover,.nv-btn-primary:hover{background:var(--nv-cobalt-dark);color:#fff}
.nv-btn--block{display:flex;width:100%}

/* ---------- Striscia in alto ---------- */
#header{background:var(--nv-surface);box-shadow:none}
.nv-topbar{background:var(--nv-cobalt-soft);color:var(--nv-ink);font-size:.875rem}
.nv-topbar__in{display:flex;gap:18px;align-items:center;justify-content:space-between;min-height:38px;padding-top:4px;padding-bottom:4px;flex-wrap:wrap}
.nv-topbar__wa{display:inline-flex;align-items:center;gap:6px;color:var(--nv-ink);text-decoration:none;font-weight:600}
.nv-topbar__wa svg{color:#1FA855}
.nv-ship{display:inline-flex;align-items:center;gap:10px}
.nv-ship__bar{display:inline-block;width:150px;height:6px;border-radius:3px;background:#fff;overflow:hidden}
.nv-ship__bar i{display:block;height:100%;width:0;background:var(--nv-bio);transition:width .4s ease}
.nv-ship.is-free .nv-ship__text{color:var(--nv-bio);font-weight:700}

/* ---------- Header ---------- */
.nv-header{background:var(--nv-surface);border-bottom:1px solid var(--nv-line)}
.nv-header__in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center;padding-top:14px;padding-bottom:14px}
.nv-burger{display:none;border:0;background:none;padding:6px;color:var(--nv-ink);cursor:pointer}
.nv-logo{display:block;line-height:0}
.nv-logo{padding:10px 16px 10px 0}
.nv-logo img{height:64px;width:auto;max-width:none}
@media (max-width:991px){.nv-logo{padding:6px 0}.nv-logo img{height:32px}}
.nv-search{min-width:0;max-width:100%}
.nv-search *{box-sizing:border-box}
.nv-search input[type="text"],.nv-search input[type="search"]{width:100%;height:48px;border-radius:24px;border:2px solid var(--nv-line);background:var(--nv-bg);color:var(--nv-ink);padding:0 20px;font-size:1rem;font-family:inherit}
.nv-search input[type="text"]:focus,.nv-search input[type="search"]:focus{border-color:var(--nv-cobalt);background:#fff;outline:none}
.nv-search button{border-radius:20px}
.nv-tools{display:flex;align-items:center;gap:4px}
.nv-tool{position:relative;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;color:var(--nv-ink);text-decoration:none;font-size:.9rem;font-weight:600;white-space:nowrap}
.nv-tool:hover,.nv-tool:focus{background:var(--nv-cobalt-soft);color:var(--nv-ink);text-decoration:none}
.nv-tool svg{flex:none}
.nv-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:10px;background:var(--nv-cobalt);color:#fff;font-size:.75rem;padding:0 6px;font-variant-numeric:tabular-nums}
.nv-minicart.inactive .nv-badge{background:var(--nv-line);color:var(--nv-muted)}
.nv-nav{border-top:1px solid var(--nv-line);background:var(--nv-surface)}
.nv-nav .nv-wrap{position:relative}

/* ---------- Megamenu Pos: computer ---------- */
#_desktop_megamenu .menu-content{display:flex;flex-wrap:wrap;align-items:stretch;gap:2px;list-style:none;margin:0;padding:0}
#_desktop_megamenu.megamenu_center .menu-content{justify-content:center}
#_desktop_megamenu,#_desktop_megamenu .pos-menu-horizontal,#_desktop_megamenu .menu-content,#_desktop_megamenu .menu-item{position:static!important}
#_desktop_megamenu .menu-item{list-style:none}
#_desktop_megamenu .menu-item > a{display:flex;align-items:center;gap:8px;padding:14px 14px 11px;border-bottom:3px solid transparent;color:var(--nv-ink);font-weight:700;font-size:.95rem;text-decoration:none;white-space:nowrap}
#_desktop_megamenu .menu-item > a:hover,
#_desktop_megamenu .menu-item:focus-within > a,
#_desktop_megamenu .menu-item.active > a{border-bottom-color:var(--nv-cobalt);color:var(--nv-cobalt)}
#_desktop_megamenu .menu-item .img-icon{width:20px;height:20px;object-fit:contain}
#_desktop_megamenu .menu-subtitle{font-size:.7rem;font-weight:600;color:#fff;background:var(--nv-cobalt);border-radius:4px;padding:1px 5px}
#_desktop_megamenu .icon-rt-arrow-down{display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:-4px 0 0 2px}
#_desktop_megamenu .icon-rt-arrow-down::before{content:none}
#_desktop_megamenu .icon-drop-mobile{display:none!important}

#_desktop_megamenu .pos-sub-menu{position:absolute!important;top:100%!important;left:50%!important;right:auto!important;z-index:900;width:min(1552px,calc(100vw - 48px))!important;max-width:none!important;background:var(--nv-surface);border:1px solid var(--nv-line);border-top:0;border-radius:0 0 var(--nv-radius) var(--nv-radius);box-shadow:0 24px 48px -20px rgba(20,33,61,.28);padding:26px 30px 10px;text-align:left;opacity:0;visibility:hidden;transform:translate(-50%,6px);transition:opacity .15s ease,transform .15s ease,visibility .15s;display:block!important}
#_desktop_megamenu .menu-item:hover > .pos-sub-menu,
#_desktop_megamenu .menu-item:focus-within > .pos-sub-menu{opacity:1;visibility:visible;transform:translate(-50%,0)}
#_desktop_megamenu .pos-sub-inner > .container{max-width:none;padding:0}
#_desktop_megamenu .pos-menu-row{display:flex;flex-wrap:wrap;margin:0 -14px}
#_desktop_megamenu .pos-menu-col{padding:0 14px 18px}
#_desktop_megamenu .column_title{display:block;margin:0 0 10px;font-family:var(--nv-font);font-size:1rem;font-weight:700;color:var(--nv-ink);text-transform:none;text-decoration:none}
#_desktop_megamenu a.column_title:hover{color:var(--nv-cobalt)}
#_desktop_megamenu .pos-sub-menu ul{list-style:none;margin:0;padding:0}
#_desktop_megamenu .submenu-item{margin:0 0 10px}
#_desktop_megamenu .submenu-item > a,
#_desktop_megamenu .submenu-item > span{display:block;padding:2px 0;font-weight:700;color:var(--nv-ink);text-decoration:none}
#_desktop_megamenu .submenu-item > a:hover{color:var(--nv-cobalt)}
#_desktop_megamenu .category-sub-menu{margin:4px 0 0!important;padding:0 0 0 12px!important;border-left:2px solid var(--nv-cobalt-soft)}
#_desktop_megamenu .category-sub-menu a,
#_desktop_megamenu .pos-sub-menu li li a{display:block;padding:3px 0;font-size:.9rem;font-weight:400;color:var(--nv-muted);text-decoration:none}
#_desktop_megamenu .category-sub-menu a:hover,
#_desktop_megamenu .pos-sub-menu li li a:hover{color:var(--nv-cobalt)}
#_desktop_megamenu .pos-sub-menu img{max-width:100%;height:auto;border-radius:10px}
#_desktop_megamenu .html-block{font-size:.9rem;color:var(--nv-muted)}

/* ---------- Megamenu Pos: menu da telefono (dentro il pannello) ---------- */
.nv-drawer__menu ul{list-style:none;margin:0;padding:0}
.nv-drawer__menu a{display:block;padding:10px 0;border-bottom:1px solid var(--nv-line);color:var(--nv-ink);font-weight:600;text-decoration:none}
.nv-drawer__menu .icon-drop-mobile,
.nv-drawer__menu .icon-rt-arrow-down,
.nv-drawer__menu .img-icon,
.nv-drawer__menu .menu-subtitle{display:none!important}
.nv-drawer__menu .pos-sub-menu,
.nv-drawer__menu .menu-dropdown{position:static;display:block!important;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 0 14px;width:auto!important;height:auto!important}
.nv-drawer__menu .pos-menu-row,
.nv-drawer__menu .pos-menu-col{display:block;margin:0;padding:0;max-width:none;flex:none;width:auto}
.nv-drawer__menu .column_title{display:block;margin:0;padding:10px 0;border-bottom:1px solid var(--nv-line);font-size:.95rem;font-weight:700;color:var(--nv-ink)}
.nv-drawer__menu .ul-column,
.nv-drawer__menu .column_dropdown{display:block!important;padding-left:14px}
.nv-drawer__menu .submenu-item > a{font-weight:500;color:var(--nv-muted)}
.nv-drawer__menu .category-sub-menu,
.nv-drawer__menu .hidden-mobile{display:none!important}

/* ---------- Carrello in alto ---------- */
.nv-minicart{position:relative}
.nv-minicart__toggle{background:var(--nv-cobalt-soft)}
.nv-minicart__total{font-variant-numeric:tabular-nums}
.nv-minicart__drop{position:absolute;right:0;top:calc(100% + 8px);z-index:1000;width:420px;max-width:calc(100vw - 32px);background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);box-shadow:0 18px 40px rgba(20,33,61,.18);padding:18px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s,transform .15s,visibility .15s}
.nv-minicart:hover .nv-minicart__drop,.nv-minicart:focus-within .nv-minicart__drop,.nv-minicart.is-open .nv-minicart__drop{opacity:1;visibility:visible;transform:none}
.nv-minicart__drop::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.nv-minicart__title{display:flex;justify-content:space-between;align-items:baseline;font-weight:700;margin:0 0 6px}
.nv-minicart__title span{font-weight:400;font-size:.85rem;color:var(--nv-muted)}
.nv-minicart__list{list-style:none;margin:0 -4px 0 0;padding:0 4px 0 0;max-height:min(360px,50vh);overflow-y:auto}
.nv-minicart__item{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--nv-line)}
.nv-minicart__item img,.nv-minicart__noimg{grid-row:span 2;width:56px;height:56px;border-radius:8px;object-fit:contain;background:var(--nv-bg)}
.nv-minicart__name{grid-column:2/4;font-size:.875rem;line-height:1.3;font-weight:600;color:var(--nv-ink);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-decoration:none}
.nv-minicart__name:hover{color:var(--nv-cobalt)}
.nv-minicart__row{grid-column:2/4;display:flex;align-items:center;justify-content:space-between;gap:8px}
.nv-minicart__price{font-size:.8rem;color:var(--nv-muted);line-height:1.2}
.nv-minicart__price strong{display:block;font-size:.95rem;color:var(--nv-ink);font-variant-numeric:tabular-nums}
.nv-minicart__actions{display:flex;align-items:center;gap:6px}
.nv-mqty{display:flex;align-items:center;border:1px solid var(--nv-line);border-radius:18px;height:34px;background:#fff}
.nv-mqty button{width:30px;height:32px;border:0;background:none;border-radius:16px;font-size:18px;line-height:1;color:var(--nv-ink);cursor:pointer;padding:0}
.nv-mqty button:hover{background:var(--nv-cobalt-soft)}
.nv-mqty input{width:38px;height:32px;border:0;text-align:center;font-weight:600;font-size:.9rem;background:transparent;padding:0;-moz-appearance:textfield}
.nv-mqty input::-webkit-outer-spin-button,.nv-mqty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.nv-mremove{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:none;color:var(--nv-muted);cursor:pointer}
.nv-mremove:hover{background:#FDECEC;color:#C8302A}
.nv-minicart__item.is-loading{opacity:.45;pointer-events:none}
.nv-ship--cart{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:14px 0;font-size:.85rem}
.nv-ship--cart .nv-ship__bar{width:100%;background:var(--nv-cobalt-soft)}
.nv-minicart__sum{display:flex;justify-content:space-between;margin:0 0 12px;font-variant-numeric:tabular-nums}

/* ---------- Menu da telefono ---------- */
.nv-drawer[hidden]{display:none}
.nv-drawer{position:fixed;inset:0;z-index:2000}
.nv-drawer__overlay{position:absolute;inset:0;background:rgba(20,33,61,.45)}
.nv-drawer__panel{position:absolute;left:0;top:0;bottom:0;width:min(88vw,380px);background:var(--nv-surface);overflow-y:auto;padding:16px 20px calc(32px + 20px)}
.nv-drawer__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.nv-drawer__close{border:0;background:none;padding:6px;cursor:pointer;color:var(--nv-ink)}
.nv-drawer__title{margin:18px 0 6px;font-size:.8rem;font-weight:700;color:var(--nv-muted);letter-spacing:.02em}
.nv-drawer__list{list-style:none;margin:0;padding:0}
.nv-drawer__list a{display:block;padding:11px 0;border-bottom:1px solid var(--nv-line);color:var(--nv-ink);font-weight:600;text-decoration:none}
.nv-drawer__list--account{margin-top:18px}
body.nv-lock{overflow:hidden}

/* ---------- Footer ---------- */
#footer{background:var(--nv-surface);border-top:1px solid var(--nv-line);padding:0;margin-top:48px}
@media (max-width:991px){#footer{padding-bottom:20px}}
.nv-footer__before{background:var(--nv-cobalt-soft);padding:24px 0}
.nv-footer__before .block_newsletter,.nv-footer__before .block-social{background:transparent}
.nv-footer__main{display:grid;grid-template-columns:minmax(220px,1fr) 3fr;gap:40px;padding-top:40px;padding-bottom:32px}
.nv-footer__logo img{max-height:44px;width:auto;height:auto}
.nv-footer__brand p{color:var(--nv-muted);margin:14px 0}
.nv-footer__address{font-style:normal;color:var(--nv-muted);line-height:1.7}
.nv-footer__address a{color:var(--nv-ink)}
.nv-footer__social{display:flex;gap:14px;margin-top:12px}
.nv-footer__social a{font-weight:600}
.nv-footer__links .h3,.nv-footer__links .h4,.nv-footer__links p.h3{font-size:1rem;font-weight:700;text-transform:none;color:var(--nv-ink)}
.nv-footer__links a{color:var(--nv-muted)}
.nv-footer__links a:hover{color:var(--nv-cobalt)}
.nv-footer__legal{border-top:1px solid var(--nv-line);font-size:.8125rem;color:var(--nv-muted)}
.nv-footer__legal-in{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
#footer .footer-container{box-shadow:none;margin:0;padding:0;background:transparent}

/* ---------- Home: sezioni a tutta larghezza ---------- */
#index #wrapper{padding-top:0}
#index #wrapper > .container{max-width:none;padding-left:0;padding-right:0}
#index #content-wrapper{padding:0}
.nv-home{color:var(--nv-ink);line-height:1.5}

/* ---------- Home ---------- */
.nv-home *,.nv-home *::before,.nv-home *::after{box-sizing:border-box}
.nv-home a{color:inherit}
.nv-home a:focus-visible,.nv-home button:focus-visible,.nv-home input:focus-visible{outline:3px solid var(--nv-cobalt);outline-offset:2px}
.nv-home img{max-width:100%;height:auto}
.nv-wrap{max-width:1600px;margin:0 auto;padding:0 24px}

/* Titoli */
.nv-home .nv-h1{font-family:var(--nv-font);font-size:clamp(38px,5.2vw,68px);line-height:1;letter-spacing:-.03em;margin:0 0 20px;font-weight:800;max-width:13ch;color:var(--nv-ink);text-transform:none}
.nv-home .nv-h2,.nv-seen .nv-h2{font-family:var(--nv-font);font-size:clamp(26px,3.2vw,40px);line-height:1.08;letter-spacing:-.02em;margin:0;font-weight:750;color:var(--nv-ink);text-transform:none}
.nv-lead{font-size:19px;color:var(--nv-muted);max-width:46ch;margin:0 0 26px}

/* Pulsanti e chip */
.nv-cta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:26px}
.nv-home .nv-btn{display:inline-flex;align-items:center;gap:8px;min-height:50px;padding:0 24px;border-radius:25px;font-weight:700;text-decoration:none;border:2px solid var(--nv-cobalt);color:var(--nv-cobalt);background:transparent;cursor:pointer;line-height:1.2}
.nv-home .nv-btn:hover{background:var(--nv-cobalt-soft)}
.nv-home .nv-btn-primary{background:var(--nv-cobalt);color:#fff}
.nv-home .nv-btn-primary:hover{background:#1D3BA8;color:#fff}
.nv-btn svg{width:20px;height:20px;flex:none}
.nv-for{font-size:15px;color:var(--nv-muted);margin:0 0 10px}
.nv-chips{display:flex;flex-wrap:wrap;gap:8px}
.nv-home .nv-chip{border:1px solid var(--nv-line);background:var(--nv-surface);border-radius:18px;padding:6px 14px;font-size:14px;text-decoration:none}
.nv-home .nv-chip:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}

/* Hero */
.nv-hero{padding:48px 0 40px}
.nv-hero-in{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.nv-table{position:relative;aspect-ratio:1/1;border-radius:22px;box-shadow:0 30px 60px -30px rgba(20,33,61,.45)}
.nv-table svg{display:block;width:100%;height:100%;border-radius:22px}
/* Le posizioni arrivano dal modulo in due serie: da computer e da telefono,
   perché l'illustrazione si comporta diversamente nei due casi. */
.nv-home .nv-spot{position:absolute;left:var(--nv-x);top:var(--nv-y);transform:translate(-50%,-50%);display:flex;align-items:center;gap:8px;text-decoration:none}
@media (max-width:991px){.nv-home .nv-spot{left:var(--nv-mx);top:var(--nv-my)}}
.nv-spot-left{flex-direction:row-reverse}
.nv-dot{width:30px;height:30px;border-radius:50%;background:var(--nv-cobalt);color:#fff;display:grid;place-items:center;font-weight:700;box-shadow:0 0 0 5px rgba(255,255,255,.75);transition:transform .2s}
.nv-tag{background:#fff;color:var(--nv-ink);border-radius:8px;padding:6px 10px;font-size:14px;line-height:1.25;white-space:nowrap;box-shadow:0 6px 18px rgba(20,33,61,.22);opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;pointer-events:none}
.nv-tag small{display:block;color:var(--nv-muted);font-size:12px}
.nv-spot:hover .nv-tag,.nv-spot:focus-visible .nv-tag{opacity:1;transform:none}
.nv-spot:hover .nv-dot,.nv-spot:focus-visible .nv-dot{transform:scale(1.1)}
.nv-pulse .nv-dot{animation:nvPulse 1.6s ease 3}
@keyframes nvPulse{50%{box-shadow:0 0 0 12px rgba(255,255,255,.35)}}
.nv-note{font-size:14px;color:var(--nv-muted);margin:12px 4px 0}

/* Garanzie */
.nv-facts{border-top:1px solid var(--nv-line);border-bottom:1px solid var(--nv-line);background:var(--nv-surface)}
.nv-facts ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}
.nv-facts li{padding:20px 20px 20px 0;display:flex;gap:12px;align-items:flex-start}
.nv-facts li+li{padding-left:20px;border-left:1px solid var(--nv-line)}
.nv-facts svg{width:28px;height:28px;flex:none;color:var(--nv-cobalt)}
.nv-facts strong{display:block}
.nv-facts span{color:var(--nv-muted);font-size:14px}

/* Blocchi */
.nv-block{padding:64px 0}
.nv-block-tight{padding-top:0}
.nv-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.nv-head p{margin:6px 0 0;color:var(--nv-muted);max-width:56ch}
.nv-home .nv-more{font-weight:600;color:var(--nv-cobalt)}

/* Sezioni per locale */
.nv-uses{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.nv-home .nv-use{display:flex;flex-direction:column;gap:10px;padding:26px 24px;border:1px solid var(--nv-line);border-radius:var(--nv-radius);background:var(--nv-surface);box-shadow:0 1px 2px rgba(20,33,61,.04);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.nv-home .nv-use:hover{border-color:var(--nv-cobalt);box-shadow:0 18px 40px -24px rgba(20,33,61,.35);transform:translateY(-3px)}
.nv-use-title{font-size:21px;font-weight:700;display:flex;align-items:center;gap:12px;line-height:1.2}
.nv-use-title svg{width:26px;height:26px;flex:none;color:var(--nv-cobalt);padding:8px;box-sizing:content-box;border-radius:12px;background:var(--nv-cobalt-soft)}
.nv-use-text{color:var(--nv-muted);font-size:15px}
.nv-use-go{font-weight:600;color:var(--nv-cobalt);margin-top:auto}
.nv-home .nv-use:hover .nv-use-go{text-decoration:underline}

/* Prodotti */
.nv-products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.nv-card{min-width:0;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:14px;display:grid;grid-template-rows:auto 1fr auto;gap:12px}
.nv-home .nv-thumb,.nv-seen .nv-thumb{position:relative;display:block;border-radius:10px;overflow:hidden;background:#fff;aspect-ratio:1/1}
.nv-thumb img{width:100%;height:100%;object-fit:contain}
.nv-stock{position:absolute;left:10px;top:10px;z-index:1;background:#fff;font-size:12px;font-weight:600;border-radius:6px;padding:3px 8px;display:flex;align-items:center;gap:6px;box-shadow:0 2px 6px rgba(20,33,61,.12)}
.nv-stock::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--nv-bio)}
.nv-stock-low::before{background:#D98A1F}
.nv-home .nv-card-title,.nv-seen .nv-card-title{font-size:17px;line-height:1.3;margin:0 0 4px;font-weight:600;text-transform:none}
.nv-home .nv-card-title a,.nv-seen .nv-card-title a{text-decoration:none}
.nv-home .nv-card-title a:hover,.nv-seen .nv-card-title a:hover{color:var(--nv-cobalt)}
.nv-meta{font-size:14px;color:var(--nv-muted);margin:0}
.nv-price-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.nv-price{font-size:24px;font-weight:750;font-variant-numeric:tabular-nums}
.nv-unit{font-size:14px;color:var(--nv-bio);font-weight:600}
.nv-buy{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
/* Tetto della giacenza: "+" spento e nota con i pezzi rimasti */
.nv-qty-btn:disabled{opacity:.4;cursor:not-allowed}
.nv-qty-note{flex:1 1 100%;order:-1;margin:0 0 6px;font-size:.8rem;line-height:1.3;color:var(--nv-muted)}
.nv-add-error{flex:1 1 100%;margin:8px 0 0;font-size:.82rem;line-height:1.35;color:#C8302A}
.nv-qty{display:flex;align-items:center;border:1px solid var(--nv-line);border-radius:22px;height:44px;background:#fff}
.nv-home .nv-qty-btn,.nv-seen .nv-qty-btn{width:38px;height:42px;border:0;background:none;cursor:pointer;font-size:20px;border-radius:22px;color:var(--nv-ink);padding:0}
.nv-home .nv-qty-input,.nv-seen .nv-qty-input{width:40px;height:40px;border:0;text-align:center;font-weight:600;font-size:16px;background:transparent;-moz-appearance:textfield;padding:0;box-shadow:none}
.nv-home .nv-qty-input::-webkit-outer-spin-button,.nv-seen .nv-qty-input::-webkit-outer-spin-button,.nv-home .nv-qty-input::-webkit-inner-spin-button,.nv-seen .nv-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.nv-home .nv-add,.nv-seen .nv-add{flex:1 1 88px;min-width:0;min-height:44px;border-radius:22px;border:0;background:var(--nv-cobalt);color:#fff;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none;padding:0 14px}
.nv-home .nv-add:hover,.nv-seen .nv-add:hover{background:#1D3BA8;color:#fff}
.nv-home .nv-add-link,.nv-seen .nv-add-link{margin-top:10px}
.nv-home .nv-add:disabled,.nv-seen .nv-add:disabled{opacity:.6;cursor:wait}

/* Aziende */
.nv-pro{background:var(--nv-cobalt-soft)}
.nv-pro-in{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.nv-pro p{max-width:48ch;color:var(--nv-muted);margin:14px 0 24px}
.nv-tiers{background:var(--nv-surface);border-radius:var(--nv-radius);padding:22px;box-shadow:0 18px 40px -24px rgba(37,72,201,.35)}
.nv-home .nv-tiers h3{margin:0 0 4px;font-size:19px;font-weight:700;text-transform:none}
.nv-table-scroll{overflow-x:auto}
.nv-tiers table{width:100%;border-collapse:collapse;margin:14px 0 16px;font-variant-numeric:tabular-nums}
.nv-tiers th,.nv-tiers td{text-align:left;padding:10px 8px 10px 0;border-bottom:1px solid var(--nv-line);white-space:nowrap}
.nv-tiers th{font-size:14px;color:var(--nv-muted);font-weight:500}
.nv-tiers th:last-child,.nv-tiers td:last-child{text-align:right;padding-right:0}
.nv-best td{font-weight:700;color:var(--nv-bio)}
.nv-home .nv-reorder{display:flex;gap:12px;align-items:center;padding:14px;border-radius:10px;background:var(--nv-bg);text-decoration:none;font-size:14px}
.nv-reorder svg{width:28px;height:28px;flex:none;color:var(--nv-cobalt)}
.nv-home .nv-reorder:hover strong{color:var(--nv-cobalt)}

/* Bio */
.nv-bio{background:var(--nv-kraft-soft)}
.nv-bio-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.nv-bio .nv-lead{margin-top:14px}
.nv-bio-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nv-home .nv-bio-list a{display:block;background:var(--nv-surface);border-radius:6px;padding:16px 18px;text-decoration:none;border-left:4px solid var(--nv-bio)}
.nv-bio-list strong{display:block}
.nv-bio-list span{font-size:14px;color:var(--nv-muted)}

/* WhatsApp */
.nv-wa-in{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;border:2px solid var(--nv-line);background:var(--nv-surface);border-radius:22px;padding:28px}
.nv-wa-icon{width:56px;height:56px;color:#1FA855}
.nv-wa .nv-h2{font-size:clamp(22px,2.6vw,32px)}
.nv-wa p{margin:6px 0 0;color:var(--nv-muted);max-width:60ch}

/* Responsive */
@media (max-width:991px){
  .nv-hero-in,.nv-pro-in,.nv-bio-in{grid-template-columns:1fr}
  .nv-products{grid-template-columns:1fr}
  .nv-uses{grid-template-columns:1fr 1fr}
  .nv-home .nv-use{padding:22px 20px}
  .nv-facts ul{grid-template-columns:1fr 1fr}
  .nv-facts li:nth-child(odd){border-left:0;padding-left:0}
  .nv-facts li:nth-child(n+3){border-top:1px solid var(--nv-line)}
}
@media (max-width:640px){
  .nv-hero{padding:40px 0 28px}
  .nv-uses,.nv-bio-list{grid-template-columns:1fr}
  .nv-facts ul{grid-template-columns:1fr}
  .nv-facts li,.nv-facts li+li{padding:14px 0;border-left:0}
  .nv-facts li+li{border-top:1px solid var(--nv-line)}
  .nv-tag{display:none}
  .nv-wa-in{grid-template-columns:1fr}
  
  .nv-block{padding:44px 0}
}
@media (prefers-reduced-motion:reduce){
  .nv-home *{animation:none!important;transition:none!important}
}

/* ==========================================================
   Scheda prodotto
   ========================================================== */
.nv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
#product #wrapper{padding-top:12px}
.nv-product{color:var(--nv-ink)}
.nv-product__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:40px;align-items:start;margin-bottom:48px}
.nv-product__actions{min-width:0}
.nv-product__form{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}

/* Galleria */
.nv-product__gallery{position:relative;min-width:0}
.nv-product__gallery .product-flags{position:absolute;top:12px;left:12px;z-index:2;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.nv-product__gallery .product-flag{margin:0;padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:700;text-transform:none;min-height:0;box-shadow:none;background:var(--nv-cobalt)}
.nv-product__gallery .product-flag.discount,.nv-product__gallery .product-flag.discount-percentage,.nv-product__gallery .product-flag.discount-amount{background:#C8302A}
.nv-product__gallery .product-flag.new{background:var(--nv-bio)}
.nv-product__gallery .product-cover{position:relative;margin-bottom:12px;background:#fff;border:1px solid var(--nv-line);border-radius:var(--nv-radius);overflow:hidden}
.nv-product__gallery .product-cover img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#fff;box-shadow:none}
.nv-product__gallery .product-cover .layer{background:rgba(255,255,255,.5)}
.nv-product__gallery .product-cover .layer .zoom-in{color:var(--nv-ink)}
.nv-product__gallery .js-qv-mask{margin:0}
.nv-product__gallery .product-images{display:flex;gap:10px;margin:0;padding:0 0 4px;overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x;scrollbar-width:thin}
.nv-product__gallery .product-images > li.thumb-container{flex:0 0 auto}
.nv-product__gallery .product-images .thumb{width:84px;height:84px;object-fit:contain;background:#fff;border:2px solid var(--nv-line);border-radius:10px;margin:0;cursor:pointer}
.nv-product__gallery .product-images .thumb.selected,.nv-product__gallery .product-images .thumb:hover{border-color:var(--nv-cobalt)}
.nv-product__gallery .scroll-box-arrows i{color:var(--nv-ink)}

/* Informazioni */
.nv-product__title{font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.15;font-weight:750;letter-spacing:-.02em;margin:0 0 10px;text-transform:none}
.nv-product__meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0 0 18px;font-size:.875rem;color:var(--nv-muted)}
.nv-product__meta strong{color:var(--nv-ink);font-weight:600}
.nv-product__meta a{font-weight:600}
.nv-keyfeat{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;list-style:none;margin:0 0 18px;padding:0}
.nv-keyfeat li{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:10px;padding:8px 12px;line-height:1.25}
.nv-keyfeat span{display:block;font-size:.75rem;color:var(--nv-muted)}
.nv-keyfeat strong{font-size:.95rem;font-weight:600}
.nv-product__short{color:var(--nv-muted);font-size:.95rem}
.nv-product__short ul{padding-left:18px}
.nv-product__short img{max-width:64px;height:auto;vertical-align:middle}
.nv-more{display:inline-block;margin-top:6px;font-weight:600}
.nv-section-title{font-weight:700;margin:16px 0 8px}

/* Varianti come pulsanti */
.nv-product .product-variants{margin:0 0 18px}
.nv-product .product-variants > .product-variants-item{margin:0 0 12px}
.nv-product .product-variants .control-label{display:block;font-weight:700;font-size:.9rem;margin-bottom:6px}
.nv-product .product-variants select.form-control{height:44px;border-radius:10px;border:1px solid var(--nv-line);max-width:320px;background-color:#fff}
.nv-product .product-variants ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.nv-product .product-variants .input-container{position:relative;float:none;margin:0}
.nv-product .product-variants .input-radio{position:absolute;opacity:0;inset:0;cursor:pointer;z-index:1;width:100%;height:100%}
.nv-product .product-variants .radio-label{display:block;min-width:84px;padding:9px 14px;border:2px solid var(--nv-line);border-radius:10px;background:#fff;font-weight:600;font-size:.9rem;text-align:center;box-shadow:none}
.nv-product .product-variants .input-radio:checked + .radio-label{border-color:var(--nv-cobalt);color:var(--nv-cobalt);background:var(--nv-cobalt-soft)}
.nv-product .product-variants .input-radio:focus-visible + .radio-label{outline:3px solid var(--nv-cobalt);outline-offset:2px}
.nv-product .product-variants .color{width:34px;height:34px;border-radius:50%;border:2px solid var(--nv-line);margin:0}
.nv-product .product-variants .input-color:checked + span{border-color:var(--nv-cobalt);box-shadow:0 0 0 2px #fff inset}

/* Box acquisto */
.nv-buybox{position:sticky;top:16px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:20px;box-shadow:0 18px 40px -28px rgba(20,33,61,.35)}
.nv-qd{margin:0 0 18px}
.nv-qd__head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 6px;font-size:.85rem;font-weight:700}
.nv-qd__best{color:var(--nv-bio)}
.nv-qd__rows{border:1px solid var(--nv-line);border-radius:10px;overflow:hidden;background:#fff}
.nv-qd__row{display:grid;grid-template-columns:16px minmax(0,1fr) auto minmax(74px,auto) 40px;align-items:center;gap:10px;margin:0;padding:8px 12px;border-top:1px solid var(--nv-line);font-size:.85rem;line-height:1.2;cursor:pointer;font-variant-numeric:tabular-nums}
.nv-qd__row:first-child{border-top:0}
.nv-qd__row:hover{background:var(--nv-bg)}
.nv-qd__row.is-active,.nv-qd__row:has(input:checked){background:var(--nv-cobalt-soft)}
.nv-qd__row input{width:16px;height:16px;margin:0;accent-color:var(--nv-cobalt)}
.nv-qd__qty{font-weight:600}
.nv-qd__qty small{font-weight:400;color:var(--nv-muted)}
.nv-qd__price{font-weight:700;text-align:right}
.nv-qd__unit{font-size:.78rem;color:var(--nv-muted);text-align:right}
.nv-qd__save{font-weight:700;color:var(--nv-bio);text-align:right}
.nv-qd--basic .nv-qd__row{grid-template-columns:16px minmax(0,1fr) auto}
.nv-qd--basic .nv-qd__unit,.nv-qd--basic .nv-qd__save{display:none}

.nv-price{margin:0 0 16px}
.nv-price__old{display:flex;align-items:center;gap:8px;margin-bottom:2px}
.nv-price__old .regular-price{color:var(--nv-muted);text-decoration:line-through;font-size:1rem;margin:0}
.nv-price__badge{background:#C8302A;color:#fff;border-radius:4px;padding:1px 7px;font-size:.8rem;font-weight:700}
.nv-price .current-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.nv-price .current-price-value{font-size:2.2rem;line-height:1.1;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--nv-ink)}
.nv-price__now.has-discount .current-price-value{color:#C8302A}
.nv-price__tax{font-size:.85rem;color:var(--nv-muted)}
.nv-price__unit{margin-top:4px;font-weight:700;color:var(--nv-bio);font-size:.95rem}
.nv-price__unit span{font-weight:400;color:var(--nv-muted)}
.nv-price__delivery{font-size:.85rem;color:var(--nv-muted);margin-top:6px}

.nv-addcart__row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}
.nv-addcart__qty{flex:0 0 auto}
.nv-addcart__btn{flex:1 1 180px}
.nv-addcart .bootstrap-touchspin{display:flex;align-items:stretch;height:52px;border:1px solid var(--nv-line);border-radius:26px;overflow:hidden;background:#fff;box-shadow:none;width:auto}
.nv-addcart #quantity_wanted{width:56px;height:50px;border:0;text-align:center;font-weight:700;font-size:1.05rem;padding:0;background:transparent;color:var(--nv-ink)}
.nv-addcart .input-group-btn-vertical{display:flex;flex-direction:column;width:36px;border-left:1px solid var(--nv-line)}
.nv-addcart .input-group-btn-vertical .btn{flex:1;height:auto;width:36px;border:0;background:#fff;padding:0;color:var(--nv-ink)}
.nv-addcart .input-group-btn-vertical .btn:hover{background:var(--nv-cobalt-soft)}
.nv-addcart .input-group-btn-vertical .btn i{position:static;font-size:18px}
.nv-addcart .add-to-cart{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:52px;border-radius:26px;font-size:1.05rem;font-weight:700;text-transform:none;padding:0 18px}
.nv-addcart .add-to-cart:disabled{background:var(--nv-line);border-color:var(--nv-line);color:var(--nv-muted)}
.nv-avail{display:flex;align-items:center;gap:8px;margin:12px 0 0;font-weight:600;font-size:.9rem}
.nv-avail:empty{display:none}
.nv-avail__dot{width:10px;height:10px;border-radius:50%;background:var(--nv-bio)}
.nv-avail--last_remaining_items .nv-avail__dot{background:#D98A1F}
.nv-avail--unavailable .nv-avail__dot{background:#C8302A}
.nv-addcart .product-minimal-quantity{margin:6px 0 0;font-size:.85rem;color:var(--nv-muted)}
.nv-addcart .product-minimal-quantity:empty{display:none}
.nv-buybox__pack{margin:12px 0 0;font-size:.85rem;color:var(--nv-muted);text-align:center}
.nv-buybox .product-additional-info{margin-top:14px;padding-top:12px;border-top:1px solid var(--nv-line);font-size:.875rem}
.nv-buybox .social-sharing{display:flex;align-items:center;gap:6px;margin:0}
.nv-buybox .social-sharing ul{margin:0}

/* Striscia garanzie (a tutta larghezza, prima delle categorie) */
.nv-trust{margin:0 0 28px;padding:14px 22px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius)}
.nv-trust .blockreassurance_product{display:flex;flex-wrap:wrap;gap:12px 36px;margin:0}
.nv-trust .blockreassurance_product > div{display:grid;grid-template-columns:30px minmax(0,1fr);column-gap:12px;align-items:center;flex:1 1 240px;margin:0;padding:0;background:none;border:0}
.nv-trust .blockreassurance_product > div:empty,.nv-trust .blockreassurance_product .clearfix{display:none}
.nv-trust .item-product{grid-row:span 2;width:30px;height:30px;margin:0}
.nv-trust .item-product img,.nv-trust .item-product svg{width:30px;height:30px}
.nv-trust .block-title{margin:0;font-size:.875rem;font-weight:700;line-height:1.2;color:var(--nv-ink)!important}
.nv-trust .blockreassurance_product p:not(.block-title){margin:0;font-size:.78rem;line-height:1.3;color:var(--nv-muted)!important}

/* Sezioni sotto */
.nv-psection{margin:0 0 48px}
.nv-psection__title{font-size:1.4rem;font-weight:750;letter-spacing:-.01em;margin:0 0 16px;text-transform:none}
.nv-pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.nv-pgrid .product-miniature{width:auto;margin:0;padding:0;float:none}
.nv-pgrid .thumbnail-container{margin:0;width:auto;height:100%;background:#fff;border:1px solid var(--nv-line);border-radius:var(--nv-radius);box-shadow:none}
.nv-pdetails{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:40px;align-items:start;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:28px}
.nv-pdetails .product-description{color:var(--nv-ink);font-size:.975rem;line-height:1.65}
.nv-pdetails .product-description img{max-width:100%;height:auto}
.nv-extra{margin-top:28px}
.nv-sheet{width:100%;border-collapse:collapse;font-size:.9rem}
.nv-sheet th,.nv-sheet td{padding:9px 10px;text-align:left;vertical-align:top}
.nv-sheet th{width:45%;font-weight:600;color:var(--nv-muted)}
.nv-sheet tr:nth-child(odd){background:var(--nv-bg)}
.nv-attach a{display:block;padding:6px 0;font-weight:600}
.nv-hidden-details{display:none}
.nv-pfooter{margin-bottom:24px}
.nv-pfooter h2,.nv-pfooter .h2,.nv-pfooter .products-section-title{font-size:1.4rem;font-weight:750;text-transform:none;text-align:left}

/* Famiglia: colori e misure */
.nv-family{margin:0 0 16px}
.nv-family__title{font-size:.9rem;margin:0 0 8px;color:var(--nv-muted)}
.nv-family__title strong{color:var(--nv-ink)}
.nv-swatches,.nv-pills{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.nv-swatch{display:grid;place-items:center;width:64px;height:64px;border:2px solid var(--nv-line);border-radius:10px;background:#fff;overflow:hidden;font-size:.75rem;text-align:center;color:var(--nv-ink);text-decoration:none}
.nv-swatch img{width:100%;height:100%;object-fit:contain}
.nv-swatch:hover{border-color:var(--nv-cobalt)}
.nv-swatch.is-current{border-color:var(--nv-cobalt);box-shadow:0 0 0 2px var(--nv-cobalt-soft)}
.nv-pill{display:block;min-width:80px;padding:8px 14px;border:2px solid var(--nv-line);border-radius:10px;background:#fff;font-weight:600;font-size:.875rem;text-align:center;color:var(--nv-ink);text-decoration:none}
.nv-pill:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt);text-decoration:none}
.nv-pill.is-current{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-pill.is-off,.nv-swatch.is-off{opacity:.45;border-style:dashed}

/* Testo espandibile */
.nv-linkbtn{border:0;background:none;padding:0;color:var(--nv-cobalt);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.nv-clamp__body.is-clamped{max-height:9.5em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 65%,transparent);mask-image:linear-gradient(#000 65%,transparent)}
.nv-clamp__btn{margin-bottom:2px;margin-top:4px}
.nv-sheet.is-collapsed tr:nth-child(n+7){display:none}
.nv-sheet__more{margin-top:10px}

/* Accessori nel box acquisto */
.nv-accmini{margin-top:18px;padding-top:14px;border-top:1px solid var(--nv-line)}
.nv-accmini__title{font-weight:700;margin:0 0 6px}
.nv-accmini ul{list-style:none;margin:0;padding:0}
.nv-accmini__item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--nv-line)}
.nv-accmini__img img{width:48px;height:48px;object-fit:contain;border-radius:8px;background:var(--nv-bg)}
.nv-accmini__info{display:flex;flex-direction:column;min-width:0;font-size:.8rem;line-height:1.3}
.nv-accmini__info a{color:var(--nv-ink);font-weight:600;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.nv-accmini__info span{color:var(--nv-muted)}
.nv-accmini__info strong{color:var(--nv-ink)}
.nv-accmini__add{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:0;background:var(--nv-cobalt-soft);color:var(--nv-cobalt);cursor:pointer}
.nv-accmini__add:hover{background:var(--nv-cobalt);color:#fff}
.nv-accmini__add.is-loading{opacity:.5;pointer-events:none}
.nv-accmini__more{display:inline-block;margin-top:8px;font-weight:600;font-size:.875rem}

/* Categorie del prodotto */
.nv-catlinks{margin-top:0}
.nv-catlinks__title{font-weight:700;margin:0 0 10px}
.nv-catlinks ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.nv-catlinks a{display:block;padding:6px 14px;border:1px solid var(--nv-line);border-radius:18px;background:#fff;color:var(--nv-ink);font-size:.875rem;text-decoration:none}
.nv-catlinks a:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}

/* Caroselli */
.nv-rail__head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px}
.nv-rail__head .nv-psection__title{margin:0}
.nv-psection__title small{display:block;font-size:.85rem;font-weight:400;color:var(--nv-muted);letter-spacing:0;margin-top:2px}
.nv-rail__nav{display:flex;gap:6px}
.nv-rail__nav button{width:38px;height:38px;border-radius:50%;border:1px solid var(--nv-line);background:#fff;font-size:22px;line-height:1;color:var(--nv-ink);cursor:pointer}
.nv-rail__nav button:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}
.nv-rail__nav button:disabled{opacity:.35;cursor:default}
.nv-rail__track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 5 * 16px) / 6);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 10px;scrollbar-width:thin;touch-action:pan-x}
.nv-rail__track > *{scroll-snap-align:start}

/* Scheda compatta */
.nv-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:12px;min-width:0}
.nv-card__img{position:relative;display:block;aspect-ratio:1/1;border-radius:10px;overflow:hidden;background:#fff}
.nv-card__img img{width:100%;height:100%;object-fit:contain}
.nv-card__flag{position:absolute;top:6px;left:6px;z-index:1;background:#C8302A;color:#fff;font-size:.72rem;font-weight:700;border-radius:4px;padding:2px 6px}
.nv-card__pack{position:absolute;right:6px;bottom:6px;background:var(--nv-cobalt);color:#fff;font-size:.72rem;font-weight:700;border-radius:12px;padding:2px 8px}
.nv-acard__body{flex:1;padding:10px 0 6px}
.nv-card__label{margin:0 0 2px;font-weight:700;color:var(--nv-cobalt);font-size:.9rem}
.nv-card__name{margin:0;font-size:.875rem;line-height:1.3;font-weight:600;text-transform:none}
.nv-card__name a{color:var(--nv-ink);overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;text-decoration:none}
.nv-card__name a:hover{color:var(--nv-cobalt)}
.nv-card__ref{margin:4px 0 0;font-size:.75rem;color:var(--nv-muted)}
.nv-card__price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;font-variant-numeric:tabular-nums}
.nv-card__price s{font-size:.8rem;color:var(--nv-muted)}
.nv-card__price strong{font-size:1.15rem;font-weight:750}
.nv-card__price strong.is-offer{color:#C8302A}
.nv-card__price span{width:100%;font-size:.75rem;color:var(--nv-bio);font-weight:600}
.nv-card__avail{display:flex;align-items:center;gap:6px;margin:6px 0 10px;font-size:.75rem;color:var(--nv-muted)}
.nv-card__avail::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--nv-bio)}
.nv-card__avail--low::before{background:#D98A1F}
.nv-card__avail--off::before{background:#C8302A}
.nv-card__buy{margin:0}
.nv-card__add{display:flex;align-items:center;justify-content:center;width:100%;min-height:38px;border-radius:19px;border:2px solid var(--nv-cobalt);background:#fff;color:var(--nv-cobalt);font-weight:700;font-size:.875rem;cursor:pointer;text-decoration:none}
.nv-card__add:hover{background:var(--nv-cobalt);color:#fff;text-decoration:none}

@media (max-width:1399px){.nv-rail__track{grid-auto-columns:calc((100% - 4 * 16px) / 5)}}
@media (max-width:1099px){.nv-rail__track{grid-auto-columns:calc((100% - 3 * 16px) / 4)}}
@media (max-width:767px){.nv-rail__track{grid-auto-columns:44%}.nv-rail__nav{display:none}}

@media (max-width:1199px){
  .nv-product__top{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px}
  .nv-product__form{grid-template-columns:1fr}
  .nv-buybox{position:static}
}
@media (max-width:767px){
  .nv-product__top{grid-template-columns:1fr}
  .nv-pdetails{grid-template-columns:1fr;padding:20px}
  .nv-product__gallery .product-images .thumb{width:64px;height:64px}
}

/* ==========================================================
   Pagine categoria, ricerca e marche
   ========================================================== */
#wrapper .breadcrumb{background:transparent;padding:14px 0 6px;margin:0;font-size:.85rem}
#wrapper .breadcrumb a{color:var(--nv-muted)}
#wrapper .breadcrumb li:last-child span{color:var(--nv-ink);font-weight:600}

/* Intestazione */
.nv-cathead{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:24px 28px;margin:0 0 18px;box-shadow:none}
.nv-cathead__title{margin:0;font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:800;letter-spacing:-.02em;text-transform:none}
.nv-cathead__title small{font-size:.55em;font-weight:500;color:var(--nv-muted)}
.nv-cathead .nv-clamp{margin-top:10px}
.nv-cathead__desc{color:var(--nv-muted);font-size:.95rem;line-height:1.6;max-width:110ch}
.nv-cathead__desc p:last-child{margin-bottom:0}
.nv-cathead__desc.is-clamped{max-height:4.8em}

/* Sottocategorie (annulla gli stili di Classic su #subcategories) */
#subcategories.nv-subcats{margin:0 0 22px;padding:0;background:transparent;border:0;box-shadow:none;width:100%}
#subcategories .nv-subcats__title{margin:0 0 10px;font-weight:700;font-size:1.05rem;color:var(--nv-ink);text-transform:none}
#subcategories ul.nv-subcats__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;list-style:none;margin:0;padding:0;width:100%}
#subcategories ul.nv-subcats__list li{float:none;width:auto;min-width:0;max-width:none;height:auto;margin:0;padding:0;text-align:left}
#subcategories ul.nv-subcats__list li:hover{background:transparent}
.nv-subcat{display:flex;align-items:center;gap:12px;height:100%;padding:10px 12px 10px 10px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:12px;color:var(--nv-ink);text-decoration:none;text-align:left;transition:border-color .15s,box-shadow .15s}
.nv-subcat:hover{border-color:var(--nv-cobalt);box-shadow:0 6px 18px -10px rgba(37,72,201,.45);color:var(--nv-ink);text-decoration:none}
.nv-subcat__img{flex:0 0 48px;height:48px;display:grid;place-items:center;border-radius:10px;background:var(--nv-bg);overflow:hidden;margin:0;padding:0;border:0}
.nv-subcat__img img{width:100%;height:100%;object-fit:contain}
.nv-subcat__letter{font-weight:800;font-size:1.2rem;color:var(--nv-cobalt)}
.nv-subcat__name{flex:1;min-width:0;margin:0;font-weight:600;font-size:.92rem;line-height:1.25;text-align:left;text-transform:none}
.nv-subcat__arrow{flex:none;color:var(--nv-muted)}
.nv-subcat:hover .nv-subcat__arrow{color:var(--nv-cobalt)}

/* Barra ordinamento */
#js-product-list-top{align-items:center;margin:0 0 14px;padding:10px 14px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:12px}
#js-product-list-top .total-products p{margin:0;color:var(--nv-muted);font-size:.9rem}
#js-product-list-top .sort-by{color:var(--nv-muted);font-size:.9rem;white-space:nowrap}
#js-product-list-top .products-sort-order .select-title{border:1px solid var(--nv-line);border-radius:10px;background:#fff;box-shadow:none;padding:8px 12px;font-size:.9rem}
#js-product-list-top .dropdown-menu{border:1px solid var(--nv-line);border-radius:10px;box-shadow:0 12px 30px rgba(20,33,61,.15)}
#js-product-list-top .dropdown-menu .select-list{padding:8px 12px}
#js-product-list-top .dropdown-menu .select-list:hover{background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
#js-active-search-filters{background:transparent;padding:0;margin:0 0 12px}
#js-active-search-filters .filter-block{background:var(--nv-cobalt-soft);color:var(--nv-cobalt);border-radius:16px;box-shadow:none;padding:4px 12px;font-weight:600}

/* Griglia prodotti */
#js-product-list .products{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:0}
#js-product-list .products::before,#js-product-list .products::after{content:none}
#js-product-list .products > .js-product{width:auto;max-width:none;flex:none;padding:0;margin:0}

/* Scheda listino */
.nv-lcard{min-width:0}
.nv-lcard__in{display:flex;flex-direction:column;height:100%;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.nv-lcard__in:hover{border-color:#C5D0E6;box-shadow:0 14px 34px -22px rgba(20,33,61,.45)}
.nv-lcard__media{position:relative;margin:0;padding:12px 12px 0;background:transparent;box-shadow:none;height:auto;width:auto}
.nv-lcard__media:hover,.nv-lcard__media:focus{box-shadow:none}
.nv-lcard__img{display:block;aspect-ratio:1/1;border-radius:10px;background:#fff;overflow:hidden}
.nv-lcard__img img{width:100%;height:100%;object-fit:contain;transition:transform .25s}
.nv-lcard__in:hover .nv-lcard__img img{transform:scale(1.03)}
.nv-lcard .product-flags{position:absolute;top:18px;left:18px;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;align-items:flex-start;gap:5px;pointer-events:none;z-index:2}
.nv-lcard .product-flag{margin:0;min-height:0;min-width:0;padding:3px 8px;border-radius:5px;font-size:.72rem;font-weight:700;text-transform:none;box-shadow:none;background:var(--nv-cobalt);color:#fff}
.nv-lcard .product-flag.discount,.nv-lcard .product-flag.discount-percentage,.nv-lcard .product-flag.discount-amount,.nv-lcard .product-flag.on-sale{background:#C8302A}
.nv-lcard .product-flag.new{background:var(--nv-bio)}
.nv-lcard .product-flag.out_of_stock{background:#6B7489}
.nv-lcard .product-flag.pack,.nv-lcard .product-flag.online-only{background:var(--nv-ink)}
.nv-lcard__pack{position:absolute;right:18px;bottom:8px;z-index:2;background:var(--nv-surface);color:var(--nv-ink);border:1px solid var(--nv-line);font-size:.72rem;font-weight:700;border-radius:12px;padding:2px 9px}
.nv-lcard__quick{position:absolute;left:0;right:0;bottom:auto;top:18px;height:auto;width:auto;display:flex;justify-content:flex-end;padding:0 18px;background:transparent;box-shadow:none;opacity:0;transition:opacity .15s;z-index:3}
.nv-lcard__in:hover .nv-lcard__quick,.nv-lcard__quick:focus-within{opacity:1}
.nv-lcard__quick .quick-view{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:16px;background:rgba(255,255,255,.95);border:1px solid var(--nv-line);color:var(--nv-ink);font-size:.78rem;font-weight:600;text-decoration:none}
.nv-lcard__quick .quick-view:hover{color:var(--nv-cobalt);border-color:var(--nv-cobalt)}
.nv-lcard__body{flex:1;padding:10px 14px 4px;text-align:left;background:transparent;position:static;width:auto;height:auto;box-shadow:none}
.nv-lcard__brand{margin:0 0 2px;font-size:.72rem;font-weight:600;color:var(--nv-muted);letter-spacing:.02em}
.nv-lcard__name{margin:0;font-size:.95rem;line-height:1.3;font-weight:600;text-transform:none;text-align:left}
.nv-lcard__name a{color:var(--nv-ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none}
.nv-lcard__name a:hover{color:var(--nv-cobalt)}
.nv-lcard__variants .variant-links{position:static;background:transparent;padding:6px 0 0;min-height:0;width:auto;text-align:left}
.nv-lcard__variants .color{width:18px;height:18px;border-radius:50%;margin:0 4px 0 0}
.nv-lcard__foot{padding:6px 14px 14px}
.nv-lcard__price{display:flex;flex-direction:column;align-items:flex-start;gap:1px;margin:0;text-align:left;font-variant-numeric:tabular-nums}
.nv-lcard__old{display:flex;align-items:center;gap:6px}
.nv-lcard__old .regular-price{font-size:.82rem;color:var(--nv-muted);text-decoration:line-through;margin:0}
.nv-lcard__old .discount-product{background:#C8302A;color:#fff;border-radius:4px;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-block;margin:0}
.nv-lcard__now{font-size:1.35rem;font-weight:800;letter-spacing:-.01em;color:var(--nv-ink)}
.nv-lcard__now.is-offer{color:#C8302A}
.nv-lcard__unit{font-size:.8rem;font-weight:600;color:var(--nv-bio)}
.nv-lcard__avail{display:flex;align-items:center;gap:6px;margin:6px 0 10px;font-size:.78rem;color:var(--nv-muted)}
.nv-lcard__avail::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--nv-bio)}
.nv-lcard__avail--last_remaining_items::before{background:#D98A1F}
.nv-lcard__avail--unavailable::before{background:#C8302A}
.nv-lcard__buy{display:flex;gap:6px;margin:0}
.nv-lcard__qty{display:flex;align-items:center;flex:0 0 auto;height:40px;border:1px solid var(--nv-line);border-radius:20px;background:#fff}
.nv-lcard__qty .nv-qty-btn{width:28px;height:38px;border:0;background:none;border-radius:19px;font-size:17px;line-height:1;color:var(--nv-ink);cursor:pointer;padding:0}
.nv-lcard__qty .nv-qty-btn:hover{background:var(--nv-cobalt-soft)}
.nv-lcard__qty .nv-qty-input{width:34px;height:38px;border:0;padding:0;text-align:center;font-weight:600;background:transparent;-moz-appearance:textfield}
.nv-lcard__qty .nv-qty-input::-webkit-outer-spin-button,.nv-lcard__qty .nv-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.nv-lcard__add{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 10px;border:0;border-radius:20px;background:var(--nv-cobalt);color:#fff;font-weight:700;font-size:.875rem;cursor:pointer;text-decoration:none;white-space:nowrap}
.nv-lcard__add:hover{background:var(--nv-cobalt-dark);color:#fff;text-decoration:none}
.nv-lcard__add--link{background:#fff;color:var(--nv-cobalt);border:2px solid var(--nv-cobalt)}
.nv-lcard__add--link:hover{background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
@media (max-width:1300px){.nv-lcard__add span{display:none}}
@media (max-width:575px){
  #js-product-list .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .nv-lcard__media{padding:8px 8px 0}
  .nv-lcard__body{padding:8px 10px 2px}
  .nv-lcard__foot{padding:4px 10px 10px}
  .nv-lcard__name{font-size:.85rem}
  .nv-lcard__now{font-size:1.1rem}
  .nv-lcard__buy{flex-direction:column}
  .nv-lcard__qty{justify-content:space-between}
  .nv-lcard__qty .nv-qty-input{flex:1}
  .nv-lcard__add span{display:inline}
  .nv-lcard__quick{display:none}
}

/* Scheda listino: precedenza sugli stili di Classic */
.nv-lcard .nv-lcard__media.thumbnail-container{position:relative!important;display:block;width:auto!important;height:auto!important;margin:0!important;padding:12px 12px 0!important;background:transparent!important;box-shadow:none!important}
.nv-lcard .nv-lcard__media .thumbnail-top{position:static}
.nv-lcard .nv-lcard__media a.product-thumbnail.nv-lcard__img{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:auto!important;aspect-ratio:1/1;margin:0!important;padding:0!important;background:#fff;border-radius:10px;overflow:hidden}
.nv-lcard .nv-lcard__media a.product-thumbnail.nv-lcard__img img{position:static!important;display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;margin:0 auto!important;object-fit:contain!important;transform:none;left:auto!important;top:auto!important}
.nv-lcard .nv-lcard__in:hover a.product-thumbnail.nv-lcard__img img{transform:scale(1.03)}

.nv-lcard .highlighted-informations.nv-lcard__quick{position:absolute!important;top:50%!important;left:12px!important;right:12px!important;bottom:auto!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;display:flex!important;justify-content:center!important;align-items:center;background:transparent!important;box-shadow:none!important;transform:translateY(-50%);opacity:0;transition:opacity .15s;pointer-events:none;z-index:3;text-align:center}
.nv-lcard .nv-lcard__in:hover .highlighted-informations.nv-lcard__quick,
.nv-lcard .highlighted-informations.nv-lcard__quick:focus-within{opacity:1;bottom:auto!important}
.nv-lcard .highlighted-informations.nv-lcard__quick .quick-view{pointer-events:auto;display:inline-flex!important;align-items:center;gap:6px;margin:0;padding:8px 14px;border-radius:18px;background:rgba(255,255,255,.96);border:1px solid var(--nv-line);box-shadow:0 6px 18px -8px rgba(20,33,61,.35);color:var(--nv-ink);font-size:.8rem;font-weight:600;line-height:1;text-decoration:none}
.nv-lcard .highlighted-informations.nv-lcard__quick .quick-view:hover{color:var(--nv-cobalt);border-color:var(--nv-cobalt)}
.nv-lcard .highlighted-informations.nv-lcard__quick .quick-view i{display:none}

.nv-lcard .product-description.nv-lcard__body{position:static!important;width:auto!important;height:auto!important;flex:1;padding:10px 14px 4px!important;background:transparent!important;box-shadow:none!important;text-align:left!important;bottom:auto!important}
.nv-lcard .nv-lcard__body .product-title.nv-lcard__name{margin:0!important;text-align:left!important;text-transform:none!important;font-size:.95rem!important;line-height:1.3!important;font-weight:600!important}
.nv-lcard .nv-lcard__body .product-title.nv-lcard__name a{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--nv-ink)!important;font-size:inherit!important;font-weight:inherit!important;text-align:left!important;text-decoration:none}
.nv-lcard .nv-lcard__body .product-title.nv-lcard__name a:hover{color:var(--nv-cobalt)!important}
.nv-lcard .nv-lcard__brand{text-align:left}
.nv-lcard .product-price-and-shipping.nv-lcard__price{text-align:left!important;margin:0!important;padding:0!important}
@media (max-width:575px){
  .nv-lcard .nv-lcard__media.thumbnail-container{padding:8px 8px 0!important}
  .nv-lcard .product-description.nv-lcard__body{padding:8px 10px 2px!important}
  .nv-lcard .nv-lcard__body .product-title.nv-lcard__name{font-size:.85rem!important}
}

/* Paginazione */
#js-product-list .pagination{margin:24px 0 0;align-items:center}
#js-product-list .pagination .page-list{background:transparent;box-shadow:none;padding:0;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin:0}
#js-product-list .pagination .page-list li{display:block}
#js-product-list .pagination a{display:grid;grid-auto-flow:column;align-items:center;gap:4px;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--nv-line);border-radius:10px;background:#fff;color:var(--nv-ink);font-weight:600;text-decoration:none;white-space:nowrap}
#js-product-list .pagination a:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}
#js-product-list .pagination .current a{background:var(--nv-cobalt);border-color:var(--nv-cobalt);color:#fff}
#js-product-list .pagination .disabled a,#js-product-list .pagination .spacer{border:0;background:transparent}
#js-product-list .pagination .showing{color:var(--nv-muted);font-size:.85rem}

/* Colonna sinistra: categorie e filtri */
#left-column .block-categories,#left-column #search_filters,#search_filters_wrapper #search_filters{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);box-shadow:none;padding:18px 18px 10px;margin-bottom:18px}
#left-column .block-categories .category-top-menu > li > a.h6,#left-column .block-categories .h6{font-size:1rem;font-weight:700;text-transform:none;color:var(--nv-ink)}
#left-column .block-categories .category-sub-menu li a,#left-column .block-categories .category-sub-menu .category-sub-link{color:var(--nv-muted);font-size:.9rem;font-weight:500}
#left-column .block-categories .category-sub-menu li a:hover{color:var(--nv-cobalt)}
#left-column .block-categories .category-sub-menu li[data-depth="0"] > a{color:var(--nv-ink);font-weight:600;border-bottom:1px solid var(--nv-line);padding:7px 0}
#left-column .block-categories .collapse-icons .material-icons{color:var(--nv-muted)}
#search_filters > .h6,#search_filters .text-uppercase.h6{font-size:1rem;font-weight:700;text-transform:none;color:var(--nv-ink);margin-bottom:10px}
#search_filters .facet{padding-top:10px;border-top:1px solid var(--nv-line)}
#search_filters .facet .facet-title{font-size:.9rem;font-weight:700;color:var(--nv-ink);text-transform:none}
#search_filters .facet .facet-label a{color:var(--nv-muted);font-size:.875rem}
#search_filters .facet .facet-label a:hover,#search_filters .facet .facet-label.active a{color:var(--nv-cobalt)}
#search_filters .facet .facet-dropdown{background:var(--nv-bg);border:1px solid var(--nv-line);border-radius:10px;box-shadow:none;padding:0}
#search_filters .facet .facet-dropdown .select-title{padding:9px 12px;font-size:.875rem;color:var(--nv-ink)}
#search_filters .facet .facet-dropdown .dropdown-menu{border:1px solid var(--nv-line);border-radius:10px;box-shadow:0 12px 30px rgba(20,33,61,.15);max-height:280px;overflow:auto}
#search_filters .facet .facet-dropdown .select-list{font-size:.875rem;padding:6px 12px}
#search_filters .facet .facet-dropdown .select-list:hover{background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
#search_filters .ui-slider .ui-slider-range{background:var(--nv-cobalt)}
#search_filters .ui-slider .ui-slider-handle{border-color:var(--nv-cobalt);border-radius:50%;background:#fff}
#search_filters .custom-checkbox input[type=checkbox]+span{border-radius:4px}
#search_filters .clear-all-wrapper .btn{border-radius:16px;text-transform:none}

/* ---------- Responsive header/footer ---------- */
@media (max-width:991px){
  .nv-header{padding-top:12px}
  .nv-header__in{grid-template-columns:auto 1fr auto;gap:12px}
  .nv-burger{display:block}
  .nv-logo{justify-self:start}
  .nv-search{grid-column:1/-1;grid-row:2;margin-bottom:14px}
  .nv-nav{display:none}
  .nv-tool__label{display:none}
  .nv-tool--desk{display:none}
  .nv-minicart__drop{display:none}
  .nv-footer__main{grid-template-columns:1fr}
  .nv-topbar__text{display:none}
}
@media (max-width:640px){
  .nv-ship__bar{width:min(220px,80vw)}
  .nv-topbar__in{justify-content:center;min-height:0;padding-top:10px;padding-bottom:14px}
  .nv-topbar__wa{display:none}
  .nv-ship{flex-direction:column;gap:4px;text-align:center}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}

/* ==========================================================
   Nuvola – area cliente
   Impianto comune a tutte le pagine dell'account:
   colonne, menu laterale, riquadri, pastiglie di stato, tabelle.
   ========================================================== */

/* ---------- Impianto della pagina ---------- */
.nv-acc{padding:28px 0 56px}
.nv-acc__head{margin:0 0 22px}
.nv-acc__title{margin:0;font-size:1.9rem;font-weight:800;letter-spacing:-.02em}
.nv-acc__sub{margin:6px 0 0;color:var(--nv-muted)}
.nv-acc__sub strong{color:var(--nv-ink)}
.nv-acc__grid{display:grid;grid-template-columns:268px minmax(0,1fr);gap:28px;align-items:start}

/* ---------- Menu dell'account ---------- */
/* Forma predefinita: riga di pastiglie. Vale ovunque il menu compaia da solo
   (per esempio nelle pagine prese in carico da OnePageCheckout). */
.nv-accside{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-content:start;min-width:0}
.nv-accnav{min-width:0;max-width:100%}
.nv-accnav__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:nowrap;overflow-x:auto;min-width:0;max-width:100%;gap:8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain}
.nv-accnav__list::-webkit-scrollbar{display:none}
.nv-accnav__item{margin:0;flex:none}
.nv-accnav__link{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid var(--nv-line);border-radius:22px;background:var(--nv-surface);color:var(--nv-ink);font-weight:600;font-size:.9rem;line-height:1.2;white-space:nowrap;text-decoration:none}
.nv-accnav__link:hover,.nv-accnav__link:focus{background:var(--nv-cobalt-soft);color:var(--nv-ink);text-decoration:none}
.nv-accnav__link svg{flex:none;width:18px;height:18px;color:var(--nv-muted)}
.nv-accnav__item.is-active .nv-accnav__link{background:var(--nv-cobalt);border-color:var(--nv-cobalt);color:#fff}
.nv-accnav__item.is-active .nv-accnav__link svg{color:#fff}
.nv-accnav__sep{display:none}

/* Voce di uscita */
.nv-accnav__link--out,.nv-accnav__link--out svg{color:#C8302A}
.nv-accnav__link--out:hover,.nv-accnav__link--out:focus{background:#FBE9E8;color:#C8302A}
.nv-accnav__link--out:hover svg,.nv-accnav__link--out:focus svg{color:#C8302A}

/* Voci aggiunte dai moduli (cookie e simili): pulsante fuori dal riquadro */
.nv-accextra:empty{display:none}
.nv-accextra{display:flex;flex-wrap:wrap;gap:8px}
.nv-accextra > *{margin:0}
.nv-accextra a,.nv-accextra button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:0 18px;border:2px solid var(--nv-line);border-radius:22px;background:var(--nv-surface);color:var(--nv-muted);font:inherit;font-weight:600;font-size:.88rem;line-height:1.2;text-align:center;text-decoration:none;cursor:pointer}
.nv-accextra a:hover,.nv-accextra a:focus,.nv-accextra button:hover,.nv-accextra button:focus{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft);color:var(--nv-ink);text-decoration:none}
.nv-accextra img,.nv-accextra svg,.nv-accextra i{flex:none;width:18px;height:18px;font-size:18px}
.nv-accextra span{display:inline;color:inherit;font:inherit}

/* Dentro le nostre pagine: colonna laterale */
@media (min-width:992px){
  .nv-acc__grid .nv-accnav{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:10px}
  .nv-acc__grid .nv-accside{position:sticky;top:16px}
  .nv-acc__grid .nv-accnav__list{display:block}
  .nv-acc__grid .nv-accnav__item{margin:2px 0}
  .nv-acc__grid .nv-accnav__link{display:flex;width:100%;padding:12px 14px;border:0;border-radius:10px;background:none;font-size:.95rem;gap:12px}
  .nv-acc__grid .nv-accnav__link svg{width:20px;height:20px}
  .nv-acc__grid .nv-accnav__sep{display:block;height:1px;background:var(--nv-line);margin:10px 6px}
}

/* Da telefono la riga di pastiglie scorre in orizzontale */
@media (max-width:991px){
  .nv-acc__grid{grid-template-columns:minmax(0,1fr);gap:18px}
  .nv-accside{margin:0 -24px;gap:10px}
  .nv-accnav__list{flex-wrap:nowrap;overflow-x:auto;padding:4px 24px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-x;
    -webkit-mask-image:linear-gradient(to right, transparent 0, #000 24px, #000 calc(100% - 72px), transparent 100%);
    mask-image:linear-gradient(to right, transparent 0, #000 24px, #000 calc(100% - 72px), transparent 100%)}
  .nv-accnav__list::-webkit-scrollbar{display:none}
  .nv-accnav__link svg{display:none}
  .nv-accextra{padding:0 24px}
  .nv-accextra a,.nv-accextra button{width:auto}
}

/* ---------- Riquadri ---------- */
.nv-acards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.nv-acard{display:flex;flex-direction:column;gap:8px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:22px;color:var(--nv-ink);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
a.nv-acard:hover,a.nv-acard:focus{border-color:var(--nv-cobalt);box-shadow:0 14px 30px -20px rgba(20,33,61,.4);color:var(--nv-ink);text-decoration:none;transform:translateY(-2px)}
.nv-acard__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--nv-cobalt-soft);color:var(--nv-cobalt);margin-bottom:4px}
.nv-acard__icon svg{width:24px;height:24px}
.nv-acard__body{display:block}
.nv-acard__title{display:block;margin:0;font-size:1.05rem;font-weight:700}
.nv-acard__text{display:block;margin:0;color:var(--nv-muted);font-size:.9rem;line-height:1.45}
.nv-acard__go{margin-top:auto;padding-top:10px;color:var(--nv-cobalt);font-weight:700;font-size:.9rem}

/* Riquadro principale (ordini) */
.nv-acard--lead{position:relative;grid-column:1/-1;flex-direction:row;align-items:center;gap:26px;padding:26px 30px;background:linear-gradient(135deg,var(--nv-cobalt-soft),var(--nv-surface) 65%);border-color:var(--nv-cobalt);overflow:hidden}
.nv-acard--lead::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--nv-cobalt)}
.nv-acard--lead .nv-acard__icon{flex:none;width:58px;height:58px;background:var(--nv-cobalt);color:#fff;margin:0}
.nv-acard--lead .nv-acard__icon svg{width:30px;height:30px}
.nv-acard--lead .nv-acard__body{flex:1 1 auto;min-width:0}
.nv-acard--lead .nv-acard__title{margin-bottom:6px;font-size:1.4rem;font-weight:800;letter-spacing:-.02em}
.nv-acard--lead .nv-acard__text{font-size:.95rem;max-width:62ch}
.nv-acard__go--btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;margin:0;padding:0 26px;min-height:48px;border-radius:24px;background:var(--nv-cobalt);color:#fff;font-weight:700;white-space:nowrap}
.nv-acard__go--btn::after{content:"\203A";font-size:1.25em;line-height:0}
a.nv-acard--lead:hover .nv-acard__go--btn,a.nv-acard--lead:focus .nv-acard__go--btn{background:var(--nv-cobalt-dark)}
@media (max-width:767px){
  .nv-acard--lead{flex-direction:column;align-items:flex-start;gap:16px;padding:24px}
  .nv-acard__go--btn{width:100%}
}

/* ---------- Riquadro contenuto (pagine interne) ---------- */
.nv-panel{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:26px}
.nv-panel + .nv-panel{margin-top:18px}
.nv-panel__title{margin:0 0 16px;font-size:1.2rem;font-weight:700}

/* ---------- Pastiglie di stato ---------- */
.nv-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;border-radius:20px;font-size:.82rem;font-weight:700;line-height:1.3;background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}
.nv-pill--ok{background:#E4F3EA;color:var(--nv-bio)}
.nv-pill--wait{background:var(--nv-kraft-soft);color:#8A6321}
.nv-pill--stop{background:#FBE9E8;color:#C8302A}
.nv-pill--neutral{background:var(--nv-bg);color:var(--nv-muted)}

/* ---------- Messaggio quando non c'è nulla ---------- */
.nv-empty{text-align:center;padding:48px 24px}
.nv-empty__icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 18px;border-radius:50%;background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-empty__icon svg{width:36px;height:36px}
.nv-empty__title{margin:0 0 8px;font-size:1.15rem;font-weight:700}
.nv-empty__text{margin:0 0 22px;color:var(--nv-muted)}

/* ---------- Ritocchi ai form di PrestaShop dentro l'account ---------- */
.nv-acc .form-control{min-height:46px;border-radius:10px;border:2px solid var(--nv-line);background:var(--nv-bg);font-family:inherit}
.nv-acc .form-control:focus{border-color:var(--nv-cobalt);background:#fff;box-shadow:none}
.nv-acc .form-control-label{font-weight:600;color:var(--nv-ink)}
.nv-acc .form-control-comment{color:var(--nv-muted);font-size:.85rem}

/* ---------- Elenco ordini ---------- */
.nv-orders{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.nv-order{background:var(--nv-surface);border:1px solid #CBD5EA;border-radius:var(--nv-radius);overflow:hidden;box-shadow:0 4px 14px -10px rgba(20,33,61,.45);transition:border-color .15s ease,box-shadow .15s ease}
.nv-order:hover{border-color:var(--nv-cobalt);box-shadow:0 16px 32px -20px rgba(20,33,61,.45)}

/* Fascia con i dati freddi */
.nv-order__bar{display:flex;align-items:center;gap:36px;flex-wrap:wrap;padding:14px 24px;background:var(--nv-cobalt-soft);border-bottom:1px solid #CBD5EA}
.nv-order__field{display:flex;flex-direction:column;gap:2px;min-width:0}
.nv-order__label{color:var(--nv-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}
.nv-order__value{font-size:.95rem;font-weight:700;color:var(--nv-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nv-order__value--amount{font-size:1.05rem;font-weight:800}
.nv-order__value--soft{font-weight:600;color:var(--nv-muted)}
.nv-order__invoice{display:inline-flex;align-items:center;gap:7px;margin-left:auto;padding:8px 14px;border-radius:20px;color:var(--nv-cobalt);font-size:.88rem;font-weight:700;text-decoration:none;white-space:nowrap}
.nv-order__invoice:hover,.nv-order__invoice:focus{background:var(--nv-cobalt-soft);color:var(--nv-cobalt-dark);text-decoration:none}

/* Parte viva: stato e azioni */
.nv-order__body{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:18px 24px}
.nv-order__state{min-width:0}
.nv-order__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-left:auto}
.nv-order__actions .nv-btn{min-height:44px;padding:0 24px;font-size:.93rem}

/* Pastiglia con il colore dello stato impostato in PrestaShop */
.nv-pill--ps{background:var(--nv-bg);color:var(--nv-ink);border:1px solid var(--nv-line);padding:7px 15px;font-size:.88rem}
.nv-pill--ps::before{background:var(--nv-dot,var(--nv-muted))}
.nv-order__body .nv-pill--ps{background:var(--nv-surface)}

@media (max-width:767px){
  .nv-order__bar{gap:14px 28px;padding:14px 18px}
  .nv-order__field{flex:0 0 calc(50% - 14px)}
  .nv-order__field--ref{flex:1 1 100%;order:3}
  .nv-order__invoice{order:4;margin:0 0 0 auto;padding:8px 0}
  .nv-order__body{padding:16px 18px;gap:14px}
  .nv-order__actions{width:100%;margin:0}
  .nv-order__actions .nv-btn{flex:1 1 auto}
}

/* ---------- Dettaglio ordine ---------- */
.nv-acc__back{margin:0 0 6px}
.nv-acc__back a{color:var(--nv-muted);font-weight:600;font-size:.9rem;text-decoration:none}
.nv-acc__back a:hover{color:var(--nv-cobalt)}

.nv-odsum{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.nv-odsum__facts{display:flex;align-items:center;gap:32px;flex-wrap:wrap;min-width:0}
.nv-odsum__fact{display:flex;flex-direction:column;gap:2px;min-width:0}
.nv-odsum__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-left:auto}

/* Spedizione */
.nv-ships{display:grid;gap:14px}
.nv-ship-line{background:var(--nv-bg);border:1px solid var(--nv-line);border-radius:12px;padding:18px 20px}
.nv-ship-line__grid{display:flex;gap:32px;flex-wrap:wrap}
.nv-ship-line__track{margin:14px 0 0;padding-top:14px;border-top:1px solid var(--nv-line);display:flex;flex-direction:column;gap:3px}
.nv-ship-line__code{font-size:1.05rem;font-weight:800;letter-spacing:.02em;word-break:break-all}
.nv-ship-line__code a{color:var(--nv-cobalt)}
.nv-ship-line__btn{margin-top:16px}
.nv-ship-none{margin:0;color:var(--nv-muted)}

/* Linea del tempo degli stati */
.nv-track{list-style:none;margin:22px 0 0;padding:22px 0 0;border-top:1px solid var(--nv-line);display:grid;gap:0}
.nv-track__step{position:relative;display:flex;align-items:flex-start;gap:14px;padding:0 0 18px 0}
.nv-track__step::before{content:"";position:absolute;left:7px;top:18px;bottom:0;width:2px;background:var(--nv-line)}
.nv-track__step:last-child{padding-bottom:0}
.nv-track__step:last-child::before{display:none}
.nv-track__dot{flex:none;width:16px;height:16px;border-radius:50%;background:var(--nv-dot,var(--nv-muted));box-shadow:0 0 0 4px var(--nv-surface);position:relative;z-index:1;margin-top:2px}
.nv-track__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.nv-track__name{font-weight:700}
.nv-track__date{color:var(--nv-muted);font-size:.86rem}

/* Indirizzi */
.nv-addr{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:18px}
.nv-addr .nv-panel{margin-top:0}
.nv-addr__alias{margin:0 0 8px;font-weight:700;color:var(--nv-cobalt)}
.nv-addr__text{margin:0;font-style:normal;color:var(--nv-muted);line-height:1.6}

/* Righe prodotto */
.nv-odlines{display:grid;gap:0}
.nv-odline{display:grid;grid-template-columns:minmax(0,1fr) 120px 110px 120px;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--nv-line)}
.nv-odline--head{padding:0 0 12px;color:var(--nv-muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.nv-odline__desc{display:flex;flex-direction:column;gap:3px;min-width:0}
.nv-odline__name{color:var(--nv-ink);font-weight:700;text-decoration:none;line-height:1.35}
.nv-odline__name:hover{color:var(--nv-cobalt)}
.nv-odline__ref{color:var(--nv-muted);font-size:.85rem}
.nv-odline__dl{font-size:.88rem;font-weight:600}
.nv-odline__num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.nv-odline__num--total{font-weight:800}

/* Totali */
.nv-odtotals{margin-top:18px;margin-left:auto;width:min(380px,100%);display:grid;gap:8px}
.nv-odtotals__row{display:flex;justify-content:space-between;gap:20px;margin:0;color:var(--nv-muted)}
.nv-odtotals__row span:last-child{font-weight:700;color:var(--nv-ink);font-variant-numeric:tabular-nums}
.nv-odtotals__row--grand{margin-top:8px;padding-top:12px;border-top:2px solid var(--nv-line);font-size:1.15rem;color:var(--nv-ink);font-weight:800}
.nv-odtotals__row--grand span:last-child{font-weight:800}

.nv-odnote{margin:16px 0 0;padding:12px 16px;background:var(--nv-kraft-soft);border-radius:10px;font-size:.92rem}

/* Messaggi: forme di PrestaShop nello stile del tema */
.nv-odmsg .form-control{min-height:46px;border-radius:10px;border:2px solid var(--nv-line);background:var(--nv-bg)}
.nv-odmsg textarea.form-control{min-height:120px}
.nv-odmsg .btn{border-radius:24px;text-transform:none;font-weight:700}

@media (max-width:767px){
  .nv-odsum{gap:18px}
  .nv-odsum__facts{gap:18px 26px}
  .nv-odsum__actions{width:100%;margin:0}
  .nv-odsum__actions .nv-btn{flex:1 1 auto}
  .nv-ship-line__grid{gap:14px 26px}
  .nv-odline--head{display:none}
  .nv-odline{grid-template-columns:minmax(0,1fr);gap:6px;padding:16px 0}
  .nv-odline__num{text-align:left}
  .nv-odline__num::before{content:attr(data-label) ": ";color:var(--nv-muted);font-size:.85rem;font-weight:600}
  .nv-odtotals{width:100%}
}

/* ---------- Checkout: intestazione e piè di pagina ---------- */
.nv-cohead{background:var(--nv-surface);border-bottom:1px solid var(--nv-line)}
.nv-cohead__in{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:16px 0}
.nv-cohead__logo{display:block;line-height:0}
.nv-cohead__logo img{height:56px;width:auto;max-width:100%}
.nv-cohead__side{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.nv-cohead__safe{display:inline-flex;align-items:center;gap:8px;color:var(--nv-bio);font-weight:700;font-size:.92rem}
.nv-cohead__wa{display:inline-flex;align-items:center;gap:8px;color:var(--nv-ink);font-weight:700;font-size:.92rem;text-decoration:none}
.nv-cohead__wa svg{color:#1FA855}
.nv-cohead__wa:hover{color:var(--nv-cobalt);text-decoration:none}

.nv-cofoot{padding:28px 0 36px;text-align:center;color:var(--nv-muted);font-size:.88rem}
.nv-cofoot__terms{margin:0 0 10px}
.nv-cofoot__terms a{color:var(--nv-cobalt);font-weight:600}
.nv-cofoot__company{margin:0 0 6px;line-height:1.6}
.nv-cofoot__copy{margin:0;opacity:.8}

@media (max-width:575px){
  .nv-cohead__in{padding:12px 0;gap:12px}
  .nv-cohead__logo img{height:40px}
  .nv-cohead__side{gap:16px;width:100%}
  .nv-cohead__safe,.nv-cohead__wa{font-size:.85rem}
}

/* ---------- Form dell'area cliente ---------- */
.nv-form .form-group{margin-bottom:18px}
.nv-form .form-control-label{display:block;margin-bottom:6px}
.nv-form .form-control-valign{padding-top:0}
.nv-form .radio-inline,.nv-form .checkbox{font-weight:600}
.nv-form .form-control-comment{margin-top:4px}
.nv-form .form-footer{margin-top:26px;padding-top:22px;border-top:1px solid var(--nv-line);display:flex;gap:12px;flex-wrap:wrap}
.nv-form .form-footer .btn,.nv-form .form-control-submit{min-height:48px;padding:0 28px;border-radius:24px;text-transform:none;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.nv-form .btn-primary,.nv-form .form-control-submit{background:var(--nv-cobalt);border-color:var(--nv-cobalt);color:#fff}
.nv-form .btn-primary:hover,.nv-form .form-control-submit:hover{background:var(--nv-cobalt-dark);border-color:var(--nv-cobalt-dark)}
.nv-form .help-block{color:#C8302A;font-size:.86rem;margin-top:5px}
.nv-form .has-error .form-control{border-color:#C8302A}
@media (max-width:575px){
  .nv-form .form-footer .btn,.nv-form .form-control-submit{width:100%}
}

/* ---------- Buoni sconto ---------- */
.nv-vouchers{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.nv-voucher{background:var(--nv-surface);border:1px solid #CBD5EA;border-radius:var(--nv-radius);box-shadow:0 4px 14px -10px rgba(20,33,61,.45);padding:22px}
.nv-voucher__top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px dashed var(--nv-line)}
.nv-voucher__code{display:inline-block;padding:7px 14px;border-radius:10px;background:var(--nv-cobalt-soft);color:var(--nv-cobalt);font-weight:800;font-size:1.05rem;letter-spacing:.06em}
.nv-voucher__value{font-size:1.2rem;font-weight:800;color:var(--nv-bio);white-space:nowrap}
.nv-voucher__name{margin:14px 0 0;font-weight:700;line-height:1.4}
.nv-voucher__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px 18px;margin:14px 0 0}
.nv-voucher__facts div{min-width:0}
.nv-voucher__facts dt{margin:0;color:var(--nv-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.nv-voucher__facts dd{margin:2px 0 0;font-weight:700;font-size:.95rem}

/* ---------- Tendina dei suggerimenti di ricerca ---------- */
.nv-search{position:relative}
.nv-sugg{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:60;background:var(--nv-surface);border:1px solid #CBD5EA;border-radius:14px;box-shadow:0 24px 48px -24px rgba(20,33,61,.5);overflow:hidden}
.nv-sugg__body{max-height:min(70vh,520px);overflow-y:auto;padding:8px}
.nv-sugg__group + .nv-sugg__group{border-top:1px solid var(--nv-line);margin-top:6px;padding-top:10px}
.nv-sugg__title{margin:6px 10px 8px;color:var(--nv-muted);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.nv-sugg__chips{display:flex;flex-wrap:wrap;gap:8px;padding:0 10px 6px}
.nv-sugg__chip{display:inline-flex;align-items:center;padding:8px 14px;border:1px solid var(--nv-line);border-radius:20px;color:var(--nv-ink);font-size:.88rem;font-weight:600;text-decoration:none}
.nv-sugg__chip:hover,.nv-sugg__chip:focus,.nv-sugg__chip.is-hl{background:var(--nv-cobalt-soft);border-color:var(--nv-cobalt);color:var(--nv-ink);text-decoration:none}
.nv-sugg__list{list-style:none;margin:0;padding:0}
.nv-sugg__row{display:flex;align-items:center;gap:14px;padding:10px;border-radius:10px;color:var(--nv-ink);text-decoration:none}
.nv-sugg__row:hover,.nv-sugg__row:focus,.nv-sugg__row.is-hl{background:var(--nv-cobalt-soft);color:var(--nv-ink);text-decoration:none}
.nv-sugg__img{flex:none;width:48px;height:48px;object-fit:contain;border:1px solid var(--nv-line);border-radius:8px;background:#fff}
.nv-sugg__img--none{background:var(--nv-bg)}
.nv-sugg__info{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.nv-sugg__name{font-weight:700;font-size:.94rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.nv-sugg__ref{color:var(--nv-muted);font-size:.8rem}
.nv-sugg__price{flex:none;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.nv-sugg__all{display:block;padding:14px;text-align:center;background:var(--nv-bg);color:var(--nv-cobalt);font-weight:700;font-size:.92rem;text-decoration:none;border-top:1px solid var(--nv-line)}
.nv-sugg__all:hover,.nv-sugg__all.is-hl{background:var(--nv-cobalt-soft);color:var(--nv-cobalt-dark);text-decoration:none}
.nv-sugg__none{margin:0;padding:22px 16px;text-align:center;color:var(--nv-muted);font-size:.92rem}

@media (max-width:767px){
  .nv-sugg{left:-8px;right:-8px;border-radius:12px}
  .nv-sugg__body{max-height:64vh}
  .nv-sugg__img{width:40px;height:40px}
}

/* ==========================================================
   Striscia prodotti (home, ricerca senza risultati, 404)
   Blocco autonomo: non dipende dagli stili della home.
   ========================================================== */
.nv-seen{padding:34px 0}
.nv-seen .nv-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin:0 0 18px}
.nv-seen .nv-h2{font-family:var(--nv-font);font-size:clamp(22px,2.4vw,32px);line-height:1.1;letter-spacing:-.02em;margin:0;font-weight:750;color:var(--nv-ink);text-transform:none}

/* Una riga sola: se i prodotti non ci stanno, scorre */
.nv-seen .nv-products--rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:18px;overflow:visible}
.nv-seen .nv-products--rail > .nv-card{min-width:0}

/* Scheda: tre fasce, con prezzo e pulsanti sempre in fondo */
.nv-seen .nv-card{height:100%;min-width:0;display:grid;grid-template-rows:auto 1fr auto;gap:12px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:14px}
.nv-seen .nv-thumb{position:relative;display:block;border-radius:10px;overflow:hidden;background:#fff;aspect-ratio:1/1}
.nv-seen .nv-thumb img{width:100%;height:100%;object-fit:contain}
.nv-seen .nv-stock{position:absolute;left:10px;top:10px;z-index:1;background:#fff;font-size:12px;font-weight:600;border-radius:6px;padding:3px 8px;display:flex;align-items:center;gap:6px;box-shadow:0 2px 6px rgba(20,33,61,.12)}
.nv-seen .nv-stock::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--nv-bio)}
.nv-seen .nv-stock-low::before{background:#D98A1F}
.nv-seen .nv-card-body{min-width:0}
.nv-seen .nv-card-title{font-size:16px;line-height:1.3;margin:0 0 4px;font-weight:600;text-transform:none}
.nv-seen .nv-card-title a{color:var(--nv-ink);text-decoration:none}
.nv-seen .nv-card-title a:hover{color:var(--nv-cobalt)}
.nv-seen .nv-meta{font-size:13px;color:var(--nv-muted);margin:0}
.nv-seen .nv-price-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.nv-seen .nv-price{font-size:22px;font-weight:750;font-variant-numeric:tabular-nums}
.nv-seen .nv-unit{font-size:13px;color:var(--nv-bio);font-weight:600}
.nv-seen .nv-buy{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0}
.nv-seen .nv-qty{display:flex;align-items:center;border:1px solid var(--nv-line);border-radius:22px;height:44px;background:#fff}
.nv-seen .nv-qty-btn{width:38px;height:42px;border:0;background:none;cursor:pointer;font-size:18px;line-height:1;color:var(--nv-ink)}
.nv-seen .nv-qty-input{width:40px;height:40px;border:0;text-align:center;font-weight:600;font-family:inherit;background:none;-moz-appearance:textfield}
.nv-seen .nv-qty-input::-webkit-outer-spin-button,.nv-seen .nv-qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.nv-seen .nv-add{flex:1;min-height:44px;border-radius:22px;border:0;background:var(--nv-cobalt);color:#fff;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none;padding:0 14px}
.nv-seen .nv-add:hover{background:var(--nv-cobalt-dark);color:#fff}
.nv-seen .nv-add-link{margin-top:10px}

/* Nelle pagine 404 e ricerca la striscia resta nella colonna dei contenuti
   e la occupa tutta, senza margini doppi. */

/* Contenitori di Classic che restano vuoti quando non ci sono risultati */
#js-product-list-top:empty,#js-product-list-bottom:empty,#js-product-list-header:empty{display:none}

@media (max-width:767px){
  .nv-seen{padding:24px 0}
  .nv-seen .nv-head{margin-bottom:14px}
  .nv-seen .nv-products--rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .nv-seen .nv-products--rail > .nv-card{min-width:0}
  .nv-seen .nv-card{scroll-snap-align:start}
}

/* ---------- Pagina non trovata e ricerca senza risultati ---------- */
.nv-404{text-align:center;padding:56px 24px 40px}
.nv-404__code{display:block;font-size:4.5rem;font-weight:800;line-height:1;color:var(--nv-cobalt);letter-spacing:-.04em}
.nv-404__title{margin:14px 0 10px;font-size:1.8rem;font-weight:800;letter-spacing:-.02em}
.nv-404__text{margin:0 auto 26px;max-width:52ch;color:var(--nv-muted);line-height:1.6}
.nv-404__actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}

.nv-nores{text-align:center;padding:40px 24px 32px}
.nv-nores__icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 16px;border-radius:50%;background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-nores__title{margin:0 0 10px;font-size:1.4rem;font-weight:800}
.nv-nores__text{margin:0 auto 22px;max-width:56ch;color:var(--nv-muted);line-height:1.6}

@media (max-width:575px){
  .nv-404{padding:40px 16px 28px}
  .nv-404__code{font-size:3.4rem}
  .nv-404__actions .nv-btn{width:100%}
}

/* ==========================================================
   Pagine elenco: categorie, marche, fornitori, ricerca, offerte
   ========================================================== */
.nv-list{padding-bottom:48px}

/* Barra sopra i prodotti: conteggio a sinistra, ordinamento a destra */
.nv-listbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px;padding:12px 0;border-bottom:1px solid var(--nv-line)}
.nv-listbar__count{margin:0;color:var(--nv-muted);font-weight:600;font-size:.92rem}
.nv-listbar__tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-left:auto}
.nv-listbar .products-sort-order,.nv-listbar .total-products{margin:0}
.nv-listbar .total-products p{margin:0;color:var(--nv-muted);font-size:.92rem}
.nv-listbar .products-sort-order .select-title,.nv-listbar .btn-unstyle{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border:1px solid var(--nv-line);border-radius:22px;background:var(--nv-surface);color:var(--nv-ink);font-weight:600;font-size:.92rem;cursor:pointer}
.nv-listbar .products-sort-order .dropdown-menu{border:1px solid var(--nv-line);border-radius:12px;padding:6px;box-shadow:0 18px 36px -22px rgba(20,33,61,.45)}
.nv-listbar .products-sort-order .dropdown-menu a{display:block;padding:9px 12px;border-radius:8px;color:var(--nv-ink);text-decoration:none;font-size:.92rem}
.nv-listbar .products-sort-order .dropdown-menu a:hover{background:var(--nv-cobalt-soft)}

/* Filtri attivi */
.nv-list__filters{margin:0 0 18px}
.nv-list__filters:empty{display:none}
.nv-list__filters .filter-block{display:inline-flex;align-items:center;gap:8px;margin:0 8px 8px 0;padding:6px 14px;border:1px solid var(--nv-line);border-radius:20px;background:var(--nv-surface);font-size:.88rem;font-weight:600}
.nv-list__filters .js-search-link{color:var(--nv-muted);text-decoration:none}

/* Griglia */
.nv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0}
.nv-grid__item{min-width:0}
@media (max-width:1399px){.nv-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:991px){.nv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media (max-width:479px){.nv-grid{grid-template-columns:minmax(0,1fr)}}

/* Paginazione */
.nv-pager{margin-top:32px;padding-top:24px;border-top:1px solid var(--nv-line)}
.nv-pager .pagination{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:0}
.nv-pager .pagination .page-list{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.nv-pager .pagination a,.nv-pager .pagination .disabled span{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:42px;min-height:42px;padding:0 12px;border:1px solid var(--nv-line);border-radius:22px;background:var(--nv-surface);color:var(--nv-ink);font-weight:600;text-decoration:none;white-space:nowrap}
.nv-pager .pagination a:hover{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft)}
.nv-pager .pagination .current a{background:var(--nv-cobalt);border-color:var(--nv-cobalt);color:#fff}
.nv-pager .pagination .disabled span{opacity:.45}

/* Striscia prodotti nel piè di pagina (404 e ricerca senza risultati) */
.nv-seenwrap{background:var(--nv-bg);border-top:1px solid var(--nv-line)}
.nv-seenwrap .nv-seen{padding:36px 0 44px}

/* Classic limita questo blocco a 570px con overflow:auto: lo annulliamo */
#pagenotfound .page-not-found,
#products .page-not-found,
#js-product-list .page-not-found{max-width:none;width:100%;margin:0;padding:0;overflow:visible;background:none;color:inherit;font-size:1rem}
#pagenotfound .page-not-found .nv-404,
#products .page-not-found .nv-nores,
#js-product-list .page-not-found .nv-nores{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:44px 24px}

/* In home la striscia sta sempre su una riga sola, da computer.
   Da telefono resta a 2 colonne fino allo schermo più piccolo. */
.nv-home .nv-seen .nv-products--rail{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
@media (max-width:991px){.nv-home .nv-seen .nv-products--rail{grid-auto-flow:row;grid-template-columns:1fr}}

/* Link accanto al titolo della striscia */
.nv-seen__more{display:inline-flex;align-items:center;gap:6px;color:var(--nv-cobalt);font-weight:700;font-size:.95rem;text-decoration:none;white-space:nowrap}
.nv-seen__more::after{content:"\203A";font-size:1.2em;line-height:0}
.nv-seen__more:hover,.nv-seen__more:focus{color:var(--nv-cobalt-dark);text-decoration:underline}

/* ==========================================================
   Piè di pagina – scritto nel tema, senza moduli di link
   ========================================================== */
.nv-footer{background:var(--nv-surface);border-top:1px solid var(--nv-line)}

/* Newsletter */
.nv-footer__news{background:var(--nv-cobalt-soft);border-bottom:1px solid var(--nv-line)}
.nv-footer__news-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center;padding:28px 24px}
.nv-footer__news-title{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.02em;color:var(--nv-ink)}
.nv-footer__news-sub{margin:6px 0 0;color:var(--nv-muted);font-size:.92rem}
.nv-footer__news-form .block-social,.nv-footer__news-form .block_newsletter h3,.nv-footer__news-form .block_newsletter .h3{display:none}
.nv-footer__news-form .block_newsletter{background:none;padding:0;margin:0}
.nv-footer__news-form .row{display:block;margin:0}
.nv-footer__news-form .input-wrapper,.nv-footer__news-form form{margin:0}
.nv-footer__news-form .form-control{min-height:48px;border-radius:24px;border:1px solid var(--nv-line);background:#fff;padding:0 18px;font-family:inherit}
.nv-footer__news-form .btn{min-height:48px;border-radius:24px;padding:0 26px;font-weight:700;text-transform:none;background:var(--nv-cobalt);border-color:var(--nv-cobalt);color:#fff}
.nv-footer__news-form .btn:hover{background:var(--nv-cobalt-dark);border-color:var(--nv-cobalt-dark)}
.nv-footer__news-form p{color:var(--nv-muted);font-size:.8rem;margin:8px 0 0}

/* Colonne */
.nv-footer__grid{display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:40px;padding-top:44px;padding-bottom:36px;align-items:start}
.nv-footer__logo img{max-height:44px;width:auto;height:auto}
.nv-footer__claim{color:var(--nv-muted);margin:16px 0 18px;max-width:34ch;line-height:1.6}
.nv-footer__social{display:flex;gap:10px;flex-wrap:wrap}
.nv-footer__social a{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid var(--nv-line);border-radius:22px;color:var(--nv-cobalt);text-decoration:none;font-size:.9rem;font-weight:600}
.nv-footer__social a:hover{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft)}

.nv-footer__title{margin:0 0 14px;font-size:1rem;font-weight:800;color:var(--nv-ink);letter-spacing:-.01em}
.nv-footer__col ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.nv-footer__col a{color:var(--nv-muted);text-decoration:none;font-size:.94rem;line-height:1.4}
.nv-footer__col a:hover{color:var(--nv-cobalt)}
.nv-footer__strong{font-weight:800;color:var(--nv-ink)!important;font-size:1.02rem!important}
.nv-footer__addr{margin:16px 0 0;font-style:normal;color:var(--nv-muted);font-size:.9rem;line-height:1.6}
.nv-footer__addr strong{color:var(--nv-ink)}

/* Riga finale */
.nv-footer__legal{border-top:1px solid var(--nv-line);font-size:.82rem;color:var(--nv-muted)}
.nv-footer__legal-in{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}
.nv-footer__legal-links{display:flex;gap:18px;flex-wrap:wrap}
.nv-footer__legal-links a{color:var(--nv-muted);text-decoration:none}
.nv-footer__legal-links a:hover{color:var(--nv-cobalt)}

@media (max-width:1199px){
  .nv-footer__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
  .nv-footer__brand{grid-column:1/-1}
  .nv-footer__claim{max-width:52ch}
}
@media (max-width:767px){
  .nv-footer__news-in{grid-template-columns:minmax(0,1fr);gap:18px;padding:24px}
  .nv-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding-top:32px}
  .nv-footer__legal-in{justify-content:flex-start}
}
@media (max-width:479px){
  .nv-footer__grid{grid-template-columns:minmax(0,1fr)}
}

/* ---------- Stima di consegna in scheda prodotto ---------- */
.nv-eta{margin:16px 0 0;padding:14px 16px;background:var(--nv-bg);border:1px solid var(--nv-line);border-radius:12px;display:grid;gap:8px}
.nv-eta p{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:.93rem;line-height:1.45}
.nv-eta svg{flex:none;margin-top:1px}
.nv-eta__timer{color:#8A6321}
.nv-eta__timer strong{color:#7A5A1E}
.nv-eta__date{color:var(--nv-ink)}
.nv-eta__date svg{color:var(--nv-cobalt)}
.nv-eta__date strong{font-weight:800}
.nv-eta__closed{color:#8A6321}

.nv-eta__ship{color:var(--nv-ink)}
.nv-eta__ship svg{color:var(--nv-bio)}
.nv-eta__ship strong{font-weight:800}

/* ---------- Immagine dentro la descrizione ---------- */
.nv-desc__img{float:right;width:40%;max-width:360px;margin:4px 0 20px 26px;display:block;border:1px solid var(--nv-line);border-radius:12px;overflow:hidden;background:#fff}
.nv-desc__img img{display:block;width:100%;height:auto}
.nv-desc__img:hover{border-color:var(--nv-cobalt)}
.nv-desc--withimg::after{content:"";display:block;clear:both}
@media (max-width:767px){
  .nv-desc__img{float:none;width:100%;max-width:none;margin:0 0 18px}
}

/* ---------- Disponibilità e spedizione gratuita nel box acquisto ---------- */
.nv-avail{display:inline-flex;align-items:center;gap:8px;margin:12px 0 0;padding:6px 14px;border-radius:20px;font-size:.88rem;font-weight:700;background:var(--nv-bg);color:var(--nv-ink)}
.nv-avail:empty{display:none}
.nv-avail__dot{width:8px;height:8px;border-radius:50%;background:var(--nv-muted);flex:none}
.nv-avail--available{background:#E4F3EA;color:var(--nv-bio)}
.nv-avail--available .nv-avail__dot{background:var(--nv-bio)}
.nv-avail--last_remaining_items{background:var(--nv-kraft-soft);color:#8A6321}
.nv-avail--last_remaining_items .nv-avail__dot{background:#D98A1F}
.nv-avail--unavailable{background:#FBE9E8;color:#C8302A}
.nv-avail--unavailable .nv-avail__dot{background:#C8302A}

.nv-freeship{display:flex;align-items:center;gap:10px;margin:14px 0 0;padding:10px 14px;border-radius:10px;background:var(--nv-cobalt-soft);color:var(--nv-ink);font-size:.9rem;line-height:1.4}
.nv-freeship svg{flex:none;color:var(--nv-cobalt)}
.nv-freeship--ok{background:#E4F3EA}
.nv-freeship--ok svg{color:var(--nv-bio)}

/* ---------- Pagina FAQ ---------- */
.nv-faq{max-width:860px;margin:0 auto}
.nv-faq__intro{margin:0 0 32px;color:var(--nv-muted);font-size:1.02rem;line-height:1.65}
.nv-faq__intro strong{color:var(--nv-ink);white-space:nowrap}
.nv-faq__answer strong,.nv-faq__help p strong{white-space:normal}
.nv-faq__group{margin:36px 0 14px;font-size:1.25rem;font-weight:800;letter-spacing:-.02em;color:var(--nv-ink)}
.nv-faq__group:first-of-type{margin-top:0}

.nv-faq__item{border:1px solid var(--nv-line);border-radius:12px;background:var(--nv-surface);margin:0 0 10px;overflow:hidden}
.nv-faq__item.is-open{border-color:var(--nv-cobalt)}
.nv-faq__q{display:flex;align-items:center;gap:14px;margin:0;padding:16px 20px;font-weight:700;font-size:1rem;line-height:1.4;color:var(--nv-ink)}
.nv-faq.is-ready .nv-faq__q{cursor:pointer}
.nv-faq.is-ready .nv-faq__q::after{content:"";flex:none;margin-left:auto;width:11px;height:11px;border-right:2px solid var(--nv-muted);border-bottom:2px solid var(--nv-muted);transform:rotate(45deg);transition:transform .18s ease}
.nv-faq.is-ready .nv-faq__item.is-open .nv-faq__q::after{transform:rotate(-135deg);border-color:var(--nv-cobalt)}
.nv-faq.is-ready .nv-faq__q:hover{background:var(--nv-bg)}
/* Senza JavaScript restano tutte aperte: il testo è comunque nella pagina */
.nv-faq.is-ready .nv-faq__answer{display:none}
.nv-faq.is-ready .nv-faq__item.is-open .nv-faq__answer{display:block}
.nv-faq__answer{padding:0 20px 18px;color:var(--nv-muted);line-height:1.65}
.nv-faq__answer p{margin:0 0 12px}
.nv-faq__answer p:last-child{margin-bottom:0}
.nv-faq__answer strong{color:var(--nv-ink)}
.nv-faq__answer a{color:var(--nv-cobalt);font-weight:600}

.nv-faq__help{margin:36px 0 0;padding:24px;border-radius:12px;background:var(--nv-cobalt-soft);text-align:center}
.nv-faq__help p{margin:0 0 6px;color:var(--nv-ink)}
.nv-faq__help p:last-child{margin:0;color:var(--nv-muted)}

@media (max-width:575px){
  .nv-faq__item summary{padding:14px 16px;font-size:.96rem}
  .nv-faq__answer{padding:0 16px 16px}
}

/* ---------- Copia di cortesia della fattura ---------- */
.nv-copia__text{margin:0 0 16px;color:var(--nv-muted);line-height:1.6}
.nv-copia__done{margin:0;padding:12px 16px;border-radius:10px;background:#E4F3EA;color:var(--nv-bio);font-weight:600}

.nv-order__copia{margin:0}
.nv-order__asked{display:inline-flex;align-items:center;padding:8px 14px;border-radius:20px;background:#E4F3EA;color:var(--nv-bio);font-size:.85rem;font-weight:600;white-space:nowrap}

/* ---------- Pagina Chi siamo ---------- */
.nv-about{max-width:860px;margin:0 auto}
.nv-about p{line-height:1.7;color:var(--nv-muted);margin:0 0 14px}
.nv-about strong{color:var(--nv-ink)}
.nv-about a{color:var(--nv-cobalt);font-weight:600}

.nv-about__lead{margin:0 0 32px}
.nv-about__claim{font-size:1.35rem;line-height:1.5;font-weight:700;color:var(--nv-ink);margin:0 0 8px}
.nv-about__sub{font-size:.9rem;margin:0}

.nv-about__numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 40px}
.nv-about__num{background:var(--nv-cobalt-soft);border-radius:12px;padding:22px 18px;text-align:center}
.nv-about__value{display:block;font-size:1.9rem;font-weight:800;color:var(--nv-cobalt);letter-spacing:-.02em;line-height:1.1}
.nv-about__label{display:block;margin-top:6px;font-size:.85rem;color:var(--nv-muted)}

.nv-about__title{margin:36px 0 14px;font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:var(--nv-ink)}

.nv-about__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 0}
.nv-about__card{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:12px;padding:20px}
.nv-about__card p{margin:0;font-size:.94rem}
.nv-about__cardtitle{font-weight:700;color:var(--nv-ink);margin:0 0 6px!important}

.nv-about__cta{margin:40px 0 0;padding:26px;border-radius:12px;background:var(--nv-cobalt-soft)}
.nv-about__ctatitle{font-size:1.1rem;font-weight:800;color:var(--nv-ink);margin:0 0 8px}
.nv-about__cta p:last-child{margin:0}

@media (max-width:767px){
  .nv-about__numbers{grid-template-columns:minmax(0,1fr);gap:12px}
  .nv-about__num{display:flex;align-items:baseline;justify-content:space-between;text-align:left;padding:16px 20px}
  .nv-about__value{font-size:1.5rem}
  .nv-about__label{margin:0}
  .nv-about__grid{grid-template-columns:minmax(0,1fr)}
  .nv-about__claim{font-size:1.15rem}
}

/* ---------- Cronologia del corriere ---------- */
.nv-track--live{margin-top:20px;padding-top:20px}
.nv-track--live .nv-track__dot{background:var(--nv-line)}
.nv-track--live .nv-track__step.is-now .nv-track__dot{background:var(--nv-cobalt);box-shadow:0 0 0 4px var(--nv-cobalt-soft)}
.nv-track--live .nv-track__step.is-now .nv-track__name{color:var(--nv-cobalt)}

/* ---------- Stato spedizione nell'elenco e pagina di tracciamento ---------- */
.nv-order__track{display:inline-flex;align-items:center;gap:7px;margin-top:8px;padding:5px 12px;border-radius:18px;background:var(--nv-cobalt-soft);color:var(--nv-cobalt);font-size:.85rem;font-weight:700;text-decoration:none}
.nv-order__track:hover{background:var(--nv-cobalt);color:#fff}
.nv-order__state{display:flex;flex-direction:column;align-items:flex-start;gap:0}

.nv-traccia{max-width:560px;margin:0 auto;padding:16px 0 48px}
.nv-traccia__intro{color:var(--nv-muted);line-height:1.65;margin:0 0 22px}
.nv-traccia__intro strong{color:var(--nv-ink);letter-spacing:.04em}
.nv-traccia__form{display:flex;gap:10px;flex-wrap:wrap}
.nv-traccia__input{flex:1 1 220px;min-height:48px;padding:0 18px;border:2px solid var(--nv-line);border-radius:24px;background:var(--nv-bg);font-family:inherit;font-size:1rem;text-transform:uppercase;letter-spacing:.06em}
.nv-traccia__input:focus{border-color:var(--nv-cobalt);background:#fff;outline:none}
.nv-traccia__form .nv-btn{min-height:48px;padding:0 28px}
.nv-traccia__error{margin:0 0 18px;padding:14px 18px;border-radius:10px;background:#FBE9E8;color:#C8302A;line-height:1.55}
.nv-traccia__error a{color:#C8302A;font-weight:700}
.nv-traccia__note{margin:16px 0 0;color:var(--nv-muted);font-size:.9rem}

/* ==========================================================
   Nuvola – pagine legali (condizioni, privacy, spedizioni)
   Stesse proporzioni e colori di .nv-about.
   Il contenuto CMS va dentro <div class="nv-legal"> ... </div>
   ========================================================== */

.nv-legal{max-width:860px;margin:0 auto}
.nv-legal p{line-height:1.7;color:var(--nv-muted);margin:0 0 14px}
.nv-legal strong{color:var(--nv-ink)}
.nv-legal a{color:var(--nv-cobalt);font-weight:600}

/* --- intestazione --- */
.nv-legal__lead{margin:0 0 32px}
.nv-legal__claim{font-size:1.35rem;line-height:1.5;font-weight:700;color:var(--nv-ink);margin:0 0 8px}
.nv-legal__sub{font-size:.9rem;margin:0}

/* --- indice --- */
.nv-legal__index{background:var(--nv-cobalt-soft);border-radius:12px;padding:22px 26px;margin:0 0 40px}
.nv-legal__index-title{font-weight:800;color:var(--nv-ink);margin:0 0 12px!important;font-size:1rem}
.nv-legal__index ol{margin:0;padding-left:20px;columns:2;column-gap:32px}
.nv-legal__index li{margin:0 0 7px;line-height:1.45;break-inside:avoid}
.nv-legal__index a{color:var(--nv-ink);font-weight:600;text-decoration:none;font-size:.93rem}
.nv-legal__index a:hover{color:var(--nv-cobalt);text-decoration:underline}

/* --- articoli --- */
.nv-legal__title{margin:38px 0 14px;font-size:1.2rem;font-weight:800;letter-spacing:-.02em;color:var(--nv-ink);scroll-margin-top:90px}
.nv-legal__num{display:inline-block;margin-right:10px;padding:2px 10px;border-radius:20px;background:var(--nv-cobalt-soft);color:var(--nv-cobalt);font-size:.78rem;font-weight:700;letter-spacing:.04em;vertical-align:middle;white-space:nowrap}
.nv-legal__title + p{margin-top:0}

/* --- punti che il cliente deve vedere --- */
.nv-legal__note{margin:22px 0;padding:20px 24px;border-radius:12px;background:var(--nv-kraft-soft)}
.nv-legal__note p:last-child{margin:0}
.nv-legal__note-title{font-weight:800;color:var(--nv-ink);margin:0 0 8px!important}

/* --- elenchi di lettere (esclusioni) --- */
.nv-legal__list{margin:0 0 14px;padding-left:22px}
.nv-legal__list li{line-height:1.7;color:var(--nv-muted);margin:0 0 8px}

/* --- modulo di recesso --- */
.nv-legal__form{margin:40px 0 0;padding:26px;border:2px dashed var(--nv-line);border-radius:12px}
.nv-legal__form-title{font-size:1.1rem;font-weight:800;color:var(--nv-ink);margin:0 0 8px!important}
.nv-legal__form-fields p{margin:0 0 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem;color:var(--nv-ink)}

/* --- riga finale --- */
.nv-legal__updated{margin:36px 0 0;padding-top:16px;border-top:1px solid var(--nv-line);font-size:.87rem}

@media (max-width:760px){
  .nv-legal__index ol{columns:1}
  .nv-legal__claim{font-size:1.15rem}
  .nv-legal__title{font-size:1.08rem;margin-top:30px}
  .nv-legal__num{display:block;margin:0 0 6px}
  .nv-legal__form-fields p{font-size:.82rem}
}

/* ==========================================================
   Nuvola – Domande frequenti (pagina CMS)
   Il contenuto va dentro <div class="nv-faq"> ... </div>
   Le risposte sono visibili di partenza: se la fisarmonica
   JavaScript non parte, il cliente legge lo stesso.
   ========================================================== */

.nv-faq{max-width:820px;margin:0 auto}
.nv-faq__intro{color:var(--nv-muted);line-height:1.7;margin:0 0 30px;font-size:1.02rem}
.nv-faq__intro strong{color:var(--nv-ink);white-space:nowrap}
.nv-faq__intro a{color:var(--nv-cobalt);font-weight:600}

.nv-faq__group{margin:36px 0 14px;font-size:1.25rem;font-weight:800;letter-spacing:-.02em;color:var(--nv-ink)}
.nv-faq__group:first-of-type{margin-top:0}

.nv-faq__item{border:1px solid var(--nv-line);border-radius:12px;background:var(--nv-surface);margin:0 0 10px;overflow:hidden}
.nv-faq__q{margin:0;padding:16px 46px 16px 20px;font-weight:700;color:var(--nv-ink);line-height:1.5;cursor:pointer;position:relative}
.nv-faq__q::after{content:"";position:absolute;right:20px;top:50%;width:9px;height:9px;margin-top:-6px;border-right:2px solid var(--nv-cobalt);border-bottom:2px solid var(--nv-cobalt);transform:rotate(45deg);transition:transform .18s ease}
.nv-faq__item.is-open .nv-faq__q::after,.nv-faq__item[open] .nv-faq__q::after{transform:rotate(-135deg);margin-top:-2px}
.nv-faq__item:hover{border-color:var(--nv-cobalt)}

.nv-faq__answer{padding:0 20px 18px}
.nv-faq__answer p{margin:0 0 12px;color:var(--nv-muted);line-height:1.7;font-size:.96rem}
.nv-faq__answer p:last-child{margin:0}
.nv-faq__answer strong{color:var(--nv-ink)}
.nv-faq__answer a{color:var(--nv-cobalt);font-weight:600}

.nv-faq__help{margin:40px 0 0;padding:26px;border-radius:12px;background:var(--nv-cobalt-soft)}
.nv-faq__help p{margin:0 0 8px;color:var(--nv-muted);line-height:1.65}
.nv-faq__help p:last-child{margin:0}
.nv-faq__help strong{color:var(--nv-ink);font-size:1.08rem}
.nv-faq__help a{color:var(--nv-cobalt);font-weight:600}

@media (max-width:560px){
  .nv-faq__group{font-size:1.1rem;margin-top:28px}
  .nv-faq__q{padding:14px 40px 14px 16px;font-size:.98rem}
  .nv-faq__answer{padding:0 16px 16px}
}

/* --- Carrello: avviso dell'ordine minimo --- */
.nv-cart__min{margin:0 0 16px;padding:16px 18px;border-radius:12px;background:var(--nv-kraft-soft)}
.nv-cart__min p{margin:0;color:var(--nv-muted);line-height:1.6;font-size:.93rem}
.nv-cart__min strong{color:var(--nv-ink)}
.nv-cart__min-title{margin:0 0 6px!important;font-weight:800;color:var(--nv-ink);font-size:1rem}

/* --- Metodi di pagamento (pagina Pagamento sicuro) --- */
.nv-pay{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 18px}
.nv-pay__icon{height:30px;width:auto;max-width:56px;padding:5px 8px;border:1px solid var(--nv-line);border-radius:8px;background:#fff;box-sizing:content-box}
.nv-legal__title + .nv-pay{margin-top:12px}
@media (max-width:560px){.nv-pay__icon{height:26px;padding:4px 6px}}

/* ============================================================
   Blog
   ============================================================ */
.nv-blog{padding:34px 0 64px}
.nv-blog__head{max-width:760px;margin:0 0 30px}
.nv-blog__intro{margin:10px 0 0;font-size:1.05rem;line-height:1.6;color:var(--nv-muted)}
.nv-blog__empty{color:var(--nv-muted)}
.nv-blog__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.nv-post-card{min-width:0;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.nv-post-card:hover{border-color:var(--nv-cobalt);box-shadow:0 18px 40px -24px rgba(20,33,61,.35);transform:translateY(-3px)}
.nv-post-card__link{display:block;color:inherit;text-decoration:none}
.nv-post-card__img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;background:var(--nv-bg)}
.nv-post-card__body{padding:18px 20px 22px}
.nv-post-card__meta{margin:0 0 8px;font-size:.8rem;color:var(--nv-muted);display:flex;gap:6px;flex-wrap:wrap}
.nv-post-card__title{margin:0 0 8px;font-size:1.15rem;line-height:1.3;color:var(--nv-ink)}
.nv-post-card__sum{margin:0 0 12px;font-size:.92rem;line-height:1.55;color:var(--nv-muted)}
.nv-post-card__more{font-size:.9rem;font-weight:700;color:var(--nv-cobalt)}

.nv-blog__pager{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:34px}
.nv-blog__pagelink{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border:1px solid var(--nv-line);border-radius:22px;background:var(--nv-surface);color:var(--nv-ink);font-weight:600;text-decoration:none}
.nv-blog__pagelink:hover{border-color:var(--nv-cobalt);color:var(--nv-ink);text-decoration:none}
.nv-blog__pagenum{font-size:.9rem;color:var(--nv-muted)}

/* Articolo: colonna stretta, si legge meglio */
.nv-article{max-width:820px;margin:0 auto;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:36px 40px 44px}
.nv-article__back{margin:0 0 14px;font-size:.9rem}
.nv-article__back a{color:var(--nv-muted);text-decoration:none}
.nv-article__back a:hover{color:var(--nv-cobalt)}
.nv-article__meta{margin:10px 0 0;font-size:.85rem;color:var(--nv-muted);display:flex;gap:6px;flex-wrap:wrap}
.nv-article__sum{margin:16px 0 0;font-size:1.1rem;line-height:1.6;color:#3C4664}
.nv-article__img{display:block;width:100%;height:auto;margin:26px 0;border-radius:var(--nv-radius);aspect-ratio:1200/630;object-fit:cover;background:var(--nv-bg)}
.nv-article__body{font-size:1.05rem;line-height:1.75;color:var(--nv-ink)}
.nv-article__body p,.nv-article__body li{color:var(--nv-ink)}
.nv-article__body h2{margin:34px 0 12px;font-size:1.45rem;line-height:1.25}
.nv-article__body h3{margin:26px 0 10px;font-size:1.15rem;line-height:1.3}
.nv-article__body p{margin:0 0 16px}
.nv-article__body ul,.nv-article__body ol{margin:0 0 18px;padding-left:22px}
.nv-article__body li{margin:0 0 8px}
.nv-article__body a{color:var(--nv-cobalt);text-decoration:underline}
.nv-article__body img{max-width:100%;height:auto;border-radius:12px;margin:8px 0}
.nv-article__body blockquote{margin:20px 0;padding:14px 18px;border-left:3px solid var(--nv-cobalt);background:var(--nv-cobalt-soft);border-radius:0 12px 12px 0}
.nv-article__body table{width:100%;border-collapse:collapse;margin:0 0 20px;display:block;overflow-x:auto}
.nv-article__body th,.nv-article__body td{padding:10px 12px;border-bottom:1px solid var(--nv-line);text-align:left}
.nv-article__body th{font-weight:700;background:var(--nv-bg)}

.nv-article__products{max-width:1100px;margin:36px auto 0}
.nv-article__products .nv-h2{margin:0 0 18px}

@media (max-width:991px){
  .nv-article{padding:24px 20px 30px}
  .nv-blog{padding:24px 0 48px}
  .nv-blog__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .nv-article__body{font-size:1rem}
  .nv-article__body h2{font-size:1.3rem;margin-top:28px}
}
@media (max-width:640px){
  .nv-blog__grid{grid-template-columns:1fr}
  .nv-article__img{margin:20px 0}
}

/* Bricolage Grotesque servito dal nostro dominio (prima veniva da Google) */
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/bricolage-3.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/bricolage-2.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Bricolage Grotesque";font-style:normal;font-weight:400 800;font-display:swap;src:url(../fonts/bricolage-1.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

/* ============================================================
   Sticker sulle card
   ============================================================ */
.nv-stk{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:8px 0 0;padding:0}
.nv-stk__item{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:.76rem;font-weight:700;line-height:1.35;white-space:nowrap;border:1px solid transparent}
.nv-stk__icon{width:13px;height:13px;flex:none}
.nv-stk__item--grey{background:var(--nv-bg);border-color:var(--nv-line);color:var(--nv-muted)}
.nv-stk__item--cobalt{background:var(--nv-cobalt-soft);border-color:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-stk__item--green{background:#E9F4EE;border-color:#D4E9DC;color:#2F7F52}
.nv-stk__item--amber{background:#F7F0E4;border-color:#EFE2CB;color:#8A6D3B}
.nv-lcard__buy .nv-stk,.nv-buy .nv-stk{flex-basis:100%}

/* ============================================================
   Collegamenti ad altre categorie (reparti)
   ============================================================ */
.nv-reparti{margin:22px 0 4px;padding-top:18px;border-top:1px solid var(--nv-line)}
.nv-reparti__title{margin:0 0 14px;font-size:1.15rem;font-weight:700;line-height:1.3;color:var(--nv-ink)}
.nv-reparti__list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.nv-reparti__item{margin:0}
.nv-reparti__link{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border:1px solid var(--nv-line);border-radius:22px;background:var(--nv-surface);color:var(--nv-ink);font-weight:600;font-size:.92rem;line-height:1.2;text-decoration:none;transition:border-color .15s ease,background .15s ease}
.nv-reparti__link:hover,.nv-reparti__link:focus{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft);color:var(--nv-ink);text-decoration:none}
.nv-reparti__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:10px;background:var(--nv-bg);color:var(--nv-muted);font-size:.75rem;font-weight:700}
.nv-reparti__link:hover .nv-reparti__count{background:#fff}
@media (max-width:640px){
  .nv-reparti{margin-bottom:20px}
  .nv-reparti__link{padding:8px 13px;font-size:.87rem}
}

/* ============================================================
   Menu principale (modulo nuvola)
   ============================================================ */
.nv-menu{position:relative}
.nv-menu__list{display:flex;flex-wrap:wrap;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.nv-menu__item{position:relative;margin:0}
.nv-menu__link{display:inline-flex;align-items:center;gap:6px;padding:12px 14px;color:var(--nv-ink);font-weight:600;font-size:.95rem;line-height:1.2;text-decoration:none;border-radius:10px}
.nv-menu__link:hover,.nv-menu__item:focus-within .nv-menu__link{background:var(--nv-cobalt-soft);color:var(--nv-cobalt);text-decoration:none}
.nv-menu__caret{flex:none;transition:transform .15s ease}
.nv-menu__item:hover .nv-menu__caret{transform:rotate(180deg)}

/* Pannello a colonne */
.nv-menu__panel{position:absolute;top:100%;left:0;z-index:60;padding-top:10px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .12s ease,transform .12s ease,visibility .12s .18s}
/* La zona di tolleranza: uno strato invisibile fra la voce e il pannello, così
   il mouse può attraversare in diagonale senza che il pannello si chiuda. */
.nv-menu__panel::before{content:"";position:absolute;top:0;left:-20px;right:-20px;height:14px}
.nv-menu__item:hover .nv-menu__panel,.nv-menu__item:focus-within .nv-menu__panel{opacity:1;visibility:visible;transform:translateY(0);transition-delay:0s}
/* Le colonne si adattano al numero di reparti invece di essere sempre quattro:
   con due reparti il pannello è stretto, con otto arriva a quattro colonne. */
.nv-menu__panel-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,max-content));justify-content:start;gap:20px 28px;padding:22px 26px;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);box-shadow:0 24px 60px -30px rgba(20,33,61,.45);max-width:min(1000px,92vw)}
/* Solo le ultime due voci si aprono verso sinistra: sono quelle vicine al
   bordo destro. Le altre restano ancorate alla propria voce. */
.nv-menu__item:nth-last-child(-n+2) .nv-menu__panel{left:auto;right:0}
/* Se nel pannello nessuna voce ha sottocategorie (per esempio Professionisti),
   le voci si incolonnano invece di sparpagliarsi in una griglia. */
.nv-menu__panel-in:not(:has(.nv-menu__sublist)){grid-template-columns:minmax(220px,max-content);gap:2px}
.nv-menu__panel-in:not(:has(.nv-menu__sublist)) .nv-menu__coltitle{font-weight:600;font-size:.95rem;padding:9px 10px;margin-left:-10px}
/* Rete di sicurezza: il pannello non esce mai dal bordo sinistro */
.nv-menu__panel{max-width:calc(100vw - 32px)}
.nv-menu__panel-in{margin-left:0}
.nv-menu__col{min-width:0}
.nv-menu__coltitle{display:block;margin:0 0 8px;font-weight:700;font-size:.95rem;color:var(--nv-ink);text-decoration:none}
.nv-menu__coltitle:hover{color:var(--nv-cobalt);text-decoration:none}
.nv-menu__sublist{list-style:none;margin:0;padding:0}
.nv-menu__sublist li{margin:0}
.nv-menu__sublist a{display:block;padding:6px 8px;margin-left:-8px;border-radius:8px;font-size:.88rem;line-height:1.35;color:var(--nv-muted);text-decoration:none}
.nv-menu__sublist a:hover{background:var(--nv-cobalt-soft);color:var(--nv-cobalt);text-decoration:none}
.nv-menu__coltitle{padding:4px 8px 6px;margin-left:-8px;border-radius:8px}
.nv-menu__coltitle:hover{background:var(--nv-cobalt-soft)}

/* Da telefono il pannello si apre in verticale, senza passaggio del mouse */
@media (max-width:991px){
  .nv-menu__list{flex-direction:column;align-items:stretch;gap:0}
  .nv-menu__link{padding:14px 4px;font-size:1rem;border-radius:0;border-bottom:1px solid var(--nv-line);justify-content:space-between}
  .nv-menu__panel{position:static;min-width:0;padding:0;opacity:1;visibility:visible;transform:none;display:none}
  .nv-menu__item.is-open .nv-menu__panel{display:block}
  .nv-menu__panel-in{grid-template-columns:1fr;gap:14px;padding:12px 4px 16px;border:0;border-radius:0;box-shadow:none;background:none}
  .nv-menu__sublist a{padding:4px 0}
}

/* ============================================================
   Pagine legali dentro la finestra del checkout e della registrazione
   ============================================================ */
/* Il modulo apre le pagine legali dentro una finestra: qui la allarghiamo e
   le togliamo i limiti che eredita dalla pagina sottostante. */

/* Larghezza: quella di serie di Bootstrap è 500px, troppo poco per un testo
   legale. Serve !important perché Bootstrap la imposta dentro una media query. */
.modal-dialog{max-width:min(920px,94vw)!important}
@media (min-width:576px){.modal-dialog{max-width:min(920px,94vw)!important}}
.modal-dialog-centered .modal-content{max-height:90vh}
.modal-body{padding:22px 28px;overflow-x:hidden}

/* Il titolo lo mette già l'intestazione della finestra, e il piè di pagina
   della pagina caricata non serve. */
.modal-body .page-header,
.modal-body .page-footer{display:none}

/* Il contenuto non deve ereditare i limiti della pagina che c'è sotto:
   #content della registrazione, per esempio, è centrato e stretto. */
.modal-body #content,
.modal-body #main,
.modal-body .page-content{max-width:none!important;width:auto!important;padding:0!important;margin:0!important;background:none!important;border:0;box-shadow:none}

/* Il testo legale: allineato a sinistra, senza sillabazione (a 920 pixel non
   serve spezzare le parole) e senza il limite di 860px della pagina normale. */
.modal-body .nv-legal{max-width:none;margin-left:0;margin-right:0}
.modal-body .nv-legal,
.modal-body .nv-legal p,
.modal-body .nv-legal li{text-align:left;hyphens:manual;-webkit-hyphens:manual;overflow-wrap:break-word}
.modal-body .nv-legal__index li{break-inside:avoid}
.modal-body .nv-legal__form-fields p{white-space:normal;word-break:break-word}
.modal-body table{display:block;overflow-x:auto;max-width:100%}
.modal-body img{max-width:100%;height:auto}

@media (max-width:640px){
  .modal-body{padding:16px 18px}
  .modal-body .nv-legal__index ol{columns:1;-webkit-columns:1}
}

/* ============================================================
   Attesa verso il checkout
   ============================================================ */
/* Compare solo nel tragitto verso carrello, accesso e checkout: dentro il
   modulo del checkout c'è già la sua animazione, e qui la barra è sparita
   perché la pagina è cambiata. */
.nv-wait{position:fixed;top:0;left:0;right:0;z-index:9999;pointer-events:none}
.nv-wait__bar{display:block;height:3px;width:100%;background:var(--nv-cobalt-soft);overflow:hidden;position:relative}
.nv-wait__bar::after{content:"";position:absolute;top:0;left:0;height:100%;width:40%;background:var(--nv-cobalt);animation:nv-wait-slide 1.1s ease-in-out infinite}
.nv-wait__text{display:block;margin:10px auto 0;width:max-content;max-width:90vw;padding:9px 18px;border-radius:999px;background:var(--nv-surface);border:1px solid var(--nv-line);box-shadow:0 12px 30px -18px rgba(20,33,61,.5);font-size:.88rem;font-weight:600;color:var(--nv-ink)}
@keyframes nv-wait-slide{
  0%{left:-40%}
  100%{left:100%}
}
@media (prefers-reduced-motion:reduce){
  .nv-wait__bar::after{animation:none;width:100%;opacity:.6}
}

/* ===== Testi SEO di categoria (additional_description) — 24/09/2026 ===== */
.card:has(> .category-additional-description .nv-seo) { border: 0; box-shadow: none; background: transparent; }
.category-additional-description:has(.nv-seo) { padding: 0; }
.nv-seo { max-width: 860px; margin: 2.5rem auto 1rem; line-height: 1.6; }
.nv-seo h2 { font-size: 1.2rem; line-height: 1.3; margin: 2.25rem 0 .9rem; }
.nv-seo > h2:first-child { margin-top: 0; }
.nv-seo__uso { display: grid; grid-template-columns: max-content 1fr; gap: .55rem 1.75rem; margin: 0; }
.nv-seo__uso dt { font-weight: 600; }
.nv-seo__uso dd { margin: 0; }
.nv-seo__nota { margin: 1.25rem 0 0; padding-left: .9rem; font-size: .92rem; border-left: 3px solid color-mix(in srgb, currentColor 22%, transparent); }
.nv-seo__misure { border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent); }
.nv-seo__misure:last-of-type { border-bottom: 1px solid color-mix(in srgb, currentColor 14%, transparent); }
.nv-seo__misure > summary { display: flex; align-items: center; gap: 1rem; padding: .95rem .2rem; font-weight: 600; cursor: pointer; list-style: none; }
.nv-seo__misure > summary::-webkit-details-marker { display: none; }
.nv-seo__misure > summary span { margin-left: auto; font-weight: 400; font-size: .85rem; opacity: .6; }
.nv-seo__misure > summary::after { content: ""; flex: none; width: .5rem; height: .5rem; margin: 0 .35rem .2rem 0; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s ease; }
.nv-seo__misure[open] > summary::after { transform: rotate(-135deg); margin-bottom: -.2rem; }
.nv-seo__misure > summary:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.nv-seo__misure > p { font-size: .88rem; margin: 0 0 1rem; opacity: .75; }
.nv-seo__scroll { overflow-x: auto; margin: 0 0 1rem; -webkit-overflow-scrolling: touch; }
.nv-seo table { width: 100%; border-collapse: collapse; font-size: .9rem; font-variant-numeric: tabular-nums; }
.nv-seo th { text-align: left; font-weight: 600; font-size: .8rem; padding: .55rem .75rem; background: color-mix(in srgb, currentColor 6%, transparent); }
.nv-seo td { padding: .5rem .75rem; border-bottom: 1px solid color-mix(in srgb, currentColor 8%, transparent); white-space: nowrap; }
.nv-seo td:first-child { font-weight: 600; }
.nv-seo th:last-child, .nv-seo td:last-child { text-align: right; }
.nv-seo tbody tr:last-child td { border-bottom: 0; }
@media (max-width: 575px) {
  .nv-seo__uso { grid-template-columns: 1fr; gap: .1rem; }
  .nv-seo__uso dd { margin-bottom: .7rem; }
  .nv-seo th, .nv-seo td { padding: .45rem .55rem; }
}
@media (prefers-reduced-motion: reduce) { .nv-seo__misure > summary::after { transition: none; } }

/* Famiglia: colori e misure disponibili solo in altre combinazioni (nuvola 1.28.3) */
.nv-swatches li { text-align: center; }
.nv-swatch.is-other { opacity: .5; }
.nv-swatch.is-other:hover, .nv-swatch.is-other:focus-visible { opacity: 1; }
.nv-swatch__note { display: block; max-width: 72px; margin: .2rem auto 0; font-size: .68rem; line-height: 1.15; opacity: .75; }
.nv-pill.is-other { opacity: .6; border-style: dashed; }
.nv-pill.is-other:hover, .nv-pill.is-other:focus-visible { opacity: 1; }
.nv-pill small { display: block; font-size: .66rem; line-height: 1.1; opacity: .8; }
.nv-family__hint { margin: .45rem 0 0; font-size: .78rem; opacity: .7; }

/* Famiglia: oltre 8 opzioni, le altre si aprono con "altre opzioni" */
.nv-swatches li.is-extra, .nv-pills li.is-extra { display: none; }
.nv-swatches.is-open li.is-extra, .nv-pills.is-open li.is-extra { display: revert; }
.nv-more { display: flex; align-items: center; }
.nv-more__btn { padding: .35rem .7rem; border: 1px dashed currentColor; border-radius: 999px; background: none; color: inherit; font: inherit; font-size: .8rem; cursor: pointer; opacity: .8; }
.nv-more__btn:hover, .nv-more__btn:focus-visible { opacity: 1; }

/* Famiglia: tile "+N" e riga "in altre misure / in altri colori" */
.nv-swatch--more, .nv-pill--more { display: inline-flex; align-items: center; justify-content: center; background: none; font: inherit; font-weight: 600; color: inherit; cursor: pointer; }
.nv-swatch--more { width: 64px; height: 64px; }
.nv-family__more { margin-top: .6rem; }
.nv-family__more > summary { display: inline-flex; align-items: center; gap: .4rem; font-size: .85rem; cursor: pointer; list-style: none; }
.nv-family__more > summary::-webkit-details-marker { display: none; }
.nv-family__more > summary::before { content: ""; width: .4rem; height: .4rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg); transition: transform .15s ease; }
.nv-family__more[open] > summary::before { transform: rotate(45deg); }
.nv-family__more > summary:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.nv-family__more > ul { margin-top: .6rem; }
@media (prefers-reduced-motion: reduce) { .nv-family__more > summary::before { transition: none; } }

/* Famiglia: tile "+N" e riga "in altre misure / in altri colori" */
.nv-swatch--more, .nv-pill--more { display: inline-flex; align-items: center; justify-content: center; background: none; font: inherit; font-weight: 600; color: inherit; cursor: pointer; }
.nv-swatch--more { width: 64px; height: 64px; }
.nv-family__more { margin-top: .6rem; }
.nv-family__more > summary { display: inline-flex; align-items: center; gap: .4rem; font-size: .85rem; cursor: pointer; list-style: none; }
.nv-family__more > summary::-webkit-details-marker { display: none; }
.nv-family__more > summary::before { content: ""; width: .4rem; height: .4rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg); transition: transform .15s ease; }
.nv-family__more[open] > summary::before { transform: rotate(45deg); }
.nv-family__more > summary:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.nv-family__more > ul { margin-top: .6rem; }
@media (prefers-reduced-motion: reduce) { .nv-family__more > summary::before { transition: none; } }

/* Famiglia: correzioni (varianti nascoste fino al clic, pulsante "altre misure/colori") */
.nv-swatches > li.is-extra, .nv-pills > li.is-extra { display: none !important; }
.nv-swatches.is-open > li.is-extra, .nv-pills.is-open > li.is-extra { display: revert !important; }
.nv-family__more { margin-top: 1rem; }
.nv-family__more > summary {
  display: inline-flex; align-items: center; gap: .55rem;
  padding: .5rem .9rem; border: 1px solid color-mix(in srgb, currentColor 25%, transparent); border-radius: 999px;
  background: color-mix(in srgb, currentColor 5%, transparent);
  font-size: .85rem; font-weight: 600; line-height: 1.2; cursor: pointer; user-select: none;
  transition: background .15s ease, border-color .15s ease;
}
.nv-family__more > summary:hover { background: color-mix(in srgb, currentColor 10%, transparent); border-color: color-mix(in srgb, currentColor 45%, transparent); }
.nv-family__more > summary::before { margin: 0 .1rem .15rem 0; }
.nv-family__more[open] > summary { background: color-mix(in srgb, currentColor 10%, transparent); }
.nv-family__more[open] > summary::before { margin: 0 .1rem -.1rem 0; }
.nv-family__more > ul { margin-top: .8rem; }
@media (prefers-reduced-motion: reduce) { .nv-family__more > summary { transition: none; } }

/* ============================================================
   Finestra delle foto nella scheda prodotto (#product-modal)
   ============================================================ */
/* Le regole generiche .modal-dialog / .modal-body pensate per le pagine
   legali colpivano anche questa finestra, e si sommavano al margin-left:-30%
   di Classic: la finestra usciva a sinistra e si impaginava male.
   Qui la rifacciamo da capo, limitata a #product-modal. */
#product-modal .modal-dialog{max-width:min(1100px,94vw)!important;width:auto;margin:3vh auto}
#product-modal .modal-content{background:#fff;border:0;border-radius:var(--nv-radius);padding:0;box-shadow:0 20px 60px rgba(20,33,61,.25);overflow:hidden;max-height:94vh}
#product-modal .modal-content .modal-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;margin:0;padding:20px;overflow:hidden;max-height:94vh}

/* Foto grande: sempre dentro lo schermo */
#product-modal .modal-content .modal-body figure{margin:0;min-width:0}
#product-modal .modal-content .modal-body figure picture{display:block}
#product-modal .modal-content .modal-body .product-cover-modal{display:block;width:100%;height:auto;max-height:calc(94vh - 40px);object-fit:contain;background:#fff}

/* La descrizione breve è già nella pagina: nella finestra non serve */
#product-modal .modal-content .modal-body .image-caption{display:none}

/* Miniature: colonna a destra che scorre da sola */
#product-modal .modal-content .modal-body .thumbnails{position:static;min-height:0;align-self:stretch}
#product-modal .modal-content .modal-body .mask{position:static;margin:0;max-height:calc(94vh - 40px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;z-index:auto}
#product-modal .modal-content .modal-body .product-images{display:flex;flex-direction:column;gap:10px;margin:0;padding:2px;list-style:none}
#product-modal .modal-content .modal-body .product-images .thumb-container{flex:0 0 auto;margin:0}
#product-modal .modal-content .modal-body .product-images img{display:block;width:84px;height:84px;max-width:none;object-fit:contain;background:#fff;border:2px solid var(--nv-line);border-radius:10px;margin:0;cursor:pointer}
#product-modal .modal-content .modal-body .product-images img:hover,
#product-modal .modal-content .modal-body .product-images img.selected{border-color:var(--nv-cobalt)}
/* Le frecce di Classic non servono: la colonna scorre con rotella e dita */
#product-modal .modal-content .modal-body .arrows{display:none}

/* Telefono: foto sopra, miniature in riga sotto */
@media (max-width:767px){
  #product-modal .modal-dialog{max-width:96vw!important;margin:2vh auto}
  #product-modal .modal-content .modal-body{grid-template-columns:1fr;gap:12px;padding:12px}
  #product-modal .modal-content .modal-body .product-cover-modal{max-height:calc(94vh - 130px)}
  #product-modal .modal-content .modal-body .mask{max-height:none;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
  #product-modal .modal-content .modal-body .product-images{flex-direction:row}
  #product-modal .modal-content .modal-body .product-images img{width:64px;height:64px}
}

/* Finestra delle foto: pulsante di chiusura e colonna miniature più in basso
   per lasciargli spazio */
#product-modal .modal-content{position:relative}
#product-modal .nv-pmodal__close{position:absolute;top:12px;right:12px;z-index:3;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--nv-line);border-radius:50%;background:#fff;color:var(--nv-ink);cursor:pointer;transition:background .15s ease,border-color .15s ease}
#product-modal .nv-pmodal__close:hover{background:var(--nv-cobalt-soft);border-color:var(--nv-cobalt)}
#product-modal .nv-pmodal__close:focus-visible{outline:2px solid var(--nv-cobalt);outline-offset:2px}
#product-modal .modal-content .modal-body .thumbnails{padding-top:44px}
#product-modal .modal-content .modal-body .mask{max-height:calc(94vh - 84px)}
#product-modal .modal-content .modal-body figure{cursor:default}

/* Telefono: niente finestra, la foto resta ferma e si zooma col pizzico */
@media (max-width:767px){
  .nv-product__gallery .product-cover .layer{display:none!important}
  .nv-product__gallery .product-cover,
  .nv-product__gallery .product-cover img{cursor:default}
}

/* Immagine nella descrizione estesa: non più cliccabile */
.nv-desc__img:hover{border-color:var(--nv-line)}

/* ============================================================
   Programma fedeltà (modulo nuvola 1.29.0)
   Le pagine del programma hanno il loro foglio nel modulo (fedelta.css);
   qui le parti che compaiono nel resto del sito.
   ============================================================ */
/* La foglia del logo: il simbolo dei punti, ovunque compaiano */
.nv-leaf{display:inline-block;flex:none;width:1.1em;height:1.1em;vertical-align:-.18em;background:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%234E9F14%22 d=%22M2.6 21.4C2.4 12.4 7.6 5.6 21.6 2.6c-1.3 5.2-1.6 11.4-6.4 14.8-3.2 2.3-7.4 2-10.4 4.4z%22/%3E%3Cpath fill=%22none%22 stroke=%22%23fff%22 stroke-width=%221.35%22 stroke-linecap=%22round%22 d=%22M3.6 20.4L16.4 8.2M7.4 16.8V12.2M7.4 16.8l4.6-.2M10.6 13.8V9.4M10.6 13.8l4.4-.4M13.6 11V7.6%22/%3E%3C/svg%3E") center/contain no-repeat}
.nv-leaf--lg{width:28px;height:28px}
.nv-leaf--tool{width:24px;height:24px}

/* Header: saldo punti fra la ricerca e l'account */
.nv-tool__points{display:none}
@media (max-width:991px){
  .nv-tool--points{padding-right:8px}
  .nv-tool__points{display:inline-grid;position:absolute;top:0;right:-2px;min-width:18px;height:18px;padding:0 5px;font-size:.68rem}
}

/* Scheda prodotto: punti di una confezione */
.nv-price__points{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 0 0;color:var(--nv-muted);font-size:.9rem}
.nv-price__points strong{color:var(--nv-ink)}
.nv-price__points a{color:var(--nv-cobalt);font-weight:600;text-decoration:underline}

/* Carrello (OnePageCheckout) */
.nv-cartpts{margin:0 0 14px;padding:12px 16px;border-radius:12px;background:var(--nv-cobalt-soft);color:var(--nv-ink);font-size:.92rem;line-height:1.5}
.nv-cartpts p{margin:0}
.nv-cartpts p + p{margin-top:8px}
.nv-cartpts__line{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px}
.nv-cartpts a{color:var(--nv-cobalt);font-weight:600}
.nv-cartpts__more{margin-left:auto;font-size:.85rem}
.nv-cartpts code{padding:1px 6px;border-radius:5px;background:#fff;color:var(--nv-ink);font-weight:700;user-select:all}

/* Conferma d'ordine */
.nv-confpts{margin:18px 0;padding:18px 20px;border-radius:var(--nv-radius);background:var(--nv-cobalt-soft);color:var(--nv-ink);line-height:1.6}
.nv-confpts p{margin:0 0 8px}
.nv-confpts p:last-child{margin:0}
.nv-confpts__title{font-size:1.05rem}
.nv-confpts a:not(.nv-btn){color:var(--nv-cobalt);font-weight:600}
.nv-confpts .nv-btn{min-height:42px;margin-right:12px}

/* ============================================================
   Header da telefono: logo su una riga sua, sotto menu e strumenti
   riga 1: logo, centrato
   riga 2: ☰ MENU a sinistra — punti, account, riordina, carrello a destra
   riga 3: ricerca
   ============================================================ */
.nv-burger__label{display:none}
@media (max-width:991px){
  .nv-header__in{grid-template-columns:auto 1fr;grid-template-areas:none;gap:8px 12px;padding-top:10px;padding-bottom:0}
  .nv-logo{grid-area:logo;justify-self:center;padding:2px 0 6px}
  .nv-logo img{height:40px;max-width:100%}
  .nv-burger{grid-area:burger;display:flex;align-items:center;gap:8px;justify-self:start;margin-left:-6px}
  .nv-burger__label{display:inline;font-size:.9rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
  .nv-tools{grid-area:tools;justify-self:end;gap:2px}
  .nv-tool{padding:8px 9px}
  .nv-tool--desk{display:flex}
  /* Posizioni esplicite: prima grid-column:auto annullava l'area della ricerca */
  .nv-logo{grid-area:auto;grid-column:1 / -1;grid-row:1}
  .nv-burger{grid-area:auto;grid-column:1;grid-row:2}
  .nv-tools{grid-area:auto;grid-column:2;grid-row:2}
  .nv-search{grid-area:auto;grid-column:1 / -1;grid-row:3;margin-bottom:12px}

  /* Ricerca a tutta larghezza e un po' più di respiro fra le righe */
  .nv-header__in{row-gap:14px;padding-top:16px}
  .nv-logo{padding:0}
  .nv-search{justify-self:stretch;width:100%;margin:2px 0 16px}
  .nv-search > *,.nv-search form,.nv-search .search-widget,.nv-search [class*="search"]:not(button):not(input):not(i):not(span):not(svg):not(a){width:100%;max-width:none}
  .nv-search input[type="text"],.nv-search input[type="search"]{width:100%}
}
@media (max-width:374px){
  .nv-logo img{height:34px}
  .nv-burger__label{font-size:.8rem}
  .nv-tool{padding:8px 6px}
}

/* ============================================================
   Menu da telefono: apertura e chiusura animate (con nuvola.js)
   ============================================================ */
.nv-drawer__overlay{opacity:0;transition:opacity .28s ease}
.nv-drawer__panel{transform:translateX(-102%);transition:transform .28s cubic-bezier(.22,.8,.25,1);box-shadow:8px 0 32px rgba(20,33,61,.18);will-change:transform}
.nv-drawer.is-open .nv-drawer__overlay{opacity:1}
.nv-drawer.is-open .nv-drawer__panel{transform:none}
@media (prefers-reduced-motion:reduce){
  .nv-drawer__overlay,.nv-drawer__panel{transition:none}
}

/* ============================================================
   Home: fascia del programma fedeltà (dopo i tipi di locale)
   ============================================================ */
.nv-loyal{display:grid;grid-template-columns:auto minmax(0,1.4fr) minmax(0,1fr) auto;gap:20px 28px;align-items:center;padding:26px 30px;border:1px solid #D3E8C3;border-radius:var(--nv-radius);background:#EEF6E8}
.nv-loyal-leaf{width:64px;height:64px}
.nv-loyal-main .nv-h2{margin:0 0 6px}
.nv-loyal-main p{margin:0;color:var(--nv-muted);line-height:1.6}
.nv-loyal-main p strong{color:var(--nv-ink)}
.nv-loyal .nv-loyal-kicker{margin:0 0 4px;color:#3B6E12;font-size:.85rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.nv-loyal-list{margin:0;padding:0;list-style:none}
.nv-loyal-list li{position:relative;margin:0 0 6px;padding-left:24px;color:var(--nv-ink);font-weight:600;font-size:.93rem}
.nv-loyal-list li:last-child{margin:0}
.nv-loyal-list li::before{content:"";position:absolute;left:0;top:.1em;width:16px;height:16px;border-radius:50%;background:#4E9F14 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.2l2.6 2.6L12 5.4' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.nv-loyal-cta .nv-btn{white-space:nowrap}
@media (max-width:991px){
  .nv-loyal{grid-template-columns:auto 1fr;padding:22px}
  .nv-loyal-leaf{width:48px;height:48px;align-self:start}
  .nv-loyal-list,.nv-loyal-cta{grid-column:1 / -1}
  .nv-loyal-list{display:flex;flex-wrap:wrap;gap:8px 18px}
  .nv-loyal-list li{margin:0}
  .nv-loyal-cta .nv-btn{width:100%;justify-content:center}
}

/* Menu da telefono: "Professionisti" è già in cima ("Per la tua attività"),
   quindi nella lista dei reparti non la ripetiamo. Solo nel cassetto: su desktop resta. */
.nv-drawer__menu .nv-menu__item--professionisti{display:none}

/* ============================================================
   Menu da telefono, rifatto (cassetto)
   - testata fissa in alto con la X sempre a portata
   - "Per la tua attività" a riquadri, due per riga
   - reparti a fisarmonica: righe alte, freccia in un cerchio,
     pannello che si apre con animazione dentro un riquadro colorato
     con il bordo blu a sinistra (si vede dove inizia e dove finisce),
     riga del reparto aperto che resta in vista mentre scorri
   - niente evidenziazione mentre si scorre (solo con il mouse vero)
   ============================================================ */
.nv-drawer{--nv-dh:60px}
.nv-drawer *{-webkit-tap-highlight-color:transparent}
.nv-drawer__panel{padding:0 18px 40px;overscroll-behavior:contain;background:var(--nv-surface)}

/* testata */
.nv-drawer__head{position:sticky;top:0;z-index:5;height:var(--nv-dh);margin:0 -18px 6px;padding:0 10px 0 18px;background:var(--nv-surface);border-bottom:1px solid var(--nv-line)}
.nv-drawer__head strong{font-size:1.05rem;font-weight:800;color:var(--nv-ink)}
.nv-drawer__close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:50%;background:var(--nv-bg)}
.nv-drawer__close:active{background:var(--nv-cobalt-soft)}

/* titoletti */
.nv-drawer__title{margin:20px 0 10px;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--nv-muted)}

/* Per la tua attività: riquadri */
.nv-drawer__list:not(.nv-drawer__list--account){display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nv-drawer__list:not(.nv-drawer__list--account) a{display:flex;align-items:center;min-height:56px;height:100%;padding:10px 12px;border:1px solid var(--nv-line);border-radius:12px;background:var(--nv-bg);font-size:.9rem;font-weight:700;line-height:1.25;color:var(--nv-ink)}
.nv-drawer__list:not(.nv-drawer__list--account) a:active{background:var(--nv-cobalt-soft);border-color:var(--nv-cobalt)}

/* Reparti: righe */
.nv-drawer .nv-menu__list{gap:0}
.nv-drawer .nv-menu__item{border-bottom:1px solid var(--nv-line)}
.nv-drawer .nv-menu__link{min-height:54px;padding:6px 4px;border:0;border-radius:0;font-size:1rem;font-weight:700;background:none;color:var(--nv-ink)}
.nv-drawer .nv-menu__link:hover,
.nv-drawer .nv-menu__item:focus-within .nv-menu__link{background:none;color:var(--nv-ink)}
.nv-drawer .nv-menu__link:active{color:var(--nv-cobalt)}
.nv-drawer .nv-menu__caret{width:30px;height:30px;padding:8px;border-radius:50%;background:var(--nv-bg);transition:transform .25s ease,background .25s ease}
.nv-drawer .nv-menu__item:hover .nv-menu__caret{transform:none}

/* reparto aperto: la riga resta in vista mentre scorri il suo pannello */
.nv-drawer .nv-menu__item.is-open{border-bottom-color:transparent}
.nv-drawer .nv-menu__item.is-open > .nv-menu__link{position:sticky;top:var(--nv-dh);z-index:4;background:var(--nv-surface);color:var(--nv-cobalt)}
.nv-drawer .nv-menu__item.is-open .nv-menu__caret{transform:rotate(180deg);background:var(--nv-cobalt);color:#fff}

/* pannello a fisarmonica, animato */
.nv-drawer .nv-menu__panel{display:grid!important;grid-template-rows:0fr;position:static;padding:0;opacity:1;visibility:hidden;transform:none;transition:grid-template-rows .3s ease,visibility 0s .3s}
.nv-drawer .nv-menu__item.is-open .nv-menu__panel{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .3s ease,visibility 0s 0s}
.nv-drawer .nv-menu__panel::before{display:none}
.nv-drawer .nv-menu__panel-in{display:block;min-height:0;overflow:hidden;max-width:none;margin:0 0 12px;padding:0;border:0;border-left:3px solid var(--nv-cobalt);border-radius:0 12px 12px 0;box-shadow:none;background:var(--nv-cobalt-soft)}
.nv-drawer .nv-menu__item:not(.is-open) .nv-menu__panel-in{margin-bottom:0}

/* dentro il pannello */
.nv-drawer .nv-menu__all{display:flex;align-items:center;justify-content:space-between;margin:10px 12px 6px;padding:12px 14px;border-radius:10px;background:var(--nv-cobalt);color:#fff;font-weight:700;font-size:.92rem;text-decoration:none}
.nv-drawer .nv-menu__all::after{content:"→";margin-left:10px}
.nv-drawer .nv-menu__col{padding:4px 12px 6px}
.nv-drawer .nv-menu__col + .nv-menu__col{border-top:1px solid rgba(37,72,201,.12)}
.nv-drawer .nv-menu__coltitle{display:block;margin:0;padding:10px 2px;border-radius:0;background:none;font-size:.95rem;font-weight:700;color:var(--nv-ink)}
.nv-drawer .nv-menu__coltitle:hover{background:none}
.nv-drawer .nv-menu__sublist{margin:0 0 6px;padding:0 0 0 12px;border-left:2px solid rgba(37,72,201,.18)}
.nv-drawer .nv-menu__sublist a{margin:0;padding:8px 6px;border-radius:0;font-size:.9rem;color:var(--nv-muted)}
.nv-drawer .nv-menu__sublist a:hover{background:none}
.nv-drawer .nv-menu__sublist a:active,.nv-drawer .nv-menu__coltitle:active{color:var(--nv-cobalt)}
.nv-drawer .nv-menu__panel-in:not(:has(.nv-menu__sublist)) .nv-menu__col{padding-top:0;padding-bottom:0}
.nv-drawer .nv-menu__panel-in:not(:has(.nv-menu__sublist)) .nv-menu__coltitle{margin:0;padding:12px 2px;font-weight:600}
.nv-drawer .nv-menu__panel-in > :last-child{margin-bottom:8px}

/* account e contatti in fondo */
.nv-drawer__list--account{margin-top:24px;padding:6px 14px;border-radius:12px;background:var(--nv-bg)}
.nv-drawer__list--account li + li a{border-top:1px solid var(--nv-line)}
.nv-drawer__list--account a{padding:13px 0;border-bottom:0;font-weight:600}
.nv-drawer__list--account a[href*="wa.me"],.nv-drawer__list--account a[href*="whatsapp"]{display:flex;justify-content:center;margin:10px 0 8px;padding:13px;border:0!important;border-radius:24px;background:#1FA855;color:#fff;font-weight:700}

/* mouse vero (tablet con mouse, desktop stretto): torna il passaggio del mouse */
@media (hover:hover) and (pointer:fine){
  .nv-drawer .nv-menu__link:hover{color:var(--nv-cobalt)}
  .nv-drawer .nv-menu__sublist a:hover,.nv-drawer .nv-menu__coltitle:hover{color:var(--nv-cobalt)}
}
@media (prefers-reduced-motion:reduce){
  .nv-drawer .nv-menu__panel,.nv-drawer .nv-menu__caret{transition:none}
}

/* Menu da telefono, ritocchi:
   - righe dei reparti a tutta larghezza, testo e freccia centrati in verticale
   - "Vedi tutto" in bianco
   - un tocco solo per aprire: su iPhone le regole :hover del menu desktop
     rendevano visibile il pannello al primo tocco, e il telefono lo trattava
     come passaggio del mouse; nel cassetto il :hover non cambia più niente */
.nv-drawer .nv-menu__link{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;line-height:1.3}
.nv-drawer .nv-menu__caret{flex:none;margin:0}
.nv-drawer .nv-menu__all,.nv-drawer .nv-menu__all:hover,.nv-drawer .nv-menu__all:visited,.nv-drawer .nv-menu__all:active{color:#fff!important}
.nv-drawer .nv-menu__item:hover .nv-menu__panel,
.nv-drawer .nv-menu__item:focus-within .nv-menu__panel{visibility:hidden;opacity:1;transform:none}
.nv-drawer .nv-menu__item.is-open:hover .nv-menu__panel,
.nv-drawer .nv-menu__item.is-open:focus-within .nv-menu__panel,
.nv-drawer .nv-menu__item.is-open .nv-menu__panel{visibility:visible}
.nv-drawer .nv-menu__item:hover .nv-menu__caret,
.nv-drawer .nv-menu__item:focus-within .nv-menu__caret{transform:none}
.nv-drawer .nv-menu__item.is-open .nv-menu__caret{transform:rotate(180deg)}

/* Menu da telefono: il reparto che si chiude quando ne apri un altro
   sparisce di colpo (la lista viene compensata da nuvola.js) */
.nv-drawer .nv-menu__item.nv-instant .nv-menu__panel,
.nv-drawer .nv-menu__item.nv-instant .nv-menu__caret{transition:none!important}

/* Loghi dei pagamenti nella scheda prodotto (statici, 30/09/2026: al posto di quelli disegnati dall'SDK di PrestaShop Checkout) */
.nv-paylogos{margin-top:4px}
.nv-paylogos__title{padding:.5rem 0;margin-left:4px;color:#666}
.nv-paylogos__title img{margin:0 2px 3px 2px;vertical-align:middle}
.nv-paylogos__list{display:inline-flex;flex-wrap:wrap;align-items:center}
.nv-paylogos__mark{display:inline-flex;align-items:center;gap:5px;line-height:0;padding:5px 7px;margin:4px;background:#fff;border:1px solid #dcdcdc;border-radius:3px;white-space:nowrap}
.nv-paylogos__mark img{height:20px;width:auto}
.nv-paylogos__text{font-family:system-ui,-apple-system,Roboto,"Segoe UI",Helvetica,Arial,sans-serif;font-size:12px;line-height:20px;color:#000}

/* Avviso giacenza nella scheda prodotto: compare solo se il cliente chiede più pezzi di quelli disponibili (30/09/2026) */
.nv-stock-limit{margin:10px 0 0;padding:8px 14px;border-radius:10px;background:var(--nv-kraft-soft);color:#8A6321;font-size:.88rem;font-weight:600;line-height:1.35}

/* Icone Material ridotte alle sole usate dal sito (30/09/2026): 16 KB invece di 61 KB.
   Stessi descrittori della dichiarazione di Classic: vince questa, l'originale non si scarica.
   Se un'icona compare come testo (es. "shopping_cart"), va aggiunta al file: vedi CONTESTO §12. */
@font-face{font-family:"Material Icons";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/material-icons-nuvola.woff2) format("woff2")}

/* Menu: le sottovoci corte (1-2 voci) stanno sotto l ultima colonna invece di occuparne una (nuvola 1.38.1, 30/09/2026) */
.nv-menu__stack{display:flex;flex-direction:column;gap:20px;min-width:0}
.nv-drawer .nv-menu__stack{display:block}
.nv-drawer .nv-menu__col + .nv-menu__stack > .nv-menu__col:first-child,.nv-drawer .nv-menu__stack + .nv-menu__col{border-top:1px solid rgba(37,72,201,.12)}

/* Link "Vedi tutte: categoria" sotto gli accessori (nuvola 1.40.0) */
.nv-acccat{display:flex;flex-wrap:wrap;gap:6px 16px;margin:8px 0 0;font-size:.875rem;font-weight:600}
.nv-acccat a{text-decoration:none}
.nv-acccat a:hover{text-decoration:underline}
.nv-acccat--rail{margin:-4px 0 12px}

/* Colonna a sinistra delle liste prodotti che segue lo scroll (3/10/2026). Da computer: resta a 16 px
   dall alto; se è più alta dello schermo scorre al suo interno, così i filtri in fondo restano raggiungibili. */
@media (min-width:992px){
  body#category #left-column,body#manufacturer #left-column,body#supplier #left-column,body#search #left-column,
  body#new-products #left-column,body#prices-drop #left-column,body#best-sales #left-column{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
}

/* ============================================================
   Filtri delle liste in un pannello laterale (3/10/2026)
   Pulsante "Filtra" sopra la lista, pannello da destra, voci richiudibili
   con le scelte a bollini, filtri attivi come bollini sopra i prodotti.
   ============================================================ */
#js-product-list-top.nv-ltop{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.nv-ltop__count p{margin:0}
.nv-ltop__tools{display:flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:wrap}
.nv-ltop__sort{display:flex;align-items:center;gap:8px;margin:0;flex-wrap:nowrap}
.nv-ltop__sort > *{width:auto;max-width:none;flex:none;padding:0;float:none}
.nv-filter-btn{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid var(--nv-line);border-radius:10px;background:#fff;color:var(--nv-ink);font-weight:700;font-size:.9rem;cursor:pointer}
.nv-filter-btn:hover,.nv-filter-btn:focus-visible{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}
.nv-filter-btn__n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--nv-cobalt);color:#fff;font-size:.75rem}
.nv-filter-btn__n[hidden]{display:none}

.nv-fdrawer{position:fixed;inset:0;z-index:1100}
.nv-fdrawer[hidden]{display:none}
.nv-fdrawer__bg{position:absolute;inset:0;background:rgba(20,33,61,.4);opacity:0;transition:opacity .25s ease}
.nv-fdrawer__panel{position:absolute;top:0;right:0;bottom:0;width:min(420px,92vw);display:flex;flex-direction:column;background:var(--nv-surface);box-shadow:-24px 0 60px -30px rgba(20,33,61,.5);transform:translateX(100%);transition:transform .25s ease}
.nv-fdrawer.is-open .nv-fdrawer__bg{opacity:1}
.nv-fdrawer.is-open .nv-fdrawer__panel{transform:none}
@media (prefers-reduced-motion:reduce){.nv-fdrawer__bg,.nv-fdrawer__panel{transition:none}}
.nv-fdrawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--nv-line)}
.nv-fdrawer__title{margin:0;font-size:1.15rem;font-weight:800;color:var(--nv-ink)}
.nv-fdrawer__x{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:var(--nv-bg);color:var(--nv-ink);cursor:pointer}
.nv-fdrawer__x:hover{background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-fdrawer__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 20px 20px}
#search_filters_wrapper.nv-fdrawer__body #search_filters{background:none;border:0;border-radius:0;padding:0;margin:0;box-shadow:none}
.nv-fdrawer__foot{padding:14px 20px;border-top:1px solid var(--nv-line)}
.nv-fdrawer__done{width:100%;min-height:48px;border:0;border-radius:12px;background:var(--nv-cobalt);color:#fff;font-weight:700;font-size:1rem;cursor:pointer}

#search_filters .nv-facet{padding:0;border-top:0;border-bottom:1px solid var(--nv-line)}
.nv-facet__title{display:flex;align-items:center;gap:8px;padding:16px 0;font-weight:700;font-size:.98rem;color:var(--nv-ink);cursor:pointer;list-style:none}
.nv-facet__title::-webkit-details-marker{display:none}
.nv-facet__title::after{content:"";margin-left:auto;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px;transition:transform .2s ease}
.nv-facet[open] > .nv-facet__title::after{transform:rotate(-135deg);margin-top:4px}
.nv-facet__n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--nv-cobalt);color:#fff;font-size:.75rem}
.nv-facet__list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0 0 16px;list-style:none}
.nv-fchip{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid var(--nv-line);border-radius:20px;background:#fff;color:var(--nv-ink);font-size:.88rem;font-weight:600;line-height:1.2;text-decoration:none}
.nv-fchip:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt);text-decoration:none}
.nv-fchip.is-active{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft);color:var(--nv-cobalt)}
.nv-fchip__color{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.15);background-size:cover;flex:none}
.nv-fchip small{color:var(--nv-muted);font-weight:500}
.nv-facet__slider{list-style:none;margin:0;padding:2px 10px 22px}
.nv-facet__range{margin:0 0 14px;font-weight:600;color:var(--nv-ink)}
.nv-facet__slider .ui-slider-range{background:var(--nv-cobalt)}
.nv-facet__slider .ui-slider-handle{border-color:var(--nv-cobalt);border-radius:50%}

#js-active-search-filters.nv-active{margin:0 0 14px;padding:0;background:none}
.nv-active__list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none}
.nv-fchip__k{color:var(--nv-muted);font-weight:500}
.nv-active__clear{border:0;background:none;padding:7px 4px;color:var(--nv-cobalt);font-weight:700;font-size:.88rem;text-decoration:underline;cursor:pointer}
@media (max-width:767px){.hidden-sm-down:has(> #js-active-search-filters.nv-active){display:block!important}}

/* Barra sopra la lista: Filtra e conteggio a sinistra, ordinamento a destra; "Ordina per" non più coperto
   dal menu (Classic dà a .sort-by un margine negativo e lo manda a capo) (3/10/2026) */
.nv-ltop__left{display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-width:0}
.nv-ltop__sort{margin-left:auto}
.nv-ltop__sort .sort-by{margin:0;padding:0;white-space:nowrap;word-break:normal;text-align:left}
.nv-ltop__sort .products-sort-order{position:relative}

/* Percorso (Home / … / categoria) centrato in verticale: stesso spazio sopra e sotto (3/10/2026).
   Il contenitore perde il suo spazio in alto (25 px nelle liste, 12 px nella scheda prodotto) e il
   percorso ha 18 px sopra e sotto. */
#wrapper:has(> .container > .breadcrumb:first-child){padding-top:0!important}
#wrapper .breadcrumb{padding-top:18px;padding-bottom:18px}

/* Header da telefono e tablet: logo con lo stesso spazio sopra e sotto (3/10/2026).
   Prima 33 px sopra il disegno (12 dell'header + 16 del contenitore + 5 di bianco nell'immagine) e 20 sotto. */
@media (max-width:991px){
  .nv-header{padding-top:0}
  .nv-header__in{padding-top:14px}
}

/* Logo più grande da telefono e tablet (3/10/2026). Prima 40 px (34 sotto i 375 px).
   Gli spazi sopra e sotto restano uguali (circa 20 px). Da computer resta 64 px. */
@media (max-width:991px){.nv-logo img{height:46px}}
@media (min-width:576px) and (max-width:991px){.nv-logo img{height:52px}}
@media (max-width:374px){.nv-logo img{height:38px}}

/* ============================================================
   Campagne stagionali (nuvola 1.42.0, 3/10/2026)
   Banner in home sotto la testata, messaggio nella barra in alto,
   voce del menu evidenziata, avviso dell'anteprima.
   ============================================================ */
.nv-preview-bar{padding:8px 16px;background:#FFF4CC;border-bottom:1px solid #E8D58A;color:#6B5200;font-size:.88rem;text-align:center}
.nv-topbar__camp{font-weight:700;color:var(--nv-cobalt);text-decoration:none}
a.nv-topbar__camp:hover{text-decoration:underline}

.nv-menu__item--camp > .nv-menu__link{color:#C8302A}
.nv-menu__badge{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:10px;background:#C8302A;color:#fff;font-size:.7rem;font-weight:800;letter-spacing:.02em;line-height:1.4;vertical-align:middle}

.nv-camp{padding:28px 0 8px}
.nv-camp__box{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:stretch;overflow:hidden;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius)}
.nv-camp--noimg .nv-camp__box{grid-template-columns:1fr;background:var(--nv-kraft-soft)}
.nv-camp__media{display:block;min-height:100%;background:var(--nv-bg)}
.nv-camp__media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:3/2}
.nv-camp__txt{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:32px 36px}
.nv-camp__kicker{margin:0;color:#C8302A;font-weight:800;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase}
.nv-camp__title{margin:0;color:var(--nv-ink);font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:800;line-height:1.15}
.nv-camp__sub{margin:0;color:var(--nv-muted);font-size:1.02rem;line-height:1.5}
.nv-camp__btn{align-self:flex-start;margin-top:6px}
@media (max-width:767px){
  .nv-camp{padding:18px 0 4px}
  .nv-camp__box{grid-template-columns:1fr}
  .nv-camp__txt{padding:20px 18px 22px}
}
/* Barra in alto con la campagna: una riga sola, il messaggio si accorcia coi puntini */
.nv-topbar__in:has(.nv-topbar__camp){flex-wrap:nowrap}
.nv-topbar__in:has(.nv-topbar__camp) > *{flex:none}
.nv-topbar__in > .nv-topbar__camp{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* Fascia prodotti della campagna: fila che scorre di lato (fino a 24 prodotti) */
.nv-home .nv-camp-strip .nv-products--rail{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 4 * 18px) / 5);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:10px}
.nv-home .nv-camp-strip .nv-products--rail > .nv-card{scroll-snap-align:start}
@media (max-width:1199px){.nv-home .nv-camp-strip .nv-products--rail{grid-auto-columns:calc((100% - 3 * 18px) / 4)}}
@media (max-width:991px){.nv-home .nv-camp-strip .nv-products--rail{grid-auto-columns:calc((100% - 2 * 18px) / 2.6)}}
@media (max-width:575px){.nv-home .nv-camp-strip .nv-products--rail{grid-auto-columns:68%}}

/* ============================================================
   Campagne con home completa (nuvola 1.43.0, 4/10/2026)
   Presentazione del sito, testata della campagna con le tavole, schede 2x2 ed
   elenchi, "Componi la tavola". Fase 1 rosso (Natale), fase 2 oro (Capodanno).
   ============================================================ */
.nv-camp-p1{--nv-camp:#A8222A;--nv-camp-soft:#FBE9E9}
.nv-camp-p2{--nv-camp:#7E5A0E;--nv-camp-soft:#FBF3E1}
.nv-kit [hidden],.nv-chero [hidden]{display:none!important}

.nv-cintro{background:var(--nv-surface);border-bottom:1px solid var(--nv-line)}
.nv-cintro__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:16px 40px;align-items:center;padding-top:24px;padding-bottom:26px}
.nv-cintro__title{margin:0;font-size:clamp(1.6rem,2.8vw,2.3rem);line-height:1.08;letter-spacing:-.015em;font-weight:800;color:var(--nv-ink);text-transform:none}
.nv-cintro__text{margin:8px 0 0;color:var(--nv-muted);font-size:1.02rem}
.nv-cintro__label{margin:14px 0 8px;font-size:.88rem;color:var(--nv-muted)}
.nv-cintro__chips{display:flex;flex-wrap:wrap;gap:8px}
.nv-cintro__chips a{padding:7px 13px;border:1px solid var(--nv-line);border-radius:18px;text-decoration:none;font-weight:600;font-size:.88rem;background:var(--nv-bg);color:var(--nv-ink)}
.nv-cintro__chips a:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}

.nv-chero{position:relative;background:#F3EBDD center right/cover no-repeat;border-bottom:1px solid var(--nv-line)}
.nv-chero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,252,246,.94) 0%,rgba(255,252,246,.86) 42%,rgba(255,252,246,.2) 70%,rgba(255,252,246,0) 100%)}
.nv-chero__in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:32px;align-items:center;padding-top:40px;padding-bottom:44px}
.nv-chero__kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;font-weight:800;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--nv-camp)}
.nv-chero__kicker i{width:8px;height:8px;border-radius:50%;background:var(--nv-camp)}
.nv-chero__title{margin:0;font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.03;letter-spacing:-.02em;font-weight:800;color:var(--nv-ink);max-width:14ch;text-transform:none}
.nv-chero__sub{margin:16px 0 22px;font-size:1.1rem;color:var(--nv-ink);max-width:44ch}
.nv-chero__eta{display:inline-grid;gap:4px;margin-top:22px;padding:10px 16px;border-radius:12px;background:var(--nv-surface);border:1px solid var(--nv-line);font-size:.92rem}
.nv-chero__eta p{margin:0}
.nv-chero__eta strong{color:var(--nv-camp)}
.nv-chero__deadline{font-weight:700;color:var(--nv-camp)}

.nv-ctable{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:18px;padding:16px;box-shadow:0 30px 60px -40px rgba(20,33,61,.45)}
.nv-ctable__tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.nv-ctable__tabs button{border:1px solid var(--nv-line);background:var(--nv-surface);border-radius:18px;padding:6px 12px;font:inherit;font-weight:700;font-size:.82rem;cursor:pointer;color:var(--nv-ink)}
.nv-ctable__tabs button[aria-pressed="true"]{border-color:var(--nv-camp);background:var(--nv-camp-soft);color:var(--nv-camp)}
.nv-ctable__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.nv-ctable__tile{position:relative;display:block;aspect-ratio:1/1;border-radius:10px;background:#fff;border:1px solid var(--nv-line);overflow:hidden}
.nv-ctable__tile img{width:100%;height:100%;object-fit:contain}
.nv-ctable__tile span{position:absolute;left:6px;right:6px;bottom:6px;font-size:.76rem;font-weight:700;color:var(--nv-ink);background:#fff;border:1px solid var(--nv-line);border-radius:6px;padding:2px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nv-ctable__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}
.nv-ctable__foot p{margin:0;font-size:.92rem;color:var(--nv-muted)}
.nv-ctable__foot strong{color:var(--nv-ink);font-size:1.15rem}

.nv-cgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nv-cgc{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:var(--nv-radius);padding:16px;display:flex;flex-direction:column;gap:12px;min-width:0}
.nv-cgc--camp{border-color:var(--nv-camp);box-shadow:0 0 0 1px var(--nv-camp) inset}
.nv-cgc__title{margin:0;font-size:1.18rem;line-height:1.2;font-weight:800;color:var(--nv-ink);text-transform:none}
.nv-cgc__q{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nv-cgc__item{display:grid;gap:4px;text-decoration:none;color:var(--nv-ink);min-width:0}
.nv-cgc__img{position:relative;display:block;aspect-ratio:1/1;border-radius:10px;background:#fff;border:1px solid var(--nv-line);overflow:hidden}
.nv-cgc__img img{width:100%;height:100%;object-fit:contain}
.nv-cgc__off{position:absolute;top:6px;left:6px;z-index:1;background:#A8222A;color:#fff;font-weight:800;font-size:.76rem;border-radius:6px;padding:2px 6px}
.nv-cgc__item small{font-size:.8rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nv-cgc__item b{font-size:.92rem}
.nv-cgc__item s{color:var(--nv-muted);font-weight:400;font-size:.8rem}
.nv-cgc__list{list-style:none;margin:0;padding:0}
.nv-cgc__list a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 2px;border-bottom:1px solid var(--nv-line);text-decoration:none;color:var(--nv-ink)}
.nv-cgc__list li:last-child a{border-bottom:0}
.nv-cgc__list b{font-weight:700;font-size:.95rem}
.nv-cgc__list span{color:var(--nv-muted);font-size:.82rem;white-space:nowrap}
.nv-cgc__list a:hover b{color:var(--nv-cobalt)}
.nv-cgc__more{margin-top:auto;font-weight:700;color:var(--nv-cobalt);text-decoration:none;font-size:.92rem}
.nv-cgc__more:hover{text-decoration:underline}

.nv-kit__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:22px;align-items:start}
.nv-kit__lines{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.nv-kit__line{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;text-align:left;padding:12px;border:1px solid var(--nv-line);border-radius:var(--nv-radius);background:var(--nv-surface);cursor:pointer;color:var(--nv-ink);font:inherit}
.nv-kit__line img{width:72px;height:72px;object-fit:contain;border-radius:8px;background:#fff}
.nv-kit__line b{display:block;font-size:1rem}
.nv-kit__line small{display:block;color:var(--nv-muted);font-size:.84rem;line-height:1.35}
.nv-kit__line small.is-short{color:#A8222A;font-weight:700}
.nv-kit__line[aria-pressed="true"]{border-color:var(--nv-camp);box-shadow:0 0 0 2px var(--nv-camp-soft)}
.nv-kit__guests{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-weight:700}
.nv-kit__guests div{display:flex;flex-wrap:wrap;gap:8px}
.nv-kit__guests button{border:1px solid var(--nv-line);background:var(--nv-surface);border-radius:20px;padding:8px 14px;font:inherit;font-weight:700;cursor:pointer;color:var(--nv-ink)}
.nv-kit__guests button[aria-pressed="true"]{background:var(--nv-ink);color:#fff;border-color:var(--nv-ink)}
.nv-kit__opts{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.92rem}
.nv-kit__opts label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.nv-kit__note{font-size:.86rem;color:var(--nv-muted);margin:10px 0 0}
.nv-kit__cart{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:18px;padding:18px}
.nv-kit__cart h3{margin:0 0 4px;font-size:1.15rem;text-transform:none}
.nv-kit__sub{margin:0 0 12px;color:var(--nv-muted);font-size:.88rem}
.nv-kit__rows{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.nv-kit__rows li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:.88rem}
.nv-kit__rows img{width:44px;height:44px;object-fit:contain;border:1px solid var(--nv-line);border-radius:8px;background:#fff}
.nv-kit__rows small{color:var(--nv-muted);font-size:.82rem}
.nv-kit__tot{border-top:1px solid var(--nv-line);margin-top:14px;padding-top:12px;display:grid;gap:4px;font-size:.92rem}
.nv-kit__tot div{display:flex;justify-content:space-between;gap:10px}
.nv-kit__disc{color:#256A43;font-weight:700}
.nv-kit__big{font-size:1.25rem;font-weight:800}
.nv-kit__alert{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:#FBE9E9;color:#A8222A;font-weight:700;font-size:.88rem}
.nv-kit__add{width:100%;margin-top:14px}
.nv-kit__add[disabled]{opacity:.45;cursor:not-allowed}
.nv-kit__msg{margin:10px 0 0;font-weight:700;color:#256A43;font-size:.9rem}

@media (max-width:1100px){.nv-cgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:991px){
  .nv-cintro__in,.nv-chero__in,.nv-kit__in{grid-template-columns:1fr}
  .nv-chero::before{background:rgba(255,252,246,.9)}
  .nv-chero__in{padding-top:30px;padding-bottom:34px}
}
@media (max-width:560px){
  .nv-cgrid{grid-template-columns:1fr}
  .nv-ctable__tile span{display:none}
}

/* Campagne 1.44.0 (5/10/2026): testata senza tavole, file di prodotti, fascia compatta */
.nv-chero__in--solo{grid-template-columns:minmax(0,1fr)}
.nv-chero__in--solo .nv-chero__txt{max-width:640px}

.nv-cstrip{padding-top:8px}
.nv-cstrip__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.nv-cstrip__title{margin:0;font-size:1.25rem;font-weight:800;color:var(--nv-ink);text-transform:none}
.nv-cstrip__rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,170px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:2px 2px 12px}
.nv-cstrip__item{scroll-snap-align:start;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:12px;padding:10px}
.nv-cstrip__item:hover{border-color:var(--nv-cobalt)}

.nv-cband{padding:18px 0 4px}
.nv-cband__box{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap;padding:14px 18px;background:var(--nv-surface);border:1px solid var(--nv-line);border-left:4px solid var(--nv-camp);border-radius:var(--nv-radius)}
.nv-cband__txt{flex:1 1 320px;min-width:0}
.nv-cband__kicker{margin:0 0 2px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--nv-camp)}
.nv-cband__title{margin:0;font-size:1.2rem;font-weight:800;color:var(--nv-ink);text-transform:none}
.nv-cband__sub{margin:4px 0 0;font-size:.92rem;color:var(--nv-muted)}
.nv-cband__items{display:flex;gap:8px}
.nv-cband__item{display:block;width:64px;height:64px;border-radius:10px;border:1px solid var(--nv-line);background:#fff;overflow:hidden}
.nv-cband__item img{width:100%;height:100%;object-fit:contain}
.nv-cband__btn{flex:none}
@media (max-width:560px){.nv-cband__items{width:100%;justify-content:space-between}.nv-cband__item{width:56px;height:56px}.nv-cband__btn{width:100%}}

/* Logo stagionale delle campagne (nuvola 1.45.0, 5/10/2026): le lettere restano alte come il logo
   normale; lo spazio in più sopra (cappello, coriandoli) sale nello spazio dell'intestazione. */
.nv-logo{--nv-logo-h:64px}
@media (max-width:991px){.nv-logo{--nv-logo-h:46px}}
@media (min-width:576px) and (max-width:991px){.nv-logo{--nv-logo-h:52px}}
@media (max-width:374px){.nv-logo{--nv-logo-h:38px}}
.nv-logo--camp img{height:calc(var(--nv-logo-h) / (1 - var(--nv-logo-x, 0)));margin-top:calc(var(--nv-logo-h) * var(--nv-logo-x, 0) / (1 - var(--nv-logo-x, 0)) * -1)}
/* il bianco del logo stagionale è trasparente: se sfiora la barra in alto non copre il suo colore */
.nv-logo--camp img{mix-blend-mode:multiply}

/* Pacchetti delle campagne (nuvola 1.46.0, 5/10/2026): schede "La tavola / pacchetti" sopra il
   composer; ogni pezzo con prodotto e colore o misura da scegliere. */
.nv-pk__tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.nv-pk__tabs button{border:1px solid var(--nv-line);background:var(--nv-surface);color:var(--nv-ink);border-radius:20px;padding:9px 16px;font:inherit;font-weight:700;cursor:pointer}
.nv-pk__tabs button small{font-size:.78rem;font-weight:800;color:var(--nv-camp)}
.nv-pk__tabs button[aria-selected="true"]{background:var(--nv-ink);border-color:var(--nv-ink);color:#fff}
.nv-pk__tabs button[aria-selected="true"] small{color:#fff}
.nv-pk__tabs button:focus-visible{outline:2px solid var(--nv-camp);outline-offset:2px}
.nv-pk .nv-kit__guests{margin-top:0}
.nv-pk__parts{display:grid;gap:10px;margin-top:16px}
.nv-pk__part{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:1px solid var(--nv-line);border-radius:var(--nv-radius);background:var(--nv-surface)}
.nv-pk__part.is-off{opacity:.55}
.nv-pk__part img{width:64px;height:64px;object-fit:contain;border-radius:8px;background:#fff}
.nv-pk__pick{display:grid;gap:6px;min-width:0}
.nv-pk__pick b{font-size:1rem}
.nv-pk__pick small{color:var(--nv-muted);font-size:.86rem;line-height:1.35}
.nv-pk__pick select{width:100%;max-width:100%;min-height:40px;padding:6px 10px;border:1px solid var(--nv-line);border-radius:10px;background:#fff;font:inherit;font-size:.92rem;color:var(--nv-ink)}
.nv-pk__pick a{font-size:.84rem;color:var(--nv-muted);text-decoration:underline}
.nv-pk__opt{display:inline-flex;gap:6px;align-items:center;font-size:.86rem;font-weight:600;cursor:pointer}
@media (max-width:560px){.nv-pk__part{grid-template-columns:48px minmax(0,1fr)}.nv-pk__part img{width:48px;height:48px}}

/* Menu, pannello a riquadri (nuvola 1.48.0, 5/10/2026): famiglie con icona a linee, numero di prodotti
   e 3 sottovoci, 4 per riga; più basso e leggibile delle colonne. */
.nv-menu__panel-in--tiles{grid-template-columns:repeat(4,minmax(200px,250px));gap:18px 28px;padding:20px 24px}
.nv-menu__tile .nv-menu__coltitle{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.nv-menu__coltitle .nv-menu__ico{width:28px;height:28px;flex:none;color:var(--nv-cobalt);fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.nv-menu__tile .nv-menu__coltitle span{line-height:1.2}
.nv-menu__tile .nv-menu__coltitle small{display:block;margin-top:2px;font-weight:500;font-size:.78rem;color:var(--nv-muted)}
.nv-menu__tile .nv-menu__sublist{padding-left:38px}
.nv-menu__tile .nv-menu__sublist a{padding:4px 8px}
.nv-menu__tileall{align-self:center;justify-self:start;padding:8px 10px;margin-left:-10px;border-radius:8px;font-weight:700;font-size:.92rem;color:var(--nv-cobalt);text-decoration:none}
.nv-menu__tileall:hover{background:var(--nv-cobalt-soft);text-decoration:none}
@media (max-width:1150px){.nv-menu__panel-in--tiles{grid-template-columns:repeat(3,minmax(200px,250px))}}
@media (max-width:991px){.nv-menu__panel-in--tiles{grid-template-columns:1fr}}
.nv-drawer .nv-menu__tile .nv-menu__coltitle{display:flex}
.nv-drawer .nv-menu__tile .nv-menu__ico{width:24px;height:24px}
.nv-drawer .nv-menu__tile .nv-menu__sublist{margin-left:11px;padding-left:22px}
.nv-drawer .nv-menu__tileall{display:none}

/* Menu a comparsa (nuvola 1.49.0, rifatto 1.49.1 il 5/10/2026): nella barra "Tutti i reparti" + collegamenti
   veloci; il pulsante apre il cassetto (lo stesso del telefono). Da computer: reparti a sinistra e contenuto a
   destra, ognuno con lo scorrimento suo; sezioni in riquadri con icona; un tono tenue per gruppo (data-tone). */
.nv-qbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px 22px;min-height:50px}
.nv-qbar__all{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:10px;padding:9px 15px;background:var(--nv-ink);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.nv-qbar__all:hover{background:var(--nv-cobalt)}
.nv-qbar__links{display:flex;flex-wrap:wrap;gap:4px 22px;list-style:none;margin:0;padding:0}
.nv-qbar__link{display:inline-block;padding:6px 0;font-weight:700;color:var(--nv-ink);text-decoration:none}
.nv-qbar__link:hover{color:var(--nv-cobalt);text-decoration:none}
.nv-qbar__link--camp{color:var(--nv-camp,#A8222A)}

.nv-cat [data-tone="1"],.nv-cat[data-tone="1"]{--t:#2548C9;--ts:#EEF2FC;--tb:#D9E2F8}
.nv-cat [data-tone="2"]{--t:#0E7A86;--ts:#E6F4F6;--tb:#C7E6EA}
.nv-cat [data-tone="3"]{--t:#9A5F0C;--ts:#FBF3E4;--tb:#F0DFBE}
.nv-cat [data-tone="4"]{--t:#B03A5B;--ts:#FCEDF1;--tb:#F3D3DC}
.nv-cat [data-tone="5"]{--t:#6A4BC2;--ts:#F1EDFB;--tb:#DDD4F4}
.nv-cat [data-tone="6"]{--t:#3C7A1E;--ts:#EEF6E8;--tb:#D5E9C8}
.nv-cat svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nv-drawer__menu .nv-cat a{border-bottom:0}
.nv-cat ul{list-style:none;margin:0;padding:0}
.nv-cat .nv-cat__group{display:flex;align-items:center;gap:8px;margin:16px 4px 6px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--t)}
.nv-cat .nv-cat__group::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--t)}
.nv-cat .nv-cat__grp:first-child .nv-cat__group{margin-top:4px}
.nv-cat .nv-cat__dep{display:flex;align-items:center;gap:10px;min-height:44px;padding:7px 10px;border-radius:10px;font-weight:700;font-size:.95rem;line-height:1.25;color:var(--nv-ink);text-decoration:none}
.nv-cat .nv-cat__ico{width:22px;height:22px;flex:none;color:var(--t)}
.nv-cat .nv-cat__depname{flex:1;min-width:0}
.nv-cat .nv-cat__chev{flex:none;color:var(--nv-muted);stroke-width:2}
.nv-cat .nv-cat__dep--camp .nv-cat__depname{color:var(--nv-camp,#A8222A)}
.nv-cat .nv-cat__pane[hidden]{display:none}
.nv-cat .nv-cat__back{display:none}
.nv-cat .nv-cat__head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 16px;padding:14px 16px;border-radius:16px;background:var(--ts)}
.nv-cat .nv-cat__title{display:flex;align-items:center;gap:12px;padding:0;font-size:1.3rem;font-weight:800;line-height:1.15;color:var(--nv-ink);text-decoration:none}
.nv-cat .nv-cat__title small{display:block;margin-top:4px;font-size:.8rem;font-weight:600;color:var(--nv-muted)}
.nv-cat .nv-cat__title:hover{color:var(--t);text-decoration:none}
.nv-cat .nv-cat__bigico{display:flex;align-items:center;justify-content:center;width:48px;height:48px;flex:none;border-radius:12px;background:#fff;color:var(--t)}
.nv-cat .nv-cat__bigico svg{width:28px;height:28px}
.nv-cat .nv-cat__seeall{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:999px;background:var(--t);color:#fff;font-weight:700;font-size:.9rem;text-decoration:none}
.nv-cat .nv-cat__seeall::after{content:"›";font-size:1.1em}
.nv-cat .nv-cat__seeall:hover{color:#fff;text-decoration:none;filter:brightness(1.08)}
.nv-cat .nv-cat__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.nv-cat .nv-cat__card{padding:14px;border:1px solid var(--tb);border-radius:14px;background:#fff}
.nv-cat .nv-cat__cardhead{display:flex;align-items:center;gap:10px;padding:0;font-weight:700;line-height:1.2;color:var(--nv-ink);text-decoration:none}
.nv-cat .nv-cat__cardhead small{display:block;margin-top:3px;font-size:.76rem;font-weight:600;color:var(--nv-muted)}
.nv-cat .nv-cat__cardhead:hover{color:var(--t);text-decoration:none}
.nv-cat .nv-cat__cardico{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:10px;background:var(--ts);color:var(--t)}
.nv-cat .nv-cat__cardico svg{width:22px;height:22px}
.nv-cat .nv-cat__leaves{margin:12px 0 0;padding:10px 0 0;border-top:1px dashed var(--tb)}
.nv-cat .nv-cat__leaves a{display:block;padding:5px 0;font-size:.88rem;font-weight:500;line-height:1.3;color:var(--nv-muted);text-decoration:none}
.nv-cat .nv-cat__leaves a::before{content:"›";margin-right:7px;font-weight:700;color:var(--t)}
.nv-cat .nv-cat__leaves a:hover{color:var(--t);text-decoration:none}

/* telefono e tablet: un reparto alla volta, al posto dell'elenco */
@media (max-width:991px){
  .nv-drawer:has(.nv-cat) .nv-drawer__panel{width:min(92vw,460px)}
  .nv-cat.is-pane .nv-cat__list,.nv-cat:not(.is-pane) .nv-cat__panes{display:none}
  .nv-cat .nv-cat__dep{min-height:52px;padding:8px 4px;border-radius:0;border-bottom:1px solid var(--nv-line);font-size:1rem}
  .nv-drawer__menu .nv-cat .nv-cat__dep{border-bottom:1px solid var(--nv-line)}
  .nv-cat .nv-cat__back{display:inline-flex;align-items:center;gap:6px;margin:4px 0 8px;padding:10px 0;border:0;background:none;font:inherit;font-weight:700;color:var(--nv-cobalt);cursor:pointer}
  .nv-cat .nv-cat__back svg{stroke-width:2}
  .nv-cat .nv-cat__head{padding:12px}
  .nv-cat .nv-cat__title{font-size:1.15rem}
  .nv-cat .nv-cat__bigico{width:42px;height:42px}
  .nv-cat .nv-cat__grid{grid-template-columns:1fr;gap:12px}
  .nv-cat .nv-cat__leaves a{padding:9px 0;font-size:.95rem}
}
@media (max-width:420px){.nv-cat .nv-cat__seeall{width:100%;justify-content:center}}

/* computer: cassetto largo, i due lati scorrono ognuno per conto suo */
@media (min-width:992px){
  .nv-drawer:has(.nv-cat) .nv-drawer__panel{display:flex;flex-direction:column;width:min(1120px,96vw);padding:0;overflow:hidden}
  .nv-drawer:has(.nv-cat) .nv-drawer__head{position:static;flex:none;height:64px;margin:0;padding:0 14px 0 24px}
  .nv-drawer:has(.nv-cat) .nv-drawer__close{width:46px;height:46px}
  .nv-drawer:has(.nv-cat) .nv-drawer__title,.nv-drawer:has(.nv-cat) .nv-drawer__list{display:none}
  .nv-drawer:has(.nv-cat) .nv-drawer__menu{display:flex;flex:1;min-height:0}
  .nv-cat{display:grid;flex:1;min-height:0;grid-template-columns:clamp(230px,24vw,280px) minmax(0,1fr)}
  .nv-cat .nv-cat__list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px 12px 28px;background:#F6F8FC;border-right:1px solid var(--nv-line)}
  /* a destra niente scorrimento (Luigi): riquadri a colonne che si incastrano; se non entra, nuvola.js
     aggiunge is-tight (più compatto) e poi is-tighter; lo scorrimento resta solo come ultima riserva */
  .nv-cat .nv-cat__panes{min-height:0;overflow:hidden;padding:18px 24px 18px}
  .nv-cat .nv-cat__pane{max-height:100%}
  .nv-cat .nv-cat__grid{display:block;columns:3 210px;column-gap:14px}
  .nv-cat .nv-cat__card{break-inside:avoid;margin:0 0 12px}
  .nv-cat .nv-cat__head{margin-bottom:14px;padding:12px 14px}
  .nv-cat .is-tight .nv-cat__head{margin-bottom:10px;padding:8px 12px}
  .nv-cat .is-tight .nv-cat__bigico{width:40px;height:40px}
  .nv-cat .is-tight .nv-cat__title{font-size:1.15rem}
  .nv-cat .is-tight .nv-cat__card{margin-bottom:8px;padding:10px 12px}
  .nv-cat .is-tight .nv-cat__cardico{width:32px;height:32px}
  .nv-cat .is-tight .nv-cat__leaves{margin-top:8px;padding-top:6px}
  .nv-cat .is-tight .nv-cat__leaves a{padding:3px 0;font-size:.84rem}
  .nv-cat .is-tighter .nv-cat__grid{columns:4 170px}
  .nv-cat .is-tighter .nv-cat__cardhead small{display:none}
  .nv-cat .is-tighter .nv-cat__leaves a{padding:2px 0;font-size:.8rem}
  .nv-cat .nv-cat__panes.is-overflow{overflow-y:auto}
  .nv-cat .nv-cat__dep:hover{background:#fff}
  .nv-cat .nv-cat__dep.is-on{background:#fff;box-shadow:inset 3px 0 0 var(--t),0 1px 3px rgba(20,33,61,.08)}
}
@media (min-width:992px) and (max-width:1150px){.nv-cat .nv-cat__grid{columns:2 200px}}
/* il tema Classic colora di scuro tutti i link dell'intestazione (#header a): qui vincono i colori del menu */
#header .nv-cat .nv-cat__seeall,#header .nv-cat .nv-cat__seeall:hover{color:#fff}
#header .nv-cat .nv-cat__leaves a{color:var(--nv-muted)}
#header .nv-cat .nv-cat__leaves a:hover,#header .nv-cat .nv-cat__cardhead:hover,#header .nv-cat .nv-cat__title:hover{color:var(--t)}
#header .nv-cat .nv-cat__dep,#header .nv-cat .nv-cat__cardhead,#header .nv-cat .nv-cat__title{color:var(--nv-ink)}
#header .nv-cat .nv-cat__dep--camp .nv-cat__depname,#header .nv-qbar__link--camp{color:var(--nv-camp,#A8222A)}
#header .nv-qbar__link{color:var(--nv-ink)}
#header .nv-qbar__link:hover{color:var(--nv-cobalt)}

/* Account, carrello e punti nella riga di "Menu", prima della X (1.49.1): pillole piccole, solo col menu nuovo */
.nv-drawer__me{display:none}
.nv-drawer:has(.nv-cat) .nv-drawer__me{display:flex;align-items:center;gap:6px;min-width:0;margin:0 8px 0 auto}
.nv-me{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 11px;border:1px solid var(--nv-line);border-radius:999px;background:var(--nv-surface);white-space:nowrap;text-decoration:none}
#header .nv-me,.nv-drawer .nv-me{color:var(--nv-ink);text-decoration:none}
.nv-me:hover{border-color:var(--nv-cobalt);background:var(--nv-cobalt-soft);text-decoration:none}
.nv-me svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--nv-cobalt);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.nv-me .nv-leaf{flex:none}
.nv-me b{font-size:.82rem;font-weight:700;line-height:1}
.nv-me .nv-me__short{display:none}
@media (max-width:600px){
  .nv-drawer:has(.nv-cat) .nv-drawer__me{gap:4px;margin-right:6px}
  .nv-me{height:32px;padding:0 9px;gap:4px}
  .nv-me .nv-me__long{display:none}
  .nv-me .nv-me__short{display:inline}
}
@media (max-width:340px){.nv-drawer:has(.nv-cat) .nv-me--points{display:none}}

/* Sottocategorie nelle pagine delle categorie come i riquadri del menu (nuvola 1.50.0):
   icona, numero di prodotti, sotto-sottocategorie; colore del gruppo del menu (data-tone) */
.nv-subcats--new{--t:#2548C9;--ts:#EEF2FC;--tb:#D9E2F8}
.nv-subcats--new[data-tone="2"]{--t:#0E7A86;--ts:#E6F4F6;--tb:#C7E6EA}
.nv-subcats--new[data-tone="3"]{--t:#9A5F0C;--ts:#FBF3E4;--tb:#F0DFBE}
.nv-subcats--new[data-tone="4"]{--t:#B03A5B;--ts:#FCEDF1;--tb:#F3D3DC}
.nv-subcats--new[data-tone="5"]{--t:#6A4BC2;--ts:#F1EDFB;--tb:#DDD4F4}
.nv-subcats--new[data-tone="6"]{--t:#3C7A1E;--ts:#EEF6E8;--tb:#D5E9C8}
/* a colonne che si incastrano: ogni riquadro è alto quanto il suo contenuto, niente buchi bianchi */
#subcategories.nv-subcats--new ul.nv-sc__grid{display:block;columns:4 220px;column-gap:12px;list-style:none;margin:0;padding:0;width:100%}
#subcategories.nv-subcats--new ul.nv-sc__grid > li{float:none;width:100%;min-width:0;max-width:none;height:auto;margin:0 0 12px;padding:12px 14px;box-sizing:border-box;text-align:left;break-inside:avoid;-webkit-column-break-inside:avoid}
#subcategories.nv-subcats--new ul.nv-sc__grid > li:hover{background:transparent}
.nv-sc{display:flex;flex-direction:column;padding:12px;border:1px solid var(--tb);border-radius:14px;background:var(--nv-surface);transition:border-color .15s,box-shadow .15s}
.nv-sc:hover{border-color:var(--t);box-shadow:0 6px 18px -12px rgba(20,33,61,.4)}
.nv-sc svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#subcategories .nv-sc__head,.nv-sc__head{display:flex;align-items:center;gap:12px;color:var(--nv-ink);text-decoration:none}
#subcategories .nv-sc__head:hover{color:var(--t);text-decoration:none}
.nv-sc__ico{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:12px;background:var(--ts);color:var(--t)}
.nv-sc__ico svg{width:24px;height:24px}
.nv-sc__name{flex:1;min-width:0;font-weight:700;font-size:.95rem;line-height:1.25;text-transform:none}
.nv-sc__name small{display:block;margin-top:3px;font-weight:600;font-size:.78rem;color:var(--nv-muted)}
.nv-sc__arrow{flex:none;color:var(--nv-muted);stroke-width:2}
.nv-sc:hover .nv-sc__arrow{color:var(--t)}
.nv-sc{text-align:left}
#subcategories ul.nv-sc__leaves{display:block;list-style:none;margin:10px 0 2px;padding:8px 0 0 52px;border-top:1px dashed var(--tb);text-align:left}
#subcategories ul.nv-sc__leaves li{float:none;display:block;width:auto;min-width:0;max-width:none;height:auto;margin:0;padding:0;text-align:left}
#subcategories .nv-sc__leaves a{display:block;width:auto;max-width:none;height:auto;padding:4px 0;font-size:.86rem;font-weight:500;line-height:1.3;color:var(--nv-muted);text-align:left;text-decoration:none}
#subcategories .nv-sc__leaves a::before{content:"›";margin-right:7px;font-weight:700;color:var(--t)}
#subcategories .nv-sc__leaves a:hover{color:var(--t);text-decoration:none}
#subcategories .nv-sc__leaves .nv-sc__more{font-weight:700;color:var(--t)}
#subcategories .nv-sc__leaves .nv-sc__more::before{content:""}
/* se nessun riquadro ha sotto-sottocategorie, griglia normale a righe pari (le colonne lascerebbero buchi in fondo) */
@media (min-width:768px){
  #subcategories.nv-subcats--new ul.nv-sc__grid:not(:has(.nv-sc__leaves)){display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;columns:auto}
  #subcategories.nv-subcats--new ul.nv-sc__grid:not(:has(.nv-sc__leaves)) > li{margin:0}
}
/* telefono e tablet piccolo: una striscia che scorre di lato (icona sopra, nome sotto), senza sotto-sottocategorie */
@media (max-width:767px){
  #subcategories.nv-subcats--new ul.nv-sc__grid{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:8px;columns:auto;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -16px;padding:2px 16px 6px;width:auto}
  #subcategories.nv-subcats--new ul.nv-sc__grid::-webkit-scrollbar{display:none}
  #subcategories.nv-subcats--new ul.nv-sc__grid > li{flex:0 0 102px;width:102px;margin:0;padding:10px 8px;scroll-snap-align:start}
  .nv-sc__head{flex-direction:column;align-items:center;gap:6px;text-align:center}
  .nv-sc__ico{width:40px;height:40px}
  .nv-sc__name{font-size:.8rem;text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .nv-sc__name small{font-size:.72rem}
  .nv-sc__arrow,#subcategories ul.nv-sc__leaves{display:none}
}

/* Pagine categoria senza colonna di sinistra (6/10/2026, Luigi): il menu a comparsa mostra già tutte le
   categorie. La colonna resta nel codice (lì nasce il pannello dei filtri, che nuvola.js sposta nel body):
   la nascondiamo e i prodotti prendono tutta la larghezza. */
body#category #left-column{display:none!important}
body#category #content-wrapper{flex:0 0 100%;width:100%;max-width:100%}

/* Barra del menu con più collegamenti veloci (6/10/2026): sempre una riga; testo un po' più piccolo,
   e sotto i 1300 px i collegamenti scorrono di lato con una sfumatura a destra invece di andare a capo */
.nv-qbar{flex-wrap:nowrap;gap:6px 16px}
.nv-qbar__all{flex:none}
.nv-qbar__links{flex:1;min-width:0;flex-wrap:nowrap;gap:4px 16px;overflow-x:auto;scrollbar-width:none}
.nv-qbar__links::-webkit-scrollbar{display:none}
.nv-qbar__link{white-space:nowrap;font-size:.92rem}
@media (max-width:1299px){.nv-qbar__links{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent);padding-right:30px}}

/* nuvola 1.52.0 – "Avvisami quando torna disponibile" (scheda prodotto) */
.nv-notify{margin:.25rem 0 .75rem}
.nv-notify__open{display:inline-flex;align-items:center;gap:.5rem;width:100%;justify-content:center}
.nv-notify__form{background:#f5f8f3;border:1px solid #dfe8d8;border-radius:10px;padding:.85rem}
.nv-notify__label{display:block;font-weight:600;margin-bottom:.35rem}
.nv-notify__row{display:flex;gap:.5rem}
.nv-notify__row input{flex:1;min-width:0;border:1px solid #c9d3c2;border-radius:8px;padding:.55rem .7rem;font-size:1rem}
.nv-notify__row .btn{white-space:nowrap}
.nv-notify__note{font-size:.85rem;color:#5d6658;margin:.5rem 0 0}
.nv-notify__note a{color:inherit;text-decoration:underline}
.nv-notify__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.nv-notify__msg{margin:.5rem 0 0;padding:.6rem .8rem;border-radius:8px;font-size:.95rem}
.nv-notify__msg.is-ok{background:#e8f5e1;color:#24521b}
.nv-notify__msg.is-err{background:#fdecea;color:#8a1f15}
.nv-notify__msg a{color:inherit;text-decoration:underline;font-size:.85rem}
@media (max-width:420px){.nv-notify__row{flex-direction:column}}
.nv-notify [hidden]{display:none!important}
.nv-notify .nv-notify__label{text-align:left;width:auto;padding:0;font-size:.95rem}
.nv-notify .nv-notify__form{display:block}

/* nuvola 1.54.0 – prodotti proposti per arrivare alla spedizione gratuita */
.nv-fill{margin:.6rem 0;padding:.7rem .75rem;border:1px solid #dfe8d8;border-radius:10px;background:#f5f8f3}
.nv-fill__title{margin:0 0 .5rem;font-size:.9rem;line-height:1.35;color:#24311d}
.nv-fill__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}
.nv-fill__item{display:flex;align-items:center;gap:.6rem;background:#fff;border-radius:8px;padding:.35rem .45rem}
.nv-fill__img{flex:0 0 48px;width:48px;height:48px}
.nv-fill__img img{width:48px;height:48px;object-fit:contain;display:block}
.nv-fill__info{flex:1;min-width:0;display:flex;flex-direction:column}
.nv-fill .nv-fill__name{font-size:.84rem;line-height:1.25;color:#1f2a44;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-decoration:none}
.nv-fill .nv-fill__name:hover{text-decoration:underline}
.nv-fill__price{font-weight:700;font-size:.9rem;color:#1f2a44}
.nv-fill__price small{font-weight:400;color:#5d6658}
.nv-fill .nv-fill__add{flex:0 0 auto;padding:.35rem .7rem;font-size:.82rem;border-radius:8px;white-space:nowrap}
.nv-fill .nv-fill__add:disabled{opacity:.75}
.nv-fill--checkout{margin:0 0 1rem}

/* 1.54.1 – nel checkout le proposte restano chiuse su una riga */
.nv-fill--checkout{margin:.5rem 0 1rem;padding:.55rem .75rem}
.nv-fill--checkout > summary{cursor:pointer;list-style:none;margin:0;font-size:.88rem;display:flex;align-items:center;gap:.4rem}
.nv-fill--checkout > summary::-webkit-details-marker{display:none}
.nv-fill--checkout > summary::after{content:'';margin-left:auto;width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s;flex:0 0 auto}
.nv-fill--checkout[open] > summary::after{transform:rotate(-135deg)}
.nv-fill--checkout[open] > summary{margin-bottom:.5rem}

/* nuvola 1.56.0 – variante esaurita: altre varianti disponibili */
.nv-alt{margin:.35rem 0 .75rem;padding:.6rem .75rem;border-radius:10px;background:#f5f8f3;border:1px solid #dfe8d8}
.nv-alt__text{margin:0 0 .45rem;font-size:.9rem;color:#24311d}
.nv-alt__chips{display:flex;flex-wrap:wrap;gap:.4rem}
.nv-alt__chip{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;border:1px solid #c9d3c2;border-radius:999px;background:#fff;font-size:.88rem;font-weight:600;color:#1f2a44;cursor:pointer;line-height:1.2}
.nv-alt__chip:hover,.nv-alt__chip:focus-visible{border-color:#2f6b22;background:#eef6ea}
.nv-alt__dot{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.15);flex:0 0 auto}

/* 1.56.0 – da telefono le file che scorrono di lato (alternativi, acquistati insieme, foto, reparti)
   bloccavano lo scorrimento verticale della pagina quando il dito partiva lì (touch-action:pan-x) */
.nv-rail__track,.nv-product__gallery .product-images,.nv-accnav__list{touch-action:pan-x pan-y}
/* 2.0.3 – variante esaurita con misura e colore: righe "36x36 cm in altri colori" / "Bordeaux in altre misure" */
.nv-alt__line{margin:.45rem 0 .3rem;font-size:.85rem;font-weight:600;color:#3b4a33}
.nv-alt__more{align-self:center;font-size:.82rem;color:#5d6658}
/* 2.0.4 – variante esaurita con misura e colore: tabella completa delle combinazioni */
.nv-alt__grid{margin-top:.35rem}
.nv-alt__grid > summary{cursor:pointer;font-weight:700;color:#2f6b22;font-size:.9rem;list-style:none;display:inline-flex;align-items:center;gap:.35rem}
.nv-alt__grid > summary::-webkit-details-marker{display:none}
.nv-alt__grid > summary::before{content:'';width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.nv-alt__grid[open] > summary::before{transform:rotate(45deg)}
.nv-alt__scroll{overflow-x:auto;margin-top:.5rem;touch-action:pan-x pan-y}
.nv-alt__grid table{border-collapse:separate;border-spacing:3px;font-size:.78rem}
.nv-alt__grid th{font-weight:600;color:#3b4a33;text-align:center;vertical-align:bottom;padding:2px;line-height:1.15}
.nv-alt__grid thead th{min-width:46px;max-width:64px}
.nv-alt__grid thead th span:last-child{display:block;word-break:break-word}
.nv-alt__grid thead th .nv-alt__dot{display:block;margin:0 auto 3px}
.nv-alt__grid tbody th{text-align:left;white-space:nowrap;padding-right:6px}
.nv-alt__grid td{width:46px;height:34px;text-align:center;border-radius:6px;background:#fff;color:#9aa394}
.nv-alt__grid td.is-none{background:transparent}
.nv-alt__grid td.is-out{background:#f1f1ef}
.nv-alt__grid td.is-current{background:#fdecea;color:#b3261e;font-weight:700}
.nv-alt__cell{width:100%;height:100%;border:1px solid #9cc58c;border-radius:6px;background:#e8f5e1;color:#24521b;font-weight:700;cursor:pointer;padding:0}
.nv-alt__cell:hover,.nv-alt__cell:focus-visible{background:#2f6b22;color:#fff}
.nv-alt__legend{margin:.4rem 0 0;font-size:.78rem;color:#5d6658}
/* la tabella non deve allargare la pagina: scorre dentro il riquadro */
.nv-alt{max-width:100%;min-width:0}
.nv-alt__scroll{width:0;min-width:100%}
.nv-alt__grid thead th{min-width:58px;max-width:70px;font-size:.72rem}
.nv-alt__grid thead th span:last-child{word-break:normal;overflow-wrap:normal;hyphens:manual}
/* 2.0.5 – elenco completo per colore al posto della tabella */
.nv-alt__list{margin-top:.35rem}
.nv-alt__list > summary{cursor:pointer;font-weight:700;color:#2f6b22;font-size:.9rem;list-style:none;display:inline-flex;align-items:center;gap:.35rem}
.nv-alt__list > summary::-webkit-details-marker{display:none}
.nv-alt__list > summary::before{content:'';width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.nv-alt__list[open] > summary::before{transform:rotate(45deg)}
.nv-alt__group{padding:.45rem 0;border-top:1px solid #e3eadd}
.nv-alt__group:first-of-type{margin-top:.45rem}
.nv-alt__group .nv-alt__line{display:flex;align-items:center;gap:.4rem;margin:0 0 .35rem}
.nv-alt__group .nv-alt__chip{padding:.28rem .6rem;font-size:.82rem}

/* Bollini del modulo Sticker sulla foto delle card e nella scheda prodotto (Nuvola 2.1.0, 9/10/2026) */
.nv-stk__item--teal{background:#E5F1F3;border-color:#D2E7EB;color:#1E6A75}
.nv-thumb,.nv-card__img{position:relative}
.nv-stk--photo{position:absolute;left:8px;bottom:8px;z-index:2;flex-direction:column;align-items:flex-start;gap:4px;margin:0;pointer-events:none}
.nv-lcard__media .nv-stk--photo{left:20px}
.nv-stk--photo .nv-stk__item{gap:4px;padding:2px 8px 2px 6px;font-size:.7rem;font-weight:600;line-height:1.3;background:rgba(255,255,255,.94);box-shadow:0 1px 3px rgba(20,33,61,.08)}
.nv-stk--photo .nv-stk__item--green{border-color:#CFE5D7}
.nv-stk--photo .nv-stk__item--teal{border-color:#C9E2E6}
.nv-stk--photo .nv-stk__item--cobalt{border-color:#CBD7F5}
.nv-stk--photo .nv-stk__item--amber{border-color:#EADBC0;color:#7E5A0E}
.nv-stk--photo .nv-stk__item--grey{border-color:var(--nv-line)}
.nv-stk--photo .nv-stk__icon{width:12px;height:12px}
.nv-stk--product{gap:.35rem;margin:.1rem 0 .55rem}
.nv-stk--product .nv-stk__item{gap:.3rem;padding:.2rem .6rem .2rem .45rem;font-size:.78rem;font-weight:600;line-height:1.2}
.nv-stk--product .nv-stk__item--amber{color:#7E5A0E}
.nv-stk--product .nv-stk__icon{width:15px;height:15px}
@media (max-width:767px){
  .nv-stk--photo{left:5px;bottom:5px}
  .nv-lcard__media .nv-stk--photo{left:13px}
  .nv-stk--photo .nv-stk__item{font-size:.64rem;padding:1px 6px 1px 5px}
  .nv-stk--photo .nv-stk__icon{width:11px;height:11px}
  .nv-stk--product{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;touch-action:pan-x pan-y}
  .nv-stk--product::-webkit-scrollbar{display:none}
}

/* Caratteristiche in evidenza sotto "Descrizione" nella scheda prodotto (Nuvola 2.2.0, 9/10/2026) */
.nv-hl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;margin:2px 0 22px;padding:18px 0;border-top:1px solid var(--nv-line);border-bottom:1px solid var(--nv-line);list-style:none}
.nv-hl__item{display:flex;gap:14px;align-items:flex-start;margin:0;--b:var(--nv-bg);--t:var(--nv-muted)}
.nv-hl__item--green{--b:#EAF4EE;--t:#2F7F52}
.nv-hl__item--teal{--b:#E5F1F3;--t:#1E6A75}
.nv-hl__item--cobalt{--b:#E6ECFB;--t:#1D3BA8}
.nv-hl__item--amber{--b:#F7F0E4;--t:#7E5A0E}
.nv-hl__item--grey{--b:#EEF1F6;--t:#55607A}
.nv-hl__ico{flex:none;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--b);color:var(--t)}
.nv-hl__ico svg{width:26px;height:26px}
.nv-hl__t{margin:2px 0 4px;font-size:1rem;font-weight:700;line-height:1.3;color:var(--nv-ink)}
.nv-hl__d{margin:0;font-size:.9rem;line-height:1.5;color:var(--nv-muted)}
@media (max-width:767px){
  .nv-hl{gap:12px 14px;padding:14px 0}
  .nv-hl__item{gap:10px;align-items:center}
  .nv-hl__ico{width:40px;height:40px}
  .nv-hl__ico svg{width:21px;height:21px}
  .nv-hl__t{margin:0;font-size:.85rem}
  .nv-hl__d{display:none}
}

/* Tabelle tecniche nelle descrizioni dei prodotti: div.nv-table-scroll > table.nv-spec (9/10/2026) */
.nv-pdetails__desc,.nv-pdetails__desc .product-description{min-width:0}
.nv-table-scroll:has(> .nv-spec){clear:both;max-width:100%;margin:14px 0 18px;border:1px solid var(--nv-line);border-radius:10px;background:#fff;-webkit-overflow-scrolling:touch}
.nv-spec{width:100%;margin:0;border-collapse:separate;border-spacing:0;background:#fff;font-size:.88rem;line-height:1.35;font-variant-numeric:tabular-nums}
.nv-spec th,.nv-spec td{padding:.55rem .8rem;text-align:left;vertical-align:middle;white-space:nowrap;border:0;border-bottom:1px solid var(--nv-line);color:var(--nv-ink);background:#fff}
.nv-spec thead th{background:#EEF2FB;font-size:.8rem;font-weight:700}
.nv-spec tbody tr:nth-child(even) td{background:#F8FAFD}
.nv-spec tbody tr:last-child td{border-bottom:0}
.nv-spec th:first-child,.nv-spec td:first-child{position:sticky;left:0;z-index:1;font-weight:700;box-shadow:inset -1px 0 0 var(--nv-line)}
.nv-spec thead th:first-child{z-index:2}
@media (max-width:767px){.nv-spec{font-size:.82rem}.nv-spec th,.nv-spec td{padding:.5rem .65rem}}

/* Albero delle categorie nella colonna di sinistra: solo le 8 categorie principali (10/10/2026, OK di Luigi).
   Le categorie nuove figlie di Home fuori dal menu (196 Stoviglie usa e getta, 192, 193, 197, 198, 201, 202…)
   restano nascoste da sole; raggiungibili da "Scegli per tipo", Reparti, schede prodotto e sitemap.
   Per mostrarne una nuova: aggiungere il suo numero all'elenco qui sotto. */
.block-categories li[data-depth="0"]:not(:has(> a[href*="pietrangioli.it/3-"], > a[href*="pietrangioli.it/75-"], > a[href*="pietrangioli.it/68-"], > a[href*="pietrangioli.it/86-"], > a[href*="pietrangioli.it/115-"], > a[href*="pietrangioli.it/117-"], > a[href*="pietrangioli.it/125-"], > a[href*="pietrangioli.it/128-"])){display:none}

/* "Esplora per tipologia" a tutta larghezza (11/10/2026, Luigi): con 2-4 tipologie una riga sola (le colonne
   che si incastrano lasciavano una colonna vuota); senza sotto-sottocategorie le righe si allargano (auto-fit) */
@media (min-width:992px){
  #subcategories.nv-subcats--new ul.nv-sc__grid[data-n="2"],
  #subcategories.nv-subcats--new ul.nv-sc__grid[data-n="3"],
  #subcategories.nv-subcats--new ul.nv-sc__grid[data-n="4"]{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));align-items:start;gap:12px;columns:auto}
  #subcategories.nv-subcats--new ul.nv-sc__grid[data-n="2"] > li,
  #subcategories.nv-subcats--new ul.nv-sc__grid[data-n="3"] > li,
  #subcategories.nv-subcats--new ul.nv-sc__grid[data-n="4"] > li{margin:0}
  #subcategories.nv-subcats--new ul.nv-sc__grid:not(:has(.nv-sc__leaves)){grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
}

/* Icona della categoria accanto al titolo, col colore del suo gruppo del menu (11/10/2026, Luigi) */
.nv-cathead{--t:#2548C9;--ts:#EEF2FC}
.nv-cathead[data-tone="2"]{--t:#0E7A86;--ts:#E6F4F6}
.nv-cathead[data-tone="3"]{--t:#9A5F0C;--ts:#FBF3E4}
.nv-cathead[data-tone="4"]{--t:#B03A5B;--ts:#FCEDF1}
.nv-cathead[data-tone="5"]{--t:#6A4BC2;--ts:#F1EDFB}
.nv-cathead[data-tone="6"]{--t:#3C7A1E;--ts:#EEF6E8}
.nv-cathead__title{display:flex;align-items:center;gap:14px}
/* Classic dà a .block-category un'altezza minima di 220 px: dalla pagina 2 (senza descrizione) restava un riquadro vuoto */
.block-category.nv-cathead{min-height:0}
.nv-cathead__ico{display:inline-flex;align-items:center;justify-content:center;flex:none;width:56px;height:56px;border-radius:14px;background:var(--ts);color:var(--t)}
.nv-cathead__ico svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:767px){.nv-cathead__title{gap:10px}.nv-cathead__ico{width:44px;height:44px;border-radius:12px}.nv-cathead__ico svg{width:24px;height:24px}}

/* ==========================================================================
   Home nuova (nuvola 2.4.0, 13/10/2026, proposta "A + B" approvata da Luigi)
   templates/_partials/nuvola-home-nuova.tpl e nuvola-home-card.tpl; classi nvh-
   ========================================================================== */
/* la .row di Bootstrap della home ha margini di -15 px (difetto di prima): qui si compensano */
.nv-home.nvh{--nvh-g:24px;margin-left:15px;margin-right:15px;padding-bottom:56px}
.nvh .nv-wrap{padding-left:var(--nvh-g);padding-right:var(--nvh-g)}
.nvh [data-tone]{--t:#2548C9;--ts:#EEF2FC;--tb:#D9E2F8}
.nvh [data-tone="2"]{--t:#0E7A86;--ts:#E6F4F6;--tb:#C7E6EA}
.nvh [data-tone="3"]{--t:#9A5F0C;--ts:#FBF3E4;--tb:#F0DFBE}
.nvh [data-tone="4"]{--t:#B03A5B;--ts:#FCEDF1;--tb:#F3D3DC}
.nvh [data-tone="5"]{--t:#6A4BC2;--ts:#F1EDFB;--tb:#DDD4F4}
.nvh [data-tone="6"]{--t:#3C7A1E;--ts:#EEF6E8;--tb:#D5E9C8}
.nvh-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nvh-ico{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:12px;background:#EEF2FC;color:var(--nv-cobalt)}
.nvh-ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nvh-ico--green{background:#EAF4EE;color:var(--nv-bio)}
.nvh-ico--amber{background:#FBF3E4;color:#9A5F0C}
.nvh-ico--big{width:52px;height:52px}
.nvh .nvh-h2{margin:0;font-family:var(--nv-font);font-size:clamp(24px,2.3vw,32px);line-height:1.1;font-weight:800;letter-spacing:-.02em;color:var(--nv-ink);text-transform:none}
.nvh-sub{margin:6px 0 0;color:var(--nv-muted);font-size:15px}
.nvh-sec{padding-top:56px}
.nvh-sec--tight{padding-top:18px}
.nvh-head{display:flex;justify-content:space-between;align-items:flex-end;gap:8px 16px;flex-wrap:wrap;margin-bottom:22px}
.nvh .nvh-more{font-weight:700;font-size:15px;color:var(--nv-cobalt);text-decoration:none;white-space:nowrap}
.nvh .nvh-more:hover{text-decoration:underline}
.nvh .nvh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:23px;font-weight:700;font-size:15px;line-height:1.2;text-decoration:none;border:1px solid transparent;cursor:pointer}
.nvh .nvh-btn--white{background:#fff;color:var(--nv-ink)}
.nvh .nvh-btn--white:hover{background:var(--nv-cobalt-soft);color:var(--nv-ink)}
.nvh .nvh-btn--ghost{background:transparent;color:#fff;border-color:#5B6B93}
.nvh .nvh-btn--ghost:hover{border-color:#fff;color:#fff}
.nvh .nvh-btn--green{background:var(--nv-bio);color:#fff}
.nvh .nvh-btn--green:hover{background:#256843;color:#fff}
.nvh .nv-chip{display:inline-flex;align-items:center;min-height:36px;font-weight:600;white-space:nowrap}

/* apertura */
.nvh-hero{padding:44px 0 32px}
.nvh-hero__in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:center}
.nvh-hero__txt{display:flex;flex-direction:column;gap:18px;min-width:0}
.nvh-kicker{margin:0;font-size:14px;font-weight:700;color:var(--nv-cobalt);letter-spacing:.04em;text-transform:uppercase}
.nvh .nvh-h1{margin:0;font-family:var(--nv-font);font-size:clamp(34px,4.1vw,60px);line-height:1.02;font-weight:800;letter-spacing:-.03em;color:var(--nv-ink);max-width:15ch;text-transform:none}
.nvh-lead{margin:0;font-size:18px;line-height:1.5;color:var(--nv-muted);max-width:56ch}
.nvh-search{display:flex;align-items:center;gap:12px;max-width:660px;height:62px;padding:0 7px 0 22px;border-radius:31px;background:#fff;border:2px solid var(--nv-cobalt);box-shadow:0 10px 30px -18px rgba(37,72,201,.6)}
.nvh-search:focus-within{box-shadow:0 0 0 4px var(--nv-cobalt-soft)}
.nvh-search svg{width:22px;height:22px;flex:none;fill:none;stroke:var(--nv-cobalt);stroke-width:2;stroke-linecap:round}
.nvh .nvh-search input[type="search"]{flex:1;min-width:0;height:100%;margin:0;padding:0;border:0;outline:none;background:transparent;box-shadow:none;font:inherit;font-size:16px;color:var(--nv-ink)}
.nvh .nvh-search input[type="search"]:focus-visible{outline:none}
.nvh-search__btn{flex:none;height:46px;padding:0 26px;border:0;border-radius:23px;background:var(--nv-cobalt);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.nvh-search__btn:hover{background:var(--nv-cobalt-dark)}
.nvh-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.nvh-chips > span{flex:none;white-space:nowrap;font-size:14px;color:var(--nv-muted);font-weight:600}
/* foto in alto che scorrono (2.4.1): una sopra l'altra nella stessa cella, cambiano in dissolvenza */
.nvh-hero__media{position:relative;min-width:0}
.nvh-slides{display:grid;grid-template-rows:auto auto}
.nvh-slide{grid-area:1/1;position:relative;min-width:0;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility 0s linear .7s}
.nvh-slide.is-on{opacity:1;visibility:visible;transition:opacity .7s ease}
.nvh .nvh-slide__img{display:block}
.nvh .nvh-slide__img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:24px;background:var(--nv-line)}
.nvh .nvh-float{position:absolute;left:-20px;bottom:24px;display:flex;align-items:center;gap:12px;max-width:min(380px,90%);padding:14px 18px;background:#fff;border:1px solid var(--nv-line);border-radius:18px;box-shadow:0 16px 40px -22px rgba(20,33,61,.5);color:var(--nv-ink);text-decoration:none}
.nvh a.nvh-float:hover{border-color:var(--nv-cobalt);color:var(--nv-ink)}
.nvh-float .nvh-ico{background:var(--ts);color:var(--t)}
.nvh .nvh-float small{font-size:14px;font-weight:700;color:var(--nv-cobalt)}
.nvh-slides__nav{grid-area:2/1;display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px}
.nvh-slides__dots{display:flex;align-items:center;gap:8px}
.nvh-slides__dots button{width:10px;height:10px;padding:0;border:0;border-radius:5px;background:#C9D3EA;cursor:pointer;transition:width .3s,background .3s}
.nvh-slides__dots button[aria-current="true"]{width:28px;background:var(--nv-cobalt)}
.nvh-slides__arrow{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid var(--nv-line);border-radius:50%;background:#fff;color:var(--nv-ink);cursor:pointer}
.nvh-slides__arrow:hover{border-color:var(--nv-cobalt);color:var(--nv-cobalt)}
.nvh-slides__arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-reduced-motion:reduce){.nvh-slide,.nvh-slide.is-on{transition:none}}
.nvh-float strong,.nvh-trust strong{display:block;font-weight:800;line-height:1.25}
.nvh-float small,.nvh-trust small{display:block;font-size:13px;line-height:1.35;color:var(--nv-muted)}

/* rassicurazioni */
.nvh-trust-wrap{padding-top:8px}
.nvh-trust{list-style:none;margin:0;padding:6px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid var(--nv-line);border-radius:18px}
.nvh-trust li{display:flex;gap:12px;align-items:center;padding:14px 16px;min-width:0}
.nvh-camp{padding-top:28px}

/* reparti con la foto */
.nvh-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.nvh .nvh-tile{display:flex;flex-direction:column;min-width:0;border-radius:22px;overflow:hidden;background:var(--ts);border:2px solid transparent;color:var(--nv-ink);text-decoration:none;transition:border-color .15s,transform .15s}
.nvh .nvh-tile:hover{border-color:var(--tb);transform:translateY(-2px);color:var(--nv-ink)}
.nvh .nvh-tile img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;mix-blend-mode:multiply;padding:18px 18px 4px}
.nvh-tile__lab{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 22px 20px}
.nvh-tile__lab strong{font-size:20px;font-weight:800;line-height:1.2}
.nvh-tile__lab span{font-size:14px;font-weight:600;color:var(--nv-muted);white-space:nowrap}

/* card prodotto */
.nvh-grid{display:grid;gap:16px}
.nvh-grid--best,.nvh-grid--news{grid-template-columns:repeat(6,minmax(0,1fr))}
.nvh .nv-card{height:100%;min-width:0;display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:12px;background:#fff;border:1px solid var(--nv-line);border-radius:16px}
.nvh .nv-card-title{font-size:15px;line-height:1.3;margin:0 0 4px;font-weight:600}
.nvh .nv-meta{font-size:12px}
.nvh .nv-price{font-size:20px}
.nvh .nv-unit{font-size:13px}
.nvh-new{position:absolute;top:10px;right:10px;z-index:1;background:var(--nv-bio);color:#fff;font-size:12px;font-weight:800;line-height:1.4;padding:3px 8px;border-radius:6px}
.nvh .nvh-morebtn{display:none}

/* perché sceglierci */
.nvh-why{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);border-radius:26px;overflow:hidden;background:#fff;border:1px solid var(--nv-line)}
.nvh-why__dark{background:var(--nv-ink);color:#fff;padding:40px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.nvh-why__top{display:flex;flex-direction:column;gap:14px}
.nvh-why__kicker{margin:0;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#AFC0F5}
.nvh-why__year{margin:0;font-size:clamp(64px,7vw,104px);line-height:.9;font-weight:800;letter-spacing:-.04em;color:#fff}
.nvh .nvh-why__dark .nvh-h2{color:#fff}
.nvh-why__text{margin:0;color:#C9D3EA;font-size:16px;line-height:1.55;max-width:58ch}
.nvh-why__nums{display:flex;gap:16px 28px;flex-wrap:wrap;padding-top:6px}
.nvh-why__nums span{color:#AFC0F5;font-size:14px}
.nvh-why__nums strong{display:block;font-size:30px;line-height:1.15;letter-spacing:-.02em;color:#fff}
.nvh-why__cta{display:flex;gap:12px 16px;flex-wrap:wrap;align-items:center}
.nvh-why__cta span{font-size:14px;color:#AFC0F5}
.nvh-why__list{list-style:none;margin:0;padding:32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 26px;align-content:center}
.nvh-why__list li{display:flex;gap:14px;align-items:flex-start;min-width:0}
.nvh-why__list strong{display:block;font-size:17px;line-height:1.3}
.nvh-why__list small{display:block;margin-top:2px;font-size:14px;line-height:1.45;color:var(--nv-muted)}

/* tutti i reparti: una riga per gruppo */
.nvh-deps{background:#fff;border:1px solid var(--nv-line);border-radius:18px;padding:6px 0}
.nvh-deps__row{display:flex;align-items:center;gap:12px 20px;padding:16px 22px;border-top:1px solid var(--nv-line)}
.nvh-deps__row:first-child{border-top:0}
.nvh-deps__name{flex:0 0 180px;margin:0;display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;line-height:1.25;color:var(--t)}
.nvh-deps__name i{width:12px;height:12px;border-radius:50%;background:var(--t);flex:none}
.nvh-deps__list{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;gap:6px}
.nvh .nvh-pill{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:4px 13px 4px 5px;border-radius:22px;background:#fff;border:1px solid var(--nv-line);font-weight:700;font-size:14px;color:var(--nv-ink);text-decoration:none;white-space:nowrap}
.nvh .nvh-pill:hover{border-color:var(--t);color:var(--t)}
.nvh-pill small{font-weight:600;font-size:13px;color:var(--nv-muted)}
.nvh-pill__ico{display:inline-flex;align-items:center;justify-content:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--ts);color:var(--t)}
.nvh-pill__ico svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* per il tuo locale */
.nvh-uses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.nvh .nvh-use{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fff;border:1px solid var(--nv-line);border-radius:18px;color:var(--nv-ink);text-decoration:none}
.nvh .nvh-use:hover{border-color:var(--nv-cobalt);color:var(--nv-ink)}
.nvh-use__txt{flex:1;min-width:0}
.nvh-use__txt strong{display:block;font-size:16px;line-height:1.3}
.nvh-use__txt small{font-size:13px;font-weight:600;color:var(--nv-muted)}
.nvh-use__go{color:var(--nv-muted);font-size:22px;line-height:1}
.nvh-use--pizzeria .nvh-ico{background:#FBF3E4;color:#9A5F0C}
.nvh-use--bar .nvh-ico{background:#E6F4F6;color:#0E7A86}
.nvh-use--pasticceria .nvh-ico{background:#FCEDF1;color:#B03A5B}
.nvh-use--catering .nvh-ico{background:#F1EDFB;color:#6A4BC2}
.nvh-use--pulizia .nvh-ico{background:#EEF6E8;color:#3C7A1E}

/* fedeltà e aziende */
.nvh-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.nvh-duo > :only-child{grid-column:1/-1}
.nvh-box{border-radius:22px;padding:28px;display:flex;flex-direction:column;gap:14px}
.nvh-box p{margin:0;font-size:15px;line-height:1.5}
.nvh .nvh-box .nvh-h2{font-size:clamp(22px,2vw,28px)}
.nvh .nvh-box p.nvh-box__kicker,.nvh-box__kicker{margin:0;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.nvh-box--loyal{background:#EAF4EE}
.nvh-box--loyal .nvh-box__kicker{color:var(--nv-bio)}
.nvh-box--loyal p{color:#3F4B66}
.nvh-box--pro{background:var(--nv-ink);color:#fff}
.nvh .nvh-box--pro .nvh-h2{color:#fff}
.nvh-box--pro .nvh-box__kicker{color:#AFC0F5}
.nvh-box--pro p{color:#C9D3EA}
.nvh-box__cta{display:flex;gap:10px;flex-wrap:wrap}

/* linea bio */
.nvh-bio{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:22px;overflow:hidden;background:var(--nv-kraft-soft)}
.nvh-bio__txt{min-width:0;padding:32px;display:flex;flex-direction:column;gap:14px;justify-content:center}
.nvh-bio .nvh-box__kicker{color:#7E5A0E}
.nvh .nvh-bio__img{display:block;width:100%;height:100%;min-height:240px;max-height:340px;object-fit:contain;background:#fff}

/* lista su WhatsApp */
.nvh-wa{display:flex;align-items:center;gap:18px;padding:22px 26px;background:#fff;border:1px solid var(--nv-line);border-radius:18px;flex-wrap:wrap}
.nvh-wa__txt{flex:1 1 320px}
.nvh-wa__txt strong{display:block;font-size:20px;line-height:1.25}
.nvh-wa__txt small{display:block;font-size:15px;color:var(--nv-muted)}

/* le nostre guide */
.nvh-posts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nvh .nvh-post{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--nv-line);border-radius:18px;overflow:hidden;color:var(--nv-ink);text-decoration:none}
.nvh .nvh-post:hover{border-color:var(--nv-cobalt);color:var(--nv-ink)}
.nvh .nvh-post img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.nvh-post span{padding:16px 18px 18px;font-weight:800;font-size:17px;line-height:1.25}

/* quantità e "Aggiungi" più stretti: 6 card per riga da 1200 px */
.nvh .nv-qty{height:40px}
.nvh .nv-qty-btn{width:30px;height:38px;font-size:18px}
.nvh .nv-qty-input{width:32px;height:36px;font-size:15px}
.nvh .nv-add{flex:1 1 76px;min-height:40px;font-size:14px}
.nvh .nv-add-link{min-height:40px}
@media (max-width:1199px){
  .nvh-grid--best{grid-template-columns:repeat(4,minmax(0,1fr))}
  .nvh-grid--news{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nvh-hero__in{gap:32px}
  .nvh-why{grid-template-columns:1fr}
  .nvh-uses{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nvh .nvh-tile img{aspect-ratio:4/3}
}
@media (max-width:991px){
  .nvh-hero__in{grid-template-columns:1fr}
  .nvh-hero__media{display:none}
  .nvh-trust{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nvh-grid--best{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nvh-duo,.nvh-bio{grid-template-columns:1fr}
  .nvh-posts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nvh-deps__name{flex-basis:150px}
}
@media (max-width:767px){
  .nv-home.nvh{--nvh-g:16px;padding-bottom:40px}
  .nvh-hero{padding:22px 0 18px}
  .nvh-hero__txt{gap:12px}
  .nvh-kicker{font-size:12px}
  .nvh .nvh-h1{font-size:32px;line-height:1.04}
  .nvh-lead{font-size:15px}
  .nvh-search{height:52px;padding:0 5px 0 16px;gap:10px}
  .nvh-search svg{width:20px;height:20px}
  .nvh-search__btn{height:40px;padding:0 16px}
  .nvh-chips{flex-wrap:nowrap;overflow-x:auto;margin-right:calc(-1 * var(--nvh-g));padding-right:var(--nvh-g);scrollbar-width:none;touch-action:pan-x pan-y}
  .nvh-chips::-webkit-scrollbar{display:none}
  .nvh-trust{padding:0;gap:0}
  .nvh-trust li{padding:12px;border-bottom:1px solid var(--nv-line)}
  .nvh-trust li:nth-child(odd){border-right:1px solid var(--nv-line)}
  .nvh-trust li:nth-child(n+3){border-bottom:0}
  .nvh-trust .nvh-ico{display:none}
  .nvh-trust strong{font-size:14px}
  .nvh-sec{padding-top:32px}
  .nvh-sec--tight{padding-top:12px}
  .nvh-head{margin-bottom:14px}
  .nvh-sub{font-size:14px}
  .nvh .nvh-more{font-size:14px}
  .nvh-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .nvh .nvh-tile{border-radius:16px}
  .nvh .nvh-tile img{aspect-ratio:4/3;padding:10px 10px 2px}
  .nvh-tile__lab{flex-direction:column;align-items:flex-start;gap:0;padding:2px 14px 14px}
  .nvh-tile__lab strong{font-size:16px}
  .nvh-tile__lab span{font-size:13px}
  .nvh-grid{gap:10px}
  .nvh-grid--best{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nvh-grid--best > :nth-child(n+7){display:none}
  .nvh .nvh-morebtn{display:flex;align-items:center;justify-content:center;min-height:46px;margin-top:12px;border-radius:23px;background:#fff;border:1px solid var(--nv-line);font-weight:700;color:var(--nv-ink);text-decoration:none}
  .nvh-grid--news{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:calc(-1 * var(--nvh-g));padding-right:var(--nvh-g);padding-bottom:4px;scrollbar-width:none;touch-action:pan-x pan-y}
  .nvh-grid--news::-webkit-scrollbar{display:none}
  .nvh-grid--news > .nv-card{flex:0 0 70%;scroll-snap-align:start}
  .nvh .nv-card{padding:10px;gap:8px}
  .nvh .nv-card-title{font-size:14px}
  .nvh .nv-price{font-size:18px}
  /* da telefono card più basse: niente marca e niente quantità, solo "Aggiungi" (la quantità si cambia nel carrello) */
  .nvh .nv-meta,.nvh .nv-qty{display:none}
  .nvh .nv-buy{margin-top:8px}
  .nvh .nv-add{flex:1 1 100%}
  .nvh-why{border-radius:20px}
  .nvh-why__dark{padding:22px}
  .nvh-why__year{font-size:64px}
  .nvh-why__text{font-size:14px}
  .nvh-why__nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .nvh-why__nums span{font-size:12px}
  .nvh-why__nums strong{font-size:24px}
  .nvh-why__list{grid-template-columns:1fr;gap:0;padding:4px 18px}
  .nvh-why__list li{padding:12px 0;border-top:1px solid var(--nv-line)}
  .nvh-why__list li:first-child{border-top:0}
  .nvh-why__list .nvh-ico{width:36px;height:36px;border-radius:10px}
  .nvh-why__list .nvh-ico svg{width:20px;height:20px}
  .nvh-why__list strong{font-size:15px}
  .nvh-why__list small{font-size:13px}
  .nvh-deps__row{flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px}
  .nvh-deps__name{flex:none}
  .nvh-deps__list{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;touch-action:pan-x pan-y}
  .nvh-deps__list::-webkit-scrollbar{display:none}
  .nvh .nvh-pill{min-height:40px;font-size:13px}
  .nvh-pill__ico{width:30px;height:30px}
  .nvh-uses{gap:8px}
  .nvh .nvh-use{padding:12px;gap:10px;border-radius:14px}
  .nvh-use .nvh-ico{width:36px;height:36px;border-radius:10px}
  .nvh-use .nvh-ico svg{width:20px;height:20px}
  .nvh-use__txt strong{font-size:14px}
  .nvh-use__go{display:none}
  .nvh-box{padding:20px;border-radius:18px}
  .nvh-bio{border-radius:18px}
  .nvh-bio__txt{padding:20px}
  .nvh .nvh-bio__img{min-height:0;height:220px;max-height:none}
  .nvh-bio .nvh-chips{flex-wrap:wrap;overflow:visible;margin-right:0;padding-right:0}
  .nvh-wa{padding:18px}
  .nvh-wa .nvh-btn{width:100%}
  .nvh-posts{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;margin-right:calc(-1 * var(--nvh-g));padding-right:var(--nvh-g);scrollbar-width:none;touch-action:pan-x pan-y}
  .nvh-posts::-webkit-scrollbar{display:none}
  .nvh .nvh-post{flex:0 0 78%;scroll-snap-align:start;border-radius:16px}
  .nvh-post span{font-size:15px;padding:12px 14px 14px}
}
@media (prefers-reduced-motion:reduce){.nvh .nvh-tile{transition:none}.nvh .nvh-tile:hover{transform:none}}

/* Piè di pagina, colonna "Il tuo account" (13/10/2026, Luigi): pacco, resi e contatti staccati con una linea; "Esci" rosso */
.nv-footer__col li.nv-footer__sep{margin-top:4px;padding-top:14px;border-top:1px solid var(--nv-line)}
.nv-footer__col a.nv-footer__logout{display:inline-flex;align-items:center;gap:6px;color:#C8302A;font-weight:700}
.nv-footer__col a.nv-footer__logout:hover{color:#9E2420}
.nv-footer__logout svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Scheda prodotto: "Te ne servono di più? Scrivici su WhatsApp" sotto "Al momento ne abbiamo solo X" (13/10/2026) */
.nv-stock-limit .nv-stock-wa{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 0 0;min-height:42px;padding:8px 16px;border-radius:21px;background:#1C8C4E;color:#fff;font-weight:700;font-size:.92rem;line-height:1.25;text-decoration:none;text-align:center}
.nv-stock-limit .nv-stock-wa:hover,.nv-stock-limit .nv-stock-wa:focus{background:#157540;color:#fff;text-decoration:none}
.nv-stock-limit .nv-stock-wa svg{flex:none}

/* Ricerca nuova (nuvola 2.6.0): avviso "Nessun risultato esatto… ecco i prodotti più vicini" sopra la lista */
.nv-ltop__notice{flex:1 1 100%;order:-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0 0 12px;padding:12px 16px;border-radius:12px;background:var(--nv-kraft-soft);color:#6B4E17}
#js-product-list-top .nv-ltop__notice p{margin:0;color:#5C4210;font-size:.95rem;font-weight:600;line-height:1.4}
.nv-ltop__notice .nv-ltop__wa{display:inline-flex;align-items:center;min-height:40px;padding:6px 16px;border-radius:20px;background:#1C8C4E;color:#fff;font-weight:700;text-decoration:none}
.nv-ltop__notice .nv-ltop__wa:hover{background:#157540;color:#fff}
