/* IDEA3D25 Header v2 - isolated rebuild */

body.i3hf-header-active header.ct-header,
body.i3hf-header-active #header,
body.i3hf-header-active .site-header,
body.i3hf-header-active [data-id="type-1"] > header {
    display: none !important;
}

.i3h2,
.i3h2 * {
    box-sizing: border-box;
}

.i3h2 {
    position: relative;
    z-index: 99990;
    width: 100%;
    font-family: inherit;
}

.i3h2-topbar {
    height: 22px;
    background: linear-gradient(90deg,#5e22dd,#7b20ff,#5e22dd);
    color: #fff;
}

.i3h2-topbar-inner {
    display: flex;
    height: 22px;
    align-items: center;
    justify-content: center;
    width: min(calc(100% - 24px), 1400px);
    margin: 0 auto;
    font-size: 9px;
    font-weight: 800;
}

.i3h2-header {
    height: 64px;
    border-bottom: 1px solid #ebe8f0;
    background: rgba(255,255,255,.97);
    box-shadow: 0 5px 18px rgba(24,18,57,.035);
    backdrop-filter: blur(12px);
}

.i3h2-row {
    display: flex;
    width: min(calc(100% - 32px),1400px);
    height: 64px;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin: 0 auto;
}

.i3h2-brand {
    display: flex;
    flex: 0 0 150px;
    width: 150px;
    height: 46px;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    text-decoration: none !important;
}

.i3h2-logo {
    display: block !important;
    width: 145px !important;
    height: 44px !important;
    max-width: 145px !important;
    max-height: 44px !important;
    object-fit: contain !important;
    object-position: left center !important;
}

.i3h2-brand-text {
    color:#171449;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -.035em;
}

.i3h2-brand-text span {
    color:#7b20ff;
}

.i3h2-nav {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.i3h2-nav > a,
.i3h2-cats-btn {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 0 11px;
    border: 0;
    border-radius: 10px;
    color:#27243a !important;
    background: transparent;
    cursor: pointer;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
    text-decoration: none !important;
    transition: .15s ease;
}

.i3h2-nav > a:hover,
.i3h2-nav > a.is-active,
.i3h2-cats-btn:hover,
.i3h2-cats.is-open .i3h2-cats-btn {
    color:#6d28d9 !important;
    background:#f6f1ff;
}

.i3h2-nav .i3h2-personal {
    color:#fff !important;
    background: linear-gradient(135deg,#7b20ff,#5b36ea);
    box-shadow:0 6px 18px rgba(109,40,217,.18);
}

.i3h2-nav .i3h2-personal:hover {
    color:#fff !important;
    background:linear-gradient(135deg,#8a2cff,#6842f0);
}

.i3h2-cats {
    position: relative;
}

.i3h2-cats-btn svg {
    width:13px;
    height:13px;
    fill:currentColor;
    transition:transform .15s ease;
}

.i3h2-cats.is-open .i3h2-cats-btn svg {
    transform:rotate(180deg);
}

.i3h2-cats-menu {
    position:absolute;
    top:calc(100% + 10px);
    left:50%;
    width:min(680px,74vw);
    padding:14px;
    border:1px solid #e7e3ed;
    border-radius:17px;
    background:#fff;
    box-shadow:0 24px 70px rgba(32,22,69,.14);
    opacity:0;
    pointer-events:none;
    transform:translate(-50%,10px);
    transition:.16s ease;
}

.i3h2-cats.is-open .i3h2-cats-menu {
    opacity:1;
    pointer-events:auto;
    transform:translate(-50%,0);
}

.i3h2-cats-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:2px 3px 12px;
    border-bottom:1px solid #eeeaf4;
}

.i3h2-cats-head strong {
    color:#171449;
    font-size:12px;
}

.i3h2-cats-head a {
    color:#6d28d9 !important;
    font-size:10px;
    font-weight:850;
    text-decoration:none !important;
}

.i3h2-cats-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    padding-top:11px;
}

.i3h2-cats-grid > a {
    display:grid;
    grid-template-columns:32px minmax(0,1fr);
    align-items:center;
    gap:9px;
    padding:8px;
    border:1px solid transparent;
    border-radius:10px;
    text-decoration:none !important;
}

.i3h2-cats-grid > a:hover {
    border-color:#e7dcfb;
    background:#faf7ff;
}

.i3h2-cat-icon {
    display:grid;
    width:30px;
    height:30px;
    place-items:center;
    border-radius:8px;
    color:#6d28d9;
    background:#f2ebff;
}

.i3h2-cat-icon svg {
    width:16px;
    height:16px;
    fill:currentColor;
}

.i3h2-cats-grid strong {
    display:block;
    overflow:hidden;
    color:#2d2940;
    font-size:10px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.i3h2-cats-grid small {
    color:#9a95a5;
    font-size:8px;
}

.i3h2-actions {
    display:flex;
    flex:0 0 auto;
    align-items:center;
    gap:2px;
}

.i3h2-icon {
    position:relative;
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border:0;
    border-radius:50%;
    color:#1d1b2d !important;
    background:transparent;
    cursor:pointer;
    text-decoration:none !important;
}

.i3h2-icon:hover {
    color:#6d28d9 !important;
    background:#f7f3ff;
}

.i3h2-icon svg {
    width:18px;
    height:18px;
    fill:currentColor;
}

.i3h2-menu-btn {
    display:none;
    width:34px;
    height:34px;
    padding:7px;
    border:0;
    border-radius:9px;
    background:#f7f5fa;
    cursor:pointer;
}

.i3h2-menu-btn span {
    display:block;
    width:20px;
    height:2px;
    margin:3px 0;
    border-radius:99px;
    background:#222033;
}

.i3h2-overlay {
    position:fixed;
    z-index:99996;
    inset:0;
    background:rgba(15,10,35,.42);
    opacity:0;
    pointer-events:none;
    transition:.18s ease;
}

.i3h2-overlay.is-open {
    opacity:1;
    pointer-events:auto;
}

.i3h2-drawer {
    position:fixed;
    z-index:99999;
    top:0;
    right:0;
    bottom:0;
    width:min(340px,90vw);
    background:#fff;
    box-shadow:-20px 0 60px rgba(23,20,73,.16);
    opacity:0;
    pointer-events:none;
    transform:translateX(100%);
    transition:.2s ease;
}

.i3h2-drawer.is-open {
    opacity:1;
    pointer-events:auto;
    transform:translateX(0);
}

.i3h2-drawer-head {
    display:flex;
    height:60px;
    align-items:center;
    justify-content:space-between;
    padding:0 16px;
    border-bottom:1px solid #ece9f2;
}

.i3h2-drawer-head strong {
    color:#171449;
    font-size:14px;
}

.i3h2-drawer-head button {
    width:34px;
    height:34px;
    border:0;
    border-radius:9px;
    background:#f5f3f9;
    color:#312e48;
    font-size:22px;
    cursor:pointer;
}

.i3h2-drawer-search {
    display:flex;
    width:calc(100% - 28px);
    height:42px;
    align-items:center;
    gap:9px;
    margin:14px;
    padding:0 12px;
    border:1px solid #e6e2eb;
    border-radius:11px;
    background:#faf9fc;
    color:#646073;
    font-size:12px;
    font-weight:750;
}

.i3h2-drawer-search svg {
    width:17px;
    height:17px;
    fill:currentColor;
}

.i3h2-drawer-nav {
    display:grid;
    gap:4px;
    padding:0 14px;
}

.i3h2-drawer-nav > a,
.i3h2-drawer-nav > button {
    display:flex;
    min-height:44px;
    align-items:center;
    justify-content:space-between;
    padding:0 12px;
    border:0;
    border-radius:10px;
    background:transparent;
    color:#171449 !important;
    font-size:12px;
    font-weight:850;
    text-decoration:none !important;
}

.i3h2-drawer-personal {
    color:#fff !important;
    background:linear-gradient(135deg,#7b20ff,#5b36ea) !important;
}

.i3h2-drawer-cats {
    display:none;
    padding:3px 5px 8px 14px;
}

.i3h2-drawer-cats.is-open {
    display:grid;
}

.i3h2-drawer-cats a {
    display:flex;
    min-height:34px;
    align-items:center;
    justify-content:space-between;
    padding:6px 9px;
    color:#5e596c !important;
    font-size:10.5px;
    text-decoration:none !important;
}

.i3h2-drawer-cats small {
    color:#aaa5b2;
    font-size:8px;
}

.i3h2-search {
    position:fixed;
    z-index:100000;
    inset:0;
    display:grid;
    place-items:start center;
    padding:13vh 20px 20px;
    background:rgba(15,10,35,.72);
    backdrop-filter:blur(10px);
    opacity:0;
    pointer-events:none;
    transition:.18s ease;
}

.i3h2-search.is-open {
    opacity:1;
    pointer-events:auto;
}

.i3h2-search form {
    width:min(650px,100%);
    padding:24px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 24px 70px rgba(0,0,0,.22);
}

.i3h2-search form > strong {
    display:block;
    color:#171449;
    font-size:19px;
}

.i3h2-search form > span {
    display:block;
    margin:3px 0 14px;
    color:#777286;
    font-size:11px;
}

.i3h2-search form > div {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:9px;
}

.i3h2-search input[type="search"] {
    min-height:48px;
    padding:9px 13px;
    border:1px solid #ddd9e7;
    border-radius:11px;
}

.i3h2-search button[type="submit"] {
    min-width:100px;
    border:0;
    border-radius:11px;
    background:linear-gradient(135deg,#7b20ff,#5b36ea);
    color:#fff;
    font-weight:850;
}

.i3h2-search-close {
    position:absolute;
    top:26px;
    right:30px;
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:26px;
}

@media (max-width:1100px) {
    .i3h2-nav { display:none; }
    .i3h2-menu-btn { display:block; }
}

@media (max-width:700px) {
    .i3h2-topbar,
    .i3h2-topbar-inner {
        height:19px;
    }

    .i3h2-header,
    .i3h2-row {
        height:54px;
    }

    .i3h2-row {
        width:calc(100% - 16px);
        gap:8px;
    }

    .i3h2-brand {
        flex-basis:120px;
        width:120px;
        height:38px;
    }

    .i3h2-logo {
        width:116px !important;
        height:36px !important;
        max-width:116px !important;
        max-height:36px !important;
    }

    .i3h2-actions .i3h2-icon:not(.i3h2-cart) {
        display:none;
    }
}


/* ======================================================
   v2.1 IDEA3D25 BRAND VISUAL
   ====================================================== */

.i3h2-topbar {
    background: #24145f !important;
}

.i3h2-header {
    border-bottom: 1px solid rgba(123,32,255,.16) !important;
    background:
        linear-gradient(90deg,
            rgba(246,242,255,.98) 0%,
            rgba(255,255,255,.99) 35%,
            rgba(250,247,255,.99) 100%) !important;
    box-shadow: 0 5px 20px rgba(62,31,120,.07) !important;
}

.i3h2-nav > a,
.i3h2-cats-btn {
    color: #241b3b !important;
}

.i3h2-nav > a:hover,
.i3h2-nav > a.is-active,
.i3h2-cats-btn:hover,
.i3h2-cats.is-open .i3h2-cats-btn {
    color: #7027e8 !important;
    background: rgba(123,32,255,.08) !important;
}

.i3h2-icon {
    color: #241b3b !important;
}

.i3h2-icon:hover {
    color: #7027e8 !important;
    background: rgba(123,32,255,.08) !important;
}

.i3h2-cats-menu {
    border-color: rgba(123,32,255,.16) !important;
    background: #fff !important;
    box-shadow: 0 22px 60px rgba(54,27,105,.14) !important;
}

.i3h2-cat-icon {
    color: #7027e8 !important;
    background: #f2eaff !important;
}

.i3h2-cats-grid > a:hover {
    border-color: #dfd0fb !important;
    background: #f8f4ff !important;
}

.i3h2-menu-btn {
    background: rgba(123,32,255,.08) !important;
}

.i3h2-menu-btn span {
    background: #4f249f !important;
}

.i3h2-drawer {
    background:
        linear-gradient(180deg,#fbf9ff 0%,#ffffff 35%) !important;
}

.i3h2-drawer-nav > a:hover,
.i3h2-drawer-nav > button:hover {
    color: #7027e8 !important;
    background: rgba(123,32,255,.07) !important;
}

/* Personalizzati removed from navigation in v2.1 */
.i3h2-personal,
.i3h2-drawer-personal {
    display: none !important;
}


/* IDEA3D25 Header v2.4 - Mini cart globale */
.i3h2-cart-wrap {
    position: relative;
}

.i3h2-mini-cart {
    position: absolute;
    z-index: 100120;
    top: calc(100% + 12px);
    right: 0;
    width: min(390px, calc(100vw - 24px));
    max-height: min(620px, calc(100vh - 110px));
    overflow: auto;
    padding: 0;
    border: 1px solid #e8e2ef;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(24,18,57,.18);
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px) scale(.985);
    transform-origin: top right;
    transition: opacity .16s ease, transform .16s ease;
}

.i3h2-cart-wrap.is-open .i3h2-mini-cart {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

@media (hover:hover) and (pointer:fine) {
    .i3h2-cart-wrap:hover .i3h2-mini-cart {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0) scale(1);
    }
}

.i3h2-mini-head {
    position: sticky;
    z-index: 2;
    top: 0;
    display: flex;
    min-height: 52px;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    border-bottom: 1px solid #eee9f4;
    background: rgba(255,255,255,.98);
    backdrop-filter: blur(10px);
}

.i3h2-mini-head strong {
    color: #171449;
    font-size: 14px;
}

.i3h2-mini-head button {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border: 0;
    border-radius: 9px;
    background: #f5f1fa;
    color: #29243b;
    font-size: 20px;
    cursor: pointer;
}

.i3h2-mini-cart-content {
    padding: 14px;
}

.i3h2-mini-list {
    display: grid;
    gap: 8px;
    max-height: 330px;
    overflow: auto;
    padding-right: 2px;
}

.i3h2-mini-item {
    position: relative;
    display: grid;
    grid-template-columns: 58px minmax(0,1fr) 26px;
    gap: 10px;
    align-items: center;
    padding: 9px;
    border: 1px solid #eee9f4;
    border-radius: 13px;
    background: #fff;
}

.i3h2-mini-image {
    display: block;
    width: 58px;
    height: 58px;
    overflow: hidden;
    border-radius: 10px;
    background: #f7f5fa;
}

.i3h2-mini-thumb {
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    object-fit: cover !important;
}

.i3h2-mini-info {
    min-width: 0;
}

.i3h2-mini-name {
    display: -webkit-box;
    overflow: hidden;
    color: #28233a !important;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.35;
    text-decoration: none !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.i3h2-mini-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 6px;
    color: #827a8d;
    font-size: 9px;
}

.i3h2-mini-meta strong {
    color: #5f21d6;
    font-size: 10px;
}

.i3h2-mini-remove {
    display: grid;
    width: 26px;
    height: 26px;
    place-items: center;
    border-radius: 50%;
    color: #9a879f !important;
    background: #faf7fb;
    font-size: 18px;
    line-height: 1;
    text-decoration: none !important;
}

.i3h2-mini-remove:hover {
    color: #b42318 !important;
    background: #fff1f0;
}

.i3h2-mini-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
    padding: 12px 2px 8px;
    border-top: 1px solid #eee9f4;
    color: #332d43;
    font-size: 12px;
}

.i3h2-mini-summary strong {
    color: #171449;
    font-size: 15px;
}

.i3h2-mini-note {
    margin: 4px 0 11px;
    padding: 9px 10px;
    border-radius: 10px;
    color: #675e72;
    background: #f8f5fc;
    font-size: 9px;
    line-height: 1.4;
}

.i3h2-mini-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.i3h2-mini-actions a {
    display: flex;
    min-height: 42px;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border-radius: 11px;
    font-size: 10px;
    font-weight: 850;
    text-decoration: none !important;
}

.i3h2-mini-cart-btn {
    border: 1px solid #d9cdf0;
    color: #6325d6 !important;
    background: #fff;
}

.i3h2-mini-checkout-btn {
    color: #fff !important;
    background: linear-gradient(135deg,#7b20ff,#5d31e4);
    box-shadow: 0 8px 20px rgba(109,40,217,.18);
}

.i3h2-mini-empty {
    display: grid;
    place-items: center;
    gap: 5px;
    min-height: 155px;
    padding: 20px;
    text-align: center;
}

.i3h2-mini-empty-icon {
    font-size: 28px;
}

.i3h2-mini-empty strong {
    color: #29243b;
    font-size: 13px;
}

.i3h2-mini-empty small {
    color: #8c8497;
    font-size: 9px;
}

@media (max-width: 767px) {
    .i3h2-mini-cart {
        position: fixed;
        top: 76px;
        right: 12px;
        left: 12px;
        width: auto;
        max-height: calc(100vh - 92px);
        transform-origin: top center;
    }

    .i3h2-mini-list {
        max-height: 42vh;
    }

    .i3h2-mini-actions {
        grid-template-columns: 1fr;
    }
}


/* v2.6 - Vedi tutte le categorie */
.i3h2-cats-all{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:8px;
    padding:11px 12px;
    border-top:1px solid #ece6f3;
    border-radius:10px;
    color:#6422d7!important;
    background:#f8f4ff;
    font-size:10px;
    font-weight:900;
    text-decoration:none!important;
    transition:background .16s ease,transform .16s ease,color .16s ease;
}
.i3h2-cats-all:hover{background:#efe6ff;color:#4e18b0!important;transform:translateY(-1px)}
.i3h2-cats-all span:last-child{transition:transform .16s ease}
.i3h2-cats-all:hover span:last-child{transform:translateX(3px)}
.i3h2-drawer-all-cats{font-weight:900!important;color:#6422d7!important;background:#f8f4ff!important}
.i3h2-all-cats-page{max-width:1180px;margin:0 auto;padding:34px 18px 52px}
.i3h2-all-cats-head{text-align:center;max-width:760px;margin:0 auto 24px}
.i3h2-all-cats-head>span{color:#6d28d9;font-size:10px;font-weight:900;letter-spacing:.09em}
.i3h2-all-cats-head h1{margin:6px 0 7px;color:#211a2d;font-size:32px}
.i3h2-all-cats-head p{margin:0;color:#776f81;font-size:13px}
.i3h2-all-cats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.i3h2-all-cat-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid #e9e3ef;border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(38,25,65,.05);text-decoration:none!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.i3h2-all-cat-card:hover{transform:translateY(-4px);border-color:#ccb9ec;box-shadow:0 16px 34px rgba(73,42,124,.10)}
.i3h2-all-cat-media{aspect-ratio:16/9;overflow:hidden;background:#f6f3fa}
.i3h2-all-cat-media img{display:block;width:100%;height:100%;object-fit:cover}
.i3h2-all-cat-placeholder{display:grid;width:100%;height:100%;place-items:center;color:#6d28d9;font-size:28px;font-weight:900;background:linear-gradient(135deg,#f6f0ff,#eee5ff)}
.i3h2-all-cat-content{display:grid;gap:8px;padding:15px}
.i3h2-all-cat-content h2{margin:0;color:#282134;font-size:16px}
.i3h2-all-cat-content p{margin:0;color:#786f82;font-size:11px;line-height:1.5}
.i3h2-all-cat-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;color:#8b8295;font-size:9px}
.i3h2-all-cat-meta strong{color:#6422d7;font-size:10px}
.i3h2-all-cats-empty{padding:30px;text-align:center;color:#746b80}
@media(max-width:900px){.i3h2-all-cats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.i3h2-all-cats-page{padding:24px 12px 40px}.i3h2-all-cats-grid{grid-template-columns:1fr}.i3h2-all-cats-head h1{font-size:26px}}


/* =========================================================
   v2.8.0 — Header sempre visibile durante la navigazione
   ========================================================= */
body .i3h2-header,
body .i3hf-header,
body header.i3h2-header,
body header.i3hf-header,
body [data-i3h2-header]{
    position:sticky !important;
    top:0 !important;
    z-index:99990 !important;
    width:100% !important;
}

body .i3h2-header,
body .i3hf-header,
body [data-i3h2-header]{
    background:rgba(255,255,255,.97) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    box-shadow:0 8px 22px rgba(27,18,45,.06);
}

body.admin-bar .i3h2-header,
body.admin-bar .i3hf-header,
body.admin-bar [data-i3h2-header]{
    top:32px !important;
}

@media(max-width:782px){
    body.admin-bar .i3h2-header,
    body.admin-bar .i3hf-header,
    body.admin-bar [data-i3h2-header]{
        top:46px !important;
    }
}

body .i3h2-cats-dropdown,
body .i3h2-mini-cart,
body .i3h2-drawer,
body .i3h2-search-panel{
    z-index:100000 !important;
}

@media(max-width:820px){
    body .i3h2-header,
    body .i3hf-header,
    body [data-i3h2-header]{
        position:sticky !important;
        top:0 !important;
    }

    body.admin-bar .i3h2-header,
    body.admin-bar .i3hf-header,
    body.admin-bar [data-i3h2-header]{
        top:46px !important;
    }
}


/* =========================================================
   v2.9.0 — Feedback carrello + parziale sempre visibile
   ========================================================= */

body .i3h2-cart{
    width:auto !important;
    min-width:48px;
    padding:0 8px !important;
    gap:5px;
}

body .i3h2-cart > svg{
    flex:0 0 22px;
}

body .i3hf-cart-subtotal-wrap{
    display:inline-flex;
    align-items:center;
    min-width:0;
    margin-left:2px;
}

body .i3hf-cart-subtotal{
    color:#2d2338;
    font-size:10px;
    line-height:1;
    font-weight:900;
    white-space:nowrap;
}

body .i3hf-cart-subtotal .woocommerce-Price-amount{
    font:inherit;
}

body .i3h2-cart-toast{
    position:fixed;
    top:96px;
    right:18px;
    z-index:100100;
    display:grid;
    grid-template-columns:34px minmax(0,1fr) auto;
    align-items:center;
    gap:11px;
    width:min(410px,calc(100vw - 30px));
    padding:13px 14px;
    border:1px solid #e1d6ee;
    border-radius:15px;
    background:rgba(255,255,255,.98);
    box-shadow:0 18px 44px rgba(36,22,54,.18);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-12px) scale(.98);
    transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}

body .i3h2-cart-toast.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
}

body .i3h2-cart-toast-icon{
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border-radius:50%;
    background:#eaf9ef;
    color:#17853c;
    font-size:16px;
    font-weight:900;
}

body .i3h2-cart-toast-copy{
    display:grid;
    gap:2px;
    min-width:0;
}

body .i3h2-cart-toast-copy strong{
    color:#24192f;
    font-size:12px;
    line-height:1.2;
}

body .i3h2-cart-toast-copy small{
    overflow:hidden;
    color:#6d6476;
    font-size:9px;
    line-height:1.3;
    text-overflow:ellipsis;
    white-space:nowrap;
}

body .i3h2-cart-toast-copy span{
    color:#766c80;
    font-size:9px;
}

body .i3h2-cart-toast-copy span b{
    color:#5d22bc;
    font-size:10px;
}

body .i3h2-cart-toast>a{
    padding:8px 10px;
    border-radius:9px;
    background:#6d28d9;
    color:#fff !important;
    font-size:9px;
    font-weight:850;
    text-decoration:none !important;
    white-space:nowrap;
}

body .i3h2-cart-message-consumed{
    display:none !important;
}

body.admin-bar .i3h2-cart-toast{
    top:128px;
}

@media(max-width:782px){
    body.admin-bar .i3h2-cart-toast{
        top:142px;
    }
}

@media(max-width:680px){
    body .i3h2-cart{
        padding:0 5px !important;
        gap:3px;
    }

    body .i3hf-cart-subtotal{
        font-size:9px;
    }

    body .i3h2-cart-toast{
        top:82px;
        right:10px;
        grid-template-columns:32px minmax(0,1fr);
        width:calc(100vw - 20px);
        padding:12px;
    }

    body .i3h2-cart-toast>a{
        grid-column:2;
        justify-self:start;
        margin-top:3px;
    }

    body.admin-bar .i3h2-cart-toast{
        top:128px;
    }
}

@media(max-width:420px){
    body .i3hf-cart-subtotal{
        font-size:8px;
    }
}


/* =========================================================
   v2.9.1 — FIX definitivo: header realmente fisso
   ========================================================= */

body .i3h2{
    --i3h2-topbar-height:0px;
    --i3h2-header-height:0px;
    --i3h2-fixed-total-height:0px;
}

/* Topbar sempre in alto, se abilitata. */
body .i3h2 > .i3h2-topbar{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:100010 !important;
}

/* Barra principale sempre fissa: non dipende più da overflow/transform del tema. */
body .i3h2 > .i3h2-header{
    position:fixed !important;
    top:var(--i3h2-topbar-height) !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:100000 !important;
    margin:0 !important;
    transform:none !important;
}

/* Con admin bar WordPress spostiamo tutto sotto la toolbar. */
body.admin-bar .i3h2 > .i3h2-topbar{
    top:32px !important;
}

body.admin-bar .i3h2 > .i3h2-header{
    top:calc(32px + var(--i3h2-topbar-height)) !important;
}

@media(max-width:782px){
    body.admin-bar .i3h2 > .i3h2-topbar{
        top:46px !important;
    }

    body.admin-bar .i3h2 > .i3h2-header{
        top:calc(46px + var(--i3h2-topbar-height)) !important;
    }
}

/* Dropdown e mini-cart seguono l'header fisso. */
body .i3h2-cats-menu,
body .i3h2-mini-cart{
    z-index:100030 !important;
}

/* Drawer/search restano sopra a tutto. */
body .i3h2-drawer,
body .i3h2-search,
body .i3h2-overlay{
    z-index:100050 !important;
}

/* Disattiva qualunque vecchia regola sticky della v2.8/v2.9. */
body .i3h2-header,
body .i3hf-header,
body [data-i3h2-header]{
    position:fixed !important;
}

/* v2.9.2 — Svuota carrello */
.i3h2-mini-empty-btn{
    width:100%;
    min-height:38px;
    margin:4px 0 10px;
    border:1px solid #e4dce9;
    border-radius:9px;
    background:#fff;
    color:#74647c;
    font-size:10px;
    font-weight:800;
    cursor:pointer;
}
.i3h2-mini-empty-btn:hover{background:#faf7fd;color:#6d28d9;border-color:#cdbce0}
.i3h2-mini-empty-btn:disabled{opacity:.6;cursor:wait}


/* v2.9.3 — Svuota carrello sempre visibile nella testata mini-cart */
.i3h2-mini-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.i3h2-mini-head-actions{
    display:flex;
    align-items:center;
    gap:7px;
}

.i3h2-mini-empty-head{
    min-height:30px;
    padding:0 10px;
    border:1px solid #e0d5ea;
    border-radius:8px;
    background:#fff;
    color:#7a3dbd;
    font-size:9px;
    font-weight:850;
    cursor:pointer;
    white-space:nowrap;
}

.i3h2-mini-empty-head:hover{
    background:#faf6ff;
    border-color:#cbb7df;
    color:#6423a8;
}

.i3h2-mini-empty-head:disabled,
.i3h2-mini-empty-head.is-hidden{
    display:none !important;
}


/* =========================================================
   v2.9.4 — Svuota carrello: posizione e grafica definitive
   ========================================================= */

.i3h2-mini-head-actions,
.i3h2-mini-empty-head{
    display:none !important;
}

.i3h2-mini-empty-zone{
    margin:12px 14px 14px;
    padding-top:12px;
    border-top:1px solid #eee8f2;
}

.i3h2-mini-empty-zone.is-hidden{
    display:none !important;
}

.i3h2-mini-empty-cart{
    width:100%;
    display:flex;
    align-items:center;
    gap:11px;
    min-height:52px;
    padding:10px 12px;
    border:1px solid #eadfe8;
    border-radius:12px;
    background:#fff;
    color:#5f5367;
    text-align:left;
    cursor:pointer;
    box-sizing:border-box;
    transition:
        border-color .16s ease,
        background .16s ease,
        color .16s ease,
        transform .16s ease;
}

.i3h2-mini-empty-cart:hover{
    border-color:#d8c7e7;
    background:#fbf8fe;
    color:#6d28d9;
    transform:translateY(-1px);
}

.i3h2-mini-empty-cart:disabled{
    opacity:.5;
    cursor:not-allowed;
    transform:none;
}

.i3h2-mini-empty-cart-icon{
    display:grid;
    width:34px;
    height:34px;
    flex:0 0 34px;
    place-items:center;
    border-radius:10px;
    background:#f4eef9;
    color:#7c3aed;
}

.i3h2-mini-empty-cart-icon svg{
    width:17px;
    height:17px;
    fill:currentColor;
}

.i3h2-mini-empty-cart>span:last-child{
    display:grid;
    gap:2px;
    min-width:0;
}

.i3h2-mini-empty-cart strong{
    font-size:11px;
    line-height:1.2;
    font-weight:900;
}

.i3h2-mini-empty-cart small{
    color:#8a7e91;
    font-size:8px;
    line-height:1.25;
}

@media(max-width:680px){
    .i3h2-mini-empty-zone{
        margin:10px 12px 12px;
        padding-top:10px;
    }

    .i3h2-mini-empty-cart{
        min-height:48px;
        padding:9px 10px;
    }

    .i3h2-mini-empty-cart-icon{
        width:32px;
        height:32px;
        flex-basis:32px;
    }
}


/* v2.9.5 — stato funzionante svuotamento carrello */
.i3h2-mini-empty-cart.is-loading{
    justify-content:center;
    opacity:.72;
    cursor:wait;
}
.i3h2-mini-empty-cart-loading{
    width:100%;
    text-align:center;
    color:#6d28d9;
    font-size:10px;
    font-weight:850;
}


/* =========================================================
   v3.0.0 — IDEA3D25 PREMIUM HEADER RESTYLE
   Bianco / Nero / Viola
   ========================================================= */

:root{
    --i3h-white:#ffffff;
    --i3h-black:#15111a;
    --i3h-black-2:#241b2c;
    --i3h-purple:#7c3aed;
    --i3h-purple-2:#5b21b6;
    --i3h-purple-3:#a78bfa;
    --i3h-line:#ece6f2;
    --i3h-soft:#faf8fd;
    --i3h-shadow:0 12px 34px rgba(31,20,45,.10);
}

/* Header principale */
body .i3h2 > .i3h2-header{
    background:
        linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(252,249,255,.98) 56%,rgba(247,241,255,.98) 100%) !important;
    border-bottom:1px solid rgba(124,58,237,.10) !important;
    box-shadow:0 10px 30px rgba(32,20,48,.08) !important;
    backdrop-filter:blur(16px) saturate(135%) !important;
    -webkit-backdrop-filter:blur(16px) saturate(135%) !important;
}

/* sottile riga viola premium */
body .i3h2 > .i3h2-header::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:2px;
    background:linear-gradient(90deg,transparent 0%,#7c3aed 26%,#a78bfa 50%,#5b21b6 74%,transparent 100%);
    opacity:.55;
    pointer-events:none;
}

body .i3h2-row{
    max-width:1380px;
    min-height:66px;
    margin:0 auto;
    padding:0 22px;
    gap:22px;
}

/* Logo */
body .i3h2-logo{
    max-height:48px !important;
    width:auto;
    object-fit:contain;
    filter:drop-shadow(0 4px 10px rgba(91,33,182,.08));
}

body .i3h2-brand{
    display:flex;
    align-items:center;
    min-width:max-content;
}

/* Menu desktop */
body .i3h2-nav{
    gap:6px !important;
}

body .i3h2-nav>a,
body .i3h2-cats-btn{
    position:relative;
    display:flex;
    align-items:center;
    min-height:38px;
    padding:0 12px !important;
    border-radius:10px !important;
    color:var(--i3h-black) !important;
    font-size:12px !important;
    font-weight:800 !important;
    letter-spacing:-.01em;
    transition:
        color .16s ease,
        background .16s ease,
        transform .16s ease,
        box-shadow .16s ease !important;
}

body .i3h2-nav>a:hover,
body .i3h2-cats-btn:hover,
body .i3h2-nav>a.is-active{
    background:linear-gradient(135deg,#f4edff,#fbf8ff) !important;
    color:var(--i3h-purple-2) !important;
    transform:translateY(-1px);
    box-shadow:0 5px 14px rgba(124,58,237,.08);
}

body .i3h2-nav>a.is-active::after{
    content:"";
    position:absolute;
    left:12px;
    right:12px;
    bottom:4px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--i3h-purple),var(--i3h-purple-3));
}

/* Personalizzati più distintivo */
body .i3h2-nav .i3h2-personal{
    color:#fff !important;
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
    box-shadow:0 8px 18px rgba(109,40,217,.18);
}

body .i3h2-nav .i3h2-personal:hover{
    color:#fff !important;
    background:linear-gradient(135deg,#8b5cf6,#6d28d9) !important;
    box-shadow:0 10px 22px rgba(109,40,217,.25);
}

/* Azioni icone */
body .i3h2-actions{
    gap:7px !important;
}

body .i3h2-icon,
body .i3h2-menu-btn{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border:1px solid #e8e1ef !important;
    border-radius:12px !important;
    background:#fff !important;
    color:#201827 !important;
    box-shadow:0 4px 12px rgba(29,19,42,.04);
    transition:
        background .16s ease,
        color .16s ease,
        border-color .16s ease,
        transform .16s ease,
        box-shadow .16s ease !important;
}

body .i3h2-icon:hover,
body .i3h2-menu-btn:hover{
    border-color:#cbb8ea !important;
    background:linear-gradient(135deg,#f7f1ff,#fff) !important;
    color:var(--i3h-purple) !important;
    transform:translateY(-1px);
    box-shadow:0 7px 17px rgba(109,40,217,.10);
}

body .i3h2-icon svg{
    width:20px;
    height:20px;
    fill:currentColor;
}

/* Carrello più importante */
body .i3h2-cart{
    min-width:62px !important;
    padding:0 9px !important;
    border-color:#d9caeb !important;
    background:linear-gradient(135deg,#fff,#faf6ff) !important;
}

body .i3hf-cart-count{
    display:grid !important;
    min-width:18px;
    height:18px;
    place-items:center;
    border-radius:999px;
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
    color:#fff !important;
    font-size:9px !important;
    font-weight:900 !important;
    box-shadow:0 4px 10px rgba(109,40,217,.26);
}

body .i3hf-cart-subtotal{
    color:#24172f !important;
    font-size:10px !important;
    font-weight:900 !important;
}

/* Dropdown categorie */
body .i3h2-cats-menu{
    overflow:hidden;
    border:1px solid #e8deef !important;
    border-radius:18px !important;
    background:
        linear-gradient(145deg,#fff 0%,#fdfbff 55%,#f7f1ff 100%) !important;
    box-shadow:0 24px 54px rgba(31,20,44,.16) !important;
}

body .i3h2-cats-head{
    border-bottom:1px solid #eee7f3 !important;
    background:linear-gradient(90deg,#fff,#faf6ff) !important;
}

body .i3h2-cats-grid>a{
    border:1px solid transparent;
    border-radius:12px !important;
    transition:.16s ease !important;
}

body .i3h2-cats-grid>a:hover{
    border-color:#dbcceb;
    background:#fff !important;
    color:#6d28d9 !important;
    transform:translateY(-1px);
    box-shadow:0 6px 15px rgba(109,40,217,.08);
}

body .i3h2-cat-icon{
    background:linear-gradient(135deg,#f1e8ff,#faf7ff) !important;
    color:#6d28d9 !important;
}

body .i3h2-cats-all{
    color:#fff !important;
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
}

/* Mini-cart premium */
body .i3h2-mini-cart{
    overflow:hidden;
    border:1px solid #e5d9ed !important;
    border-radius:18px !important;
    background:linear-gradient(160deg,#fff 0%,#fcf9ff 100%) !important;
    box-shadow:0 26px 60px rgba(27,17,39,.20) !important;
}

body .i3h2-mini-head{
    min-height:52px;
    padding:0 15px !important;
    border-bottom:1px solid #eee7f3;
    background:linear-gradient(90deg,#fff,#faf6ff);
}

body .i3h2-mini-head strong{
    color:#211729;
    font-size:13px;
    font-weight:900;
}

body .i3h2-mini-item{
    border-radius:12px !important;
    transition:.15s ease;
}

body .i3h2-mini-item:hover{
    background:#faf7fd;
}

body .i3h2-mini-summary{
    background:#f8f4fc !important;
    border-radius:12px !important;
}

body .i3h2-mini-summary strong{
    color:#6d28d9 !important;
}

body .i3h2-mini-cart-btn{
    border:1px solid #d9c9e8 !important;
    background:#fff !important;
    color:#5b21b6 !important;
}

body .i3h2-mini-checkout-btn{
    border:0 !important;
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
    color:#fff !important;
    box-shadow:0 9px 20px rgba(109,40,217,.20);
}

/* Toast aggiunta prodotto */
body .i3h2-cart-toast{
    border:1px solid #e0d3ec !important;
    background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(249,245,255,.99)) !important;
    box-shadow:0 20px 50px rgba(31,20,45,.18) !important;
}

body .i3h2-cart-toast-icon{
    background:linear-gradient(135deg,#ede4ff,#f7f2ff) !important;
    color:#6d28d9 !important;
}

/* Search */
body .i3h2-search{
    background:rgba(20,14,27,.58) !important;
    backdrop-filter:blur(10px);
}

body .i3h2-search form{
    border:1px solid #e5d8ed !important;
    border-radius:20px !important;
    background:linear-gradient(145deg,#fff,#faf6ff) !important;
    box-shadow:0 26px 70px rgba(15,9,24,.28) !important;
}

/* Drawer mobile */
body .i3h2-drawer{
    border-left:1px solid #dfd2e9 !important;
    background:
        linear-gradient(180deg,#fff 0%,#fbf8fe 62%,#f4edff 100%) !important;
    box-shadow:-20px 0 50px rgba(20,13,29,.16) !important;
}

body .i3h2-drawer-head{
    background:linear-gradient(90deg,#fff,#f9f4ff);
    border-bottom:1px solid #eee5f4;
}

body .i3h2-drawer-nav>a,
body .i3h2-drawer-nav button{
    border-radius:10px !important;
    color:#211729 !important;
    font-weight:800 !important;
}

body .i3h2-drawer-nav>a:hover,
body .i3h2-drawer-nav button:hover{
    background:#f3ebff !important;
    color:#6d28d9 !important;
}

body .i3h2-drawer-personal{
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
    color:#fff !important;
}

/* Topbar */
body .i3h2-topbar{
    background:linear-gradient(90deg,#17121d 0%,#261832 46%,#5b21b6 100%) !important;
    color:#fff !important;
    border-bottom:1px solid rgba(255,255,255,.08);
}

body .i3h2-topbar-inner{
    font-size:10px !important;
    font-weight:800;
    letter-spacing:.02em;
}

/* micro-interazione scroll */
body .i3h2-header{
    transition:box-shadow .18s ease,background .18s ease !important;
}

/* Responsive */
@media(max-width:1100px){
    body .i3h2-row{
        padding:0 16px;
        gap:14px;
    }

    body .i3h2-nav>a,
    body .i3h2-cats-btn{
        padding:0 9px !important;
        font-size:11px !important;
    }
}

@media(max-width:820px){
    body .i3h2-row{
        min-height:62px;
        padding:0 12px;
    }

    body .i3h2-logo{
        max-height:42px !important;
    }

    body .i3hf-cart-subtotal{
        display:none !important;
    }

    body .i3h2-cart{
        min-width:42px !important;
        width:42px !important;
        padding:0 !important;
    }
}


/* =========================================================
   v3.0.1 — HEADER AURORA IDEA3D25
   Background accattivante, pulito e luminoso
   ========================================================= */
body .i3h2 > .i3h2-header{
    background:
        radial-gradient(circle at 10% 50%, rgba(139,92,246,.14) 0, rgba(139,92,246,0) 26%),
        radial-gradient(circle at 82% 20%, rgba(91,33,182,.11) 0, rgba(91,33,182,0) 28%),
        radial-gradient(circle at 55% 110%, rgba(196,181,253,.19) 0, rgba(196,181,253,0) 34%),
        linear-gradient(105deg,#ffffff 0%,#fbf8ff 38%,#f4edff 68%,#ffffff 100%) !important;
    border-bottom:1px solid rgba(124,58,237,.20) !important;
    box-shadow:0 8px 28px rgba(42,24,65,.09) !important;
}

body .i3h2 > .i3h2-header::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.50;
    background:
        linear-gradient(115deg,transparent 0 35%,rgba(255,255,255,.80) 43%,transparent 52%),
        radial-gradient(ellipse at 30% 0%,rgba(255,255,255,.9),transparent 42%);
}

body .i3h2 > .i3h2-header::after{
    content:"";
    position:absolute;
    left:5%;
    right:5%;
    bottom:-1px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,transparent,#8b5cf6 20%,#c4b5fd 50%,#6d28d9 80%,transparent);
    opacity:.75;
    box-shadow:0 0 12px rgba(124,58,237,.25);
}

body .i3h2-row{
    position:relative;
    z-index:2;
}

/* Menu torna elegante e leggero */
body .i3h2-nav>a,
body .i3h2-cats-btn{
    background:transparent !important;
    box-shadow:none !important;
}

body .i3h2-nav>a:hover,
body .i3h2-cats-btn:hover,
body .i3h2-nav>a.is-active{
    background:rgba(255,255,255,.70) !important;
    box-shadow:0 5px 15px rgba(91,33,182,.07) !important;
}

/* Icone: effetto vetro leggero sul nuovo background */
body .i3h2-icon,
body .i3h2-menu-btn{
    background:rgba(255,255,255,.78) !important;
    border-color:rgba(111,75,145,.14) !important;
    box-shadow:0 5px 15px rgba(41,24,59,.06) !important;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}

body .i3h2-icon:hover,
body .i3h2-menu-btn:hover{
    background:#fff !important;
    border-color:rgba(124,58,237,.32) !important;
    box-shadow:0 7px 18px rgba(109,40,217,.12) !important;
}

/* Carrello coerente */
body .i3h2-cart{
    background:rgba(255,255,255,.82) !important;
}

/* niente blocco viola invadente nel menu */
body .i3h2-nav .i3h2-personal{
    color:#211729 !important;
    background:transparent !important;
    box-shadow:none !important;
}
body .i3h2-nav .i3h2-personal:hover{
    color:#6d28d9 !important;
    background:rgba(255,255,255,.72) !important;
    box-shadow:0 5px 15px rgba(91,33,182,.07) !important;
}

@media(max-width:820px){
    body .i3h2 > .i3h2-header{
        background:
            radial-gradient(circle at 15% 30%,rgba(139,92,246,.15),transparent 32%),
            radial-gradient(circle at 90% 70%,rgba(196,181,253,.20),transparent 35%),
            linear-gradient(110deg,#fff,#f7f1ff 65%,#fff) !important;
    }
}


/* =========================================================
   v3.0.2 — Hamburger solo mobile/tablet
   ========================================================= */

/* Desktop: il menu principale è già visibile, quindi niente hamburger */
@media (min-width: 821px){
    body .i3h2-menu-btn,
    body [data-i3h2-menu-open]{
        display:none !important;
    }
}

/* Mobile/tablet: nasconde la navigazione desktop e mostra hamburger */
@media (max-width: 820px){
    body .i3h2-nav{
        display:none !important;
    }

    body .i3h2-menu-btn,
    body [data-i3h2-menu-open]{
        display:grid !important;
        place-items:center;
    }
}


/* =========================================================
   v3.0.3 — Icone header minimal premium
   ========================================================= */

body .i3h2-icon,
body .i3h2-menu-btn{
    width:38px !important;
    height:38px !important;
    border-radius:11px !important;
    border:1px solid rgba(52,42,63,.10) !important;
    background:rgba(255,255,255,.70) !important;
    color:#1e1724 !important;
    box-shadow:none !important;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}

body .i3h2-icon:hover,
body .i3h2-menu-btn:hover{
    color:#6d28d9 !important;
    background:rgba(255,255,255,.95) !important;
    border-color:rgba(109,40,217,.26) !important;
    box-shadow:0 6px 16px rgba(109,40,217,.10) !important;
    transform:translateY(-1px);
}

body .i3h2-line-icon{
    width:19px !important;
    height:19px !important;
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:1.7 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
}

body .i3h2-cart-icon{
    width:20px !important;
    height:20px !important;
}

body .i3h2-cart{
    min-width:56px !important;
    gap:5px !important;
    border-color:rgba(109,40,217,.16) !important;
}

body .i3hf-cart-count{
    min-width:17px !important;
    height:17px !important;
    padding:0 4px !important;
    font-size:8px !important;
    border:2px solid #fff;
    box-shadow:0 3px 8px rgba(109,40,217,.22) !important;
}

body .i3hf-cart-subtotal{
    font-size:9px !important;
    font-weight:850 !important;
}

/* Mobile: icone leggermente più compatte */
@media(max-width:820px){
    body .i3h2-icon,
    body .i3h2-menu-btn{
        width:36px !important;
        height:36px !important;
        border-radius:10px !important;
    }

    body .i3h2-line-icon{
        width:18px !important;
        height:18px !important;
    }
}


/* =========================================================
   v3.0.4 — ACTION ICONS IDEA3D25
   Più accattivanti, coerenti e leggibili
   ========================================================= */

body .i3h2-actions{
    display:flex;
    align-items:center;
    gap:8px !important;
}

/* Base comune */
body .i3h2-icon,
body .i3h2-menu-btn{
    position:relative;
    display:grid !important;
    width:40px !important;
    height:40px !important;
    place-items:center;
    padding:0 !important;
    overflow:visible;
    border:1px solid rgba(49,37,59,.12) !important;
    border-radius:13px !important;
    background:
        linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,243,255,.86)) !important;
    color:#19131f !important;
    box-shadow:
        0 5px 14px rgba(31,21,43,.05),
        inset 0 1px 0 rgba(255,255,255,.9) !important;
    transition:
        transform .16s ease,
        border-color .16s ease,
        box-shadow .16s ease,
        color .16s ease,
        background .16s ease !important;
}

/* piccolo bagliore viola */
body .i3h2-icon::before,
body .i3h2-menu-btn::before{
    content:"";
    position:absolute;
    inset:-1px;
    border-radius:inherit;
    pointer-events:none;
    opacity:0;
    background:linear-gradient(135deg,rgba(139,92,246,.22),rgba(91,33,182,.04));
    transition:opacity .16s ease;
}

body .i3h2-icon:hover,
body .i3h2-menu-btn:hover,
body .i3h2-cart-wrap.is-open .i3h2-cart{
    border-color:rgba(109,40,217,.32) !important;
    background:
        linear-gradient(145deg,#ffffff,#f5efff) !important;
    color:#6d28d9 !important;
    transform:translateY(-2px);
    box-shadow:
        0 9px 22px rgba(109,40,217,.13),
        inset 0 1px 0 rgba(255,255,255,.95) !important;
}

body .i3h2-icon:hover::before,
body .i3h2-menu-btn:hover::before,
body .i3h2-cart-wrap.is-open .i3h2-cart::before{
    opacity:1;
}

/* glyph wrapper */
body .i3h2-action-glyph{
    position:relative;
    z-index:2;
    display:grid;
    width:22px;
    height:22px;
    place-items:center;
}

body .i3h2-action-glyph svg{
    width:21px !important;
    height:21px !important;
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:1.75 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
    transition:transform .16s ease,stroke .16s ease !important;
}

body .i3h2-icon:hover .i3h2-action-glyph svg{
    transform:scale(1.05);
}

body .i3h2-icon-accent{
    stroke:#a78bfa !important;
    stroke-width:1.45 !important;
}

/* SEARCH: micro animazione */
body [data-i3h2-search-open]:hover .i3h2-action-search svg{
    transform:rotate(-4deg) scale(1.05);
}

/* ACCOUNT */
body .i3h2-action-account{
    border-radius:50%;
}

/* CART: leggermente più largo perché contiene badge/subtotale */
body .i3h2-cart{
    width:auto !important;
    min-width:58px !important;
    padding:0 9px !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
    gap:5px !important;
}

body .i3h2-action-cart{
    width:21px;
    height:21px;
}

/* Badge carrello */
body .i3hf-cart-count-wrap{
    position:relative;
    z-index:3;
}

body .i3hf-cart-count{
    display:grid !important;
    min-width:18px !important;
    height:18px !important;
    padding:0 4px !important;
    place-items:center;
    border:2px solid #fff !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#8b5cf6,#5b21b6) !important;
    color:#fff !important;
    font-size:8px !important;
    font-weight:950 !important;
    line-height:1 !important;
    box-shadow:0 4px 10px rgba(91,33,182,.28) !important;
}

body .i3hf-cart-subtotal{
    color:#24182e !important;
    font-size:9px !important;
    font-weight:900 !important;
    white-space:nowrap;
}

body .i3h2-cart:hover .i3hf-cart-subtotal,
body .i3h2-cart-wrap.is-open .i3hf-cart-subtotal{
    color:#6d28d9 !important;
}

/* HAMBURGER mobile: tre linee vere, animate e pulite */
body .i3h2-menu-btn{
    gap:0 !important;
}

body .i3h2-menu-btn>span{
    position:absolute;
    left:10px;
    width:18px;
    height:1.8px;
    border-radius:999px;
    background:currentColor !important;
    transition:
        transform .18s ease,
        top .18s ease,
        opacity .18s ease,
        width .18s ease;
}

body .i3h2-menu-btn>span:nth-child(1){top:12px}
body .i3h2-menu-btn>span:nth-child(2){top:19px;width:14px}
body .i3h2-menu-btn>span:nth-child(3){top:26px}

body .i3h2-menu-btn:hover>span:nth-child(2){
    width:18px;
}

/* Focus accessibile */
body .i3h2-icon:focus-visible,
body .i3h2-menu-btn:focus-visible{
    outline:3px solid rgba(139,92,246,.20) !important;
    outline-offset:2px !important;
    border-color:#8b5cf6 !important;
}

/* Tooltips semplici via aria-label */
body .i3h2-icon[aria-label]::after,
body .i3h2-menu-btn[aria-label]::after{
    content:attr(aria-label);
    position:absolute;
    top:calc(100% + 9px);
    left:50%;
    z-index:100500;
    padding:5px 7px;
    border-radius:7px;
    background:#1d1524;
    color:#fff;
    font-size:8px;
    font-weight:800;
    line-height:1;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    transform:translate(-50%,-3px);
    transition:.14s ease;
    pointer-events:none;
    box-shadow:0 7px 18px rgba(17,10,23,.18);
}

body .i3h2-icon[aria-label]:hover::after,
body .i3h2-menu-btn[aria-label]:hover::after{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0);
}

/* niente tooltip carrello: ha già mini-cart */
body .i3h2-cart[aria-label]::after{
    display:none !important;
}

@media(max-width:820px){
    body .i3h2-actions{
        gap:6px !important;
    }

    body .i3h2-icon,
    body .i3h2-menu-btn{
        width:37px !important;
        height:37px !important;
        border-radius:11px !important;
    }

    body .i3h2-action-glyph,
    body .i3h2-action-glyph svg{
        width:19px !important;
        height:19px !important;
    }

    body .i3h2-cart{
        width:39px !important;
        min-width:39px !important;
        padding:0 !important;
    }

    body .i3hf-cart-subtotal-wrap{
        display:none !important;
    }

    body .i3h2-icon[aria-label]::after,
    body .i3h2-menu-btn[aria-label]::after{
        display:none !important;
    }

    body .i3h2-menu-btn>span{
        left:9px;
        width:17px;
    }

    body .i3h2-menu-btn>span:nth-child(1){top:11px}
    body .i3h2-menu-btn>span:nth-child(2){top:17.5px;width:13px}
    body .i3h2-menu-btn>span:nth-child(3){top:24px}
}


/* v3.1.1 — REGOLA DEFINITIVA HAMBURGER
   Desktop: mai visibile. Mobile/tablet: visibile. */
@media screen and (min-width: 821px){
    html body .i3h2 .i3h2-menu-btn,
    html body .i3h2 [data-i3h2-menu-open],
    html body .i3h2 button.i3h2-menu-btn[data-i3h2-menu-open]{
        display:none !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
        width:0 !important;
        min-width:0 !important;
        height:0 !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
    }
}

@media screen and (max-width: 820px){
    html body .i3h2 button.i3h2-menu-btn[data-i3h2-menu-open]{
        display:grid !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
        width:37px !important;
        min-width:37px !important;
        height:37px !important;
    }
}
