/* ═══ GV · negozio, scheda prodotto, cataloghi + correzioni mobile ═══ */

/* ─── fascia titolo negozio / categorie (iniettata da gv-wow.php) ─── */
.gv-shopband { background: var(--gv-sand); border-bottom: 1px solid var(--gv-line); position: relative; overflow: hidden; }
.gv-shopband::after { content: ""; position: absolute; right: 7%; bottom: -1px; width: 220px; height: 250px; border: 1px solid var(--gv-gold); border-bottom: 0; border-radius: 0; opacity: .45; pointer-events: none; }
.gv-shopband-in { max-width: 1140px; margin: 0 auto; padding: 56px 20px 50px; position: relative; z-index: 1; }
.gv-shopband-eb { font-family: var(--gv-sans); font-size: 12px; font-weight: 600; letter-spacing: .26em; text-transform: uppercase; color: var(--gv-bx); display: flex; align-items: center; gap: 14px; margin: 0 0 12px; }
.gv-shopband-eb::before { content: ""; width: 34px; height: 1px; background: var(--gv-gold); }
.gv-shopband-eb a { color: var(--gv-bx); text-decoration: none; }
.gv-shopband-eb a:hover { color: var(--gv-bx-d); }
.gv-shopband-eb span { color: var(--gv-gold); }
.gv-shopband h1 { font-family: var(--gv-serif) !important; font-weight: 400 !important; font-size: clamp(36px, 4.4vw, 58px) !important; line-height: 1.05 !important; color: var(--gv-ink) !important; margin: 0 !important; letter-spacing: -.01em !important; text-transform: none !important; }
.gv-shopband h1 em { font-style: italic; color: var(--gv-bx); }
.gv-shopband-desc { font-family: var(--gv-sans); font-size: 16.5px; line-height: 1.7; color: var(--gv-ink-2); max-width: 640px; margin-top: 12px; }
.gv-shopband-desc p { margin: 0; }
.gv-shopband-count { font-family: var(--gv-sans); font-size: 13px; color: var(--gv-ink-2); margin-top: 14px; letter-spacing: .04em; }

/* sidebar negozio: titolo widget in stile */
.gv-site #secondary.sidebar .widget-title, .gv-site #secondary.sidebar .widget-title span {
    font-family: var(--gv-sans) !important; font-size: 12px !important; letter-spacing: .26em !important; color: var(--gv-ink) !important; font-weight: 600 !important;
}
.gv-site #secondary.sidebar .widget_product_categories li { font-family: var(--gv-sans); font-size: 15.5px; padding: 5px 0; border-bottom: 1px solid var(--gv-line); }
.gv-site #secondary.sidebar .widget_product_categories li:last-child { border-bottom: 0; }
.gv-site #secondary.sidebar .widget_product_categories li.current-cat > a { color: var(--gv-bx) !important; font-weight: 600; }

/* ─── card prodotto: titoli in serif, prezzo, pulsante pillola ─── */
.gv-site .blog-stream.masonry article.product .entry-title,
.gv-site .blog-stream.masonry article.product .entry-title a { font-family: var(--gv-sans) !important; font-weight: 500 !important; color: var(--gv-ink) !important; }
.gv-site .blog-stream.masonry article.product .featured-image .cart-button > a.button { border-radius: 999px !important; background: var(--gv-bx) !important; border-color: var(--gv-bx) !important; letter-spacing: .1em !important; }
.gv-site .blog-stream.masonry article.product .featured-image .cart-button > a.button:hover { background: var(--gv-bx-d) !important; border-color: var(--gv-bx-d) !important; }

/* ─── scheda prodotto ─── */
.gv-site.single-product .product_title, .gv-site.single-product h1.entry-title {
    font-family: var(--gv-serif) !important; font-weight: 500 !important; text-transform: none !important; letter-spacing: -.01em !important; color: var(--gv-ink) !important; line-height: 1.12 !important;
}
.gv-site.single-product .summary .price ins, .gv-site.single-product .summary .price > .woocommerce-Price-amount { font-family: var(--gv-serif); color: var(--gv-bx) !important; }
.gv-site.single-product .summary .single_add_to_cart_button {
    border-radius: 999px !important; background: var(--gv-bx) !important; border-color: var(--gv-bx) !important; letter-spacing: .12em !important; padding-left: 26px !important; padding-right: 26px !important;
}
.gv-site.single-product .summary .single_add_to_cart_button:hover { background: var(--gv-bx-d) !important; }
.gv-site.single-product .woocommerce-tabs .tabs li a, .gv-site.single-product .tab-titles a { font-family: var(--gv-sans) !important; letter-spacing: .14em !important; }
.gv-site.single-product .woocommerce-tabs .panel h2, .gv-site.single-product .related.products > h2, .gv-site.single-product .upsells.products > h2 {
    font-family: var(--gv-serif) !important; font-weight: 500 !important; color: var(--gv-ink) !important; text-transform: none !important; letter-spacing: 0 !important;
}

