/* SITO BASE VIVACE — allegro e pop.
 * Testata rovesciata (foto a sinistra con bordo bianco, testo a destra), adesivi inclinati, tasti 3D,
 * vantaggi come tessere colorate, card con contorno scuro e ombra piena, caratteri tondi. */

body.pd-stile-vivace { font-family: 'Nunito', system-ui, sans-serif; }
body.pd-stile-vivace .pdmh-sec h1, body.pd-stile-vivace .pdmh-sec h2, body.pd-stile-vivace .pdmh-sec h3,
body.pd-stile-vivace .entry-title, body.pd-stile-vivace .product_title { font-family: 'Fredoka', system-ui, sans-serif !important; font-weight: 700 !important; letter-spacing: 0 !important; }

/* ── Testata rovesciata ─────────────────────────────────────────── */
body.pd-stile-vivace .pdmh-hero { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
body.pd-stile-vivace .pdmh-hero-fig { order: -1; padding: 30px 40px 60px 20px; }
body.pd-stile-vivace .pdmh-foto { border-radius: 38px !important; transform: rotate(-3deg); box-shadow: 0 0 0 10px #fff, 14px 18px 0 10px #2c2056 !important; }
body.pd-stile-vivace .pdmh-foto::after { display: none; }
body.pd-stile-vivace .pdmh-alone { display: none !important; }
body.pd-stile-vivace .pdmh-chip { border-radius: 999px !important; border: 3px solid #2c2056; box-shadow: 4px 4px 0 #2c2056 !important; animation: none !important; }
body.pd-stile-vivace .pdmh-chip-cb { top: 0; left: auto; right: 0; transform: rotate(6deg); background: #ffd23f !important; }
body.pd-stile-vivace .pdmh-chip-voto { top: auto; bottom: 24%; right: auto; left: -10px; transform: rotate(-5deg); background: #fff !important; }
body.pd-stile-vivace .pdmh-chip-prod { bottom: 0; left: auto; right: 4%; transform: rotate(3deg); }
body.pd-stile-vivace .pdmh-hero h1 { font-size: clamp(40px, 5vw, 70px) !important; line-height: 1 !important; }
body.pd-stile-vivace .pdmh-hero h1 em { background: none !important; -webkit-text-fill-color: #ffd23f !important; color: #ffd23f !important; }
body.pd-stile-vivace .pdmh-eyebrow { transform: rotate(-2deg); display: inline-flex; background: #ff3d7f !important; color: #fff !important; border: 0 !important; }
body.pd-stile-vivace .pdmh-kpi { border-radius: 24px; border: 3px solid #2c2056; box-shadow: 5px 5px 0 #2c2056; background: rgba(255,255,255,.1); }

/* ── Tasti 3D ───────────────────────────────────────────────────── */
body.pd-stile-vivace .pdmh-btn, body.pd-stile-vivace .pdmh-scopri .elementor-button, body.pd-stile-vivace .tk-pcard__btn, body.pd-stile-vivace .tkpo-card__actions a {
	border-radius: 999px !important; font-family: 'Fredoka', sans-serif !important; font-weight: 600 !important; font-size: 16px !important;
	box-shadow: 0 5px 0 #2c2056 !important; transform: translateY(0); transition: transform .12s, box-shadow .12s !important;
}
body.pd-stile-vivace .pdmh-btn:hover, body.pd-stile-vivace .pdmh-scopri .elementor-button:hover, body.pd-stile-vivace .tk-pcard__btn:hover { transform: translateY(3px); box-shadow: 0 2px 0 #2c2056 !important; }

/* ── Titoli: occhiello adesivo ──────────────────────────────────── */
body.pd-stile-vivace .pdmh-occhiello { display: inline-block; padding: 6px 14px; border-radius: 999px; background: #ffd23f; color: #2c2056 !important; transform: rotate(-3deg); font-weight: 800 !important; }
body.pd-stile-vivace .pdmh-titolo h2 { font-size: clamp(32px, 3.6vw, 50px) !important; margin-top: 10px !important; }
body.pd-stile-vivace .pdmh-titolo h2 em { background: none !important; -webkit-text-fill-color: #ff3d7f !important; color: #ff3d7f !important; }
body.pd-stile-vivace .pdmh-titolo::after { width: 90px; height: 10px; border-radius: 999px; background: repeating-linear-gradient(90deg, #ff3d7f 0 18px, #ffd23f 18px 36px, #4ade80 36px 54px) !important; }

/* ── Vantaggi: tessere colorate ─────────────────────────────────── */
body.pd-stile-vivace .pdmh-vantaggi { gap: 18px; }
body.pd-stile-vivace .pdmh-v { flex-direction: column; border-radius: 26px !important; border: 3px solid #2c2056 !important; box-shadow: 6px 6px 0 #2c2056 !important; backdrop-filter: none !important; padding: 22px; }
body.pd-stile-vivace .pdmh-v:nth-child(1) { background: #ff3d7f !important; transform: rotate(-1.5deg); }
body.pd-stile-vivace .pdmh-v:nth-child(2) { background: #ffd23f !important; transform: rotate(1deg); }
body.pd-stile-vivace .pdmh-v:nth-child(3) { background: #4ade80 !important; transform: rotate(-1deg); }
body.pd-stile-vivace .pdmh-v:nth-child(4) { background: #fb923c !important; transform: rotate(1.5deg); }
body.pd-stile-vivace .pdmh-v h3, body.pd-stile-vivace .pdmh-v p { color: #2c2056 !important; }
body.pd-stile-vivace .pdmh-v-ic { background: #fff !important; color: #2c2056 !important; border-radius: 50% !important; box-shadow: none !important; }

/* ── Card prodotto: contorno e ombra piena, fondi pastello ──────── */
body.pd-stile-vivace .tk-pcard { border-radius: 26px !important; border: 3px solid #2c2056 !important; box-shadow: 7px 7px 0 #2c2056 !important; }
body.pd-stile-vivace .tk-vetrina-griglia > .tk-pcard:nth-child(4n+1) { background: #fff1f5 !important; }
body.pd-stile-vivace .tk-vetrina-griglia > .tk-pcard:nth-child(4n+2) { background: #fffbe6 !important; }
body.pd-stile-vivace .tk-vetrina-griglia > .tk-pcard:nth-child(4n+3) { background: #ecfdf5 !important; }
body.pd-stile-vivace .tk-vetrina-griglia > .tk-pcard:nth-child(4n+4) { background: #fff7ed !important; }
body.pd-stile-vivace .tk-pcard:hover { transform: translate(-3px, -3px) !important; box-shadow: 10px 10px 0 #2c2056 !important; }
body.pd-stile-vivace .tk-pcard__thumb-wrap { border-radius: 22px 22px 0 0 !important; border-bottom: 3px solid #2c2056; }
body.pd-stile-vivace .tk-pcard__details, body.pd-stile-vivace .tk-pcard__footer { background: transparent !important; }
body.pd-stile-vivace .tk-pcard__badge-sito { display: none !important; }
body.pd-stile-vivace .tk-pcard__details h2, body.pd-stile-vivace .tk-pcard__details h2 a { font-family: 'Fredoka', sans-serif !important; font-weight: 600 !important; font-size: 17px !important; color: #2c2056 !important; }
body.pd-stile-vivace .onsale { transform: rotate(-8deg); }

/* ── Altri blocchi ──────────────────────────────────────────────── */
body.pd-stile-vivace .tkpo-card { border-radius: 26px !important; border: 3px solid #2c2056 !important; box-shadow: 7px 7px 0 #2c2056 !important; }
body.pd-stile-vivace .pdmh-come, body.pd-stile-vivace .pdmh-contatti { border-radius: 34px !important; border: 3px solid #2c2056 !important; box-shadow: 8px 8px 0 #2c2056 !important; }
body.pd-stile-vivace .tkwr-item { border-radius: 24px !important; border: 3px solid #2c2056 !important; box-shadow: 5px 5px 0 #2c2056 !important; }
body.pd-stile-vivace .pdmh-contatti-lista li { border-radius: 999px !important; border: 3px solid #2c2056; box-shadow: 4px 4px 0 #2c2056 !important; }
body.pd-stile-vivace .pdmh-sec-video .tk-vid-az-card { border-radius: 24px !important; border: 3px solid #2c2056 !important; box-shadow: 6px 6px 0 #2c2056 !important; }

@media (max-width: 782px) {
	body.pd-stile-vivace .pdmh-hero { grid-template-columns: 1fr; }
	body.pd-stile-vivace .pdmh-hero-fig { padding: 20px 14px 40px; }
	body.pd-stile-vivace .pdmh-vantaggi { grid-template-columns: 1fr 1fr !important; }
	body.pd-stile-vivace .pdmh-v { transform: none !important; }
}

/* Offerte: card alte uguali, la parte colorata arriva in fondo (niente striscia bianca) */
html body.pd-stile-vivace .tkpo-card { display: flex !important; flex-direction: column; }
html body.pd-stile-vivace .tkpo-card__footer { flex: 1 1 auto; }