/* ─── cataloghi pdflip ─── */
.gv .gv-books .pdflip-books { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 44px 36px; justify-items: center; }
.gv .gv-books ._df_thumb { width: 100% !important; max-width: 260px; height: auto !important; margin: 0 !important; cursor: pointer; perspective: 900px; }
.gv .gv-books ._df_book-cover {
    width: 100% !important; height: auto !important; aspect-ratio: 7 / 10; background-size: cover !important; background-position: center !important; position: relative;
    border-radius: 2px 8px 8px 2px; box-shadow: -6px 0 0 -2px var(--gv-sand-2), 0 22px 40px -22px rgba(36, 28, 25, .55); transition: transform .5s var(--gv-ease), box-shadow .5s;
    transform-origin: left center;
}
.gv .gv-books ._df_thumb:hover ._df_book-cover { transform: rotateY(-14deg) translateX(4px); box-shadow: -6px 0 0 -2px var(--gv-sand-2), 0 30px 50px -22px rgba(36, 28, 25, .6); }
.gv .gv-books ._df_book-title {
    position: absolute !important; left: 0; right: 0; top: 100% !important; bottom: auto !important; margin-top: 16px; background: none !important; color: var(--gv-ink) !important;
    font-family: var(--gv-serif) !important; font-size: 17px !important; line-height: 1.3 !important; text-align: center; padding: 0 !important; opacity: 1 !important; transform: none !important; text-transform: none !important;
}
.gv .gv-books ._df_thumb { padding-bottom: 54px; position: relative; box-shadow: none !important; background: none !important; border: 0 !important; }
.gv .gv-books ._df_book-cover { overflow: visible !important; }

/* ═══ MOBILE ═══ */
@media (max-width: 767px) {
    /* logo header: non deve coprire le icone */
    .gv-site .site-header .site-title img { max-height: 50px !important; width: auto !important; }
    /* barra fiducia 2×2 compatta */
    .gv.gv-trust > .e-con-inner { display: grid !important; grid-template-columns: 1fr 1fr; }
    .gv .gv-trust-item { padding: 18px 8px !important; border-right: 0 !important; border-bottom: 1px solid rgba(217, 191, 149, .22); }
    .gv .gv-trust-item:nth-child(odd) { border-right: 1px solid rgba(217, 191, 149, .22) !important; padding-right: 12px !important; }
    .gv .gv-trust-item:nth-child(even) { padding-left: 14px !important; }
    .gv .gv-trust-item:nth-last-child(-n+2) { border-bottom: 0; }
    .gv .gv-trust-item .elementor-icon-box-wrapper { flex-direction: column; align-items: flex-start; gap: 10px; }
    .gv .gv-trust-item .elementor-icon { width: 40px; height: 40px; font-size: 17px; }
    .gv .gv-trust-item .elementor-icon-box-title { font-size: 16px; }
    .gv .gv-trust-item .elementor-icon-box-description { font-size: 12.5px; }
    /* griglie prodotti nelle pagine: 4 prodotti, pulsante leggibile */
    .gv .gv-products article.product:nth-child(n+5), .gv .gv-products li.product:nth-child(n+5) { display: none !important; }
    .gv .gv-products .featured-image .cart-button { padding: 10px !important; }
    body .gv .gv-products article.product .featured-image .cart-button > a.button {
        font-size: 12px !important; letter-spacing: .12em !important; padding: 0 14px !important; height: 44px !important;
    }
    /* metodo: step più compatti */
    .gv .gv-step { padding: 22px 20px !important; }
    .gv .gv-step-n .elementor-heading-title { font-size: 34px; }
    .gv .gv-step-title .elementor-heading-title { font-size: 20px; }
    /* fascia negozio */
    .gv-shopband-in { padding: 36px 20px 32px; }
    .gv-shopband::after { width: 120px; height: 140px; right: -20px; }
    /* cataloghi due per riga */
    .gv .gv-books .pdflip-books { grid-template-columns: 1fr 1fr; gap: 30px 18px; }
    .gv .gv-books ._df_book-title { font-size: 15px !important; }
}


