/* BeastPick – layout editoriale 1.2.1
 * 1.2.1: riquadro "Approfondimenti collegati" (.fus-related) e link contestuali (.bp-related-link).
 * 1.2.0: più colore e leggibilità – testo a 18px in grigio chiaro caldo, colore d'accento per
 *        sezione (teal, oro, blu, corallo) su pillola, barra del titolo e marcatori, aloni
 *        colorati lungo tutta la pagina, evidenziatore sui grassetti, indice con numeri colorati,
 *        tabella riprogettata (corpo 16px, righe alternate, intestazione piena, stato in evidenza),
 *        FAQ e cronologia più calde.
 * 1.1.1: compatibilità con il markup del template 1.0.x (pagine ancora in cache WP-Optimize)
 *        e "Nota informativa" leggibile su fondo scuro.
 * Veste visiva dell'articolo "Giovani expat CNEL 2026" (bp-ex2026) applicata al
 * template "Articolo editoriale" e ai componenti .bp-fus dell'articolo sulle fusioni.
 * Colori e font dalle variabili --bp-* di beastpick-style.css, con valori di riserva.
 */

/* ---------- Pagina: sfondo con aloni e griglia ---------- */
.beastpick-page .bp-article-shell {
  position: relative;
  overflow: hidden;
  padding-block: 56px 0;
  color: var(--bp-ink-soft, #c8cdd8);
  background:
    radial-gradient(circle at 86% 1%, rgba(43,130,217,.2), transparent 520px),
    radial-gradient(circle at 6% 6%, rgba(62,207,171,.1), transparent 520px),
    radial-gradient(circle at 96% 22%, rgba(245,166,35,.08), transparent 560px),
    radial-gradient(circle at 2% 40%, rgba(43,130,217,.1), transparent 600px),
    radial-gradient(circle at 98% 58%, rgba(62,207,171,.08), transparent 600px),
    radial-gradient(circle at 4% 76%, rgba(232,68,90,.06), transparent 600px),
    radial-gradient(circle at 94% 92%, rgba(245,166,35,.07), transparent 600px),
    var(--bp-navy, #080d18);
}
.beastpick-page .bp-article-shell::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 650px;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.024) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.024) 1px, transparent 1px);
  background-size: 34px 34px;
  -webkit-mask-image: linear-gradient(#000, transparent);
  mask-image: linear-gradient(#000, transparent);
}
.beastpick-page .bp-ed-wide,
.beastpick-page .bp-ed-narrow {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  margin-inline: auto;
  padding-inline: 24px;
}
.beastpick-page .bp-ed-wide { max-width: 1228px; }
.beastpick-page .bp-ed-narrow { max-width: 808px; }

/* ---------- Hero ---------- */
.beastpick-page .bp-ed-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  align-items: center;
  gap: clamp(26px, 5vw, 64px);
  min-height: 440px;
  padding: 8px 0 48px;
}
.beastpick-page .bp-ed-hero-layout--single { grid-template-columns: minmax(0, 860px); min-height: 0; }
.beastpick-page .bp-ed-hero-copy { min-width: 0; }
.beastpick-page .bp-ed-crumbs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 26px; color: var(--bp-ink-muted, #8a90a0); font-size: .85rem; }
.beastpick-page .bp-ed-crumbs a { color: var(--bp-ink-muted, #8a90a0); text-decoration: underline; text-underline-offset: 3px; }
.beastpick-page .bp-ed-crumbs a:hover { color: var(--bp-teal, #3ecfab); }
.beastpick-page .bp-ed-kicker {
  display: inline-block;
  margin-bottom: 14px;
  padding: 7px 13px;
  border: 1px solid var(--bp-border-t, rgba(62,207,171,.3));
  border-radius: 999px;
  background: rgba(62,207,171,.09);
  color: var(--bp-teal, #3ecfab);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.beastpick-page .bp-ed-hero-copy h1 {
  max-width: 820px;
  margin: 8px 0 22px;
  color: var(--bp-ink, #f7f8fc);
  font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif);
  font-size: clamp(2.2rem, 4.2vw, 3.9rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -.045em;
  overflow-wrap: break-word;
}
.beastpick-page .bp-ed-hero-copy h1 em { font-style: normal; color: var(--bp-teal, #3ecfab); }
.beastpick-page .bp-post-byline { margin: 0 0 20px; color: var(--bp-ink-soft, #c8cdd8); font-size: 14px; line-height: 1.5; }
.beastpick-page .bp-post-byline strong { color: var(--bp-teal, #3ecfab); font-weight: 800; }
.beastpick-page .bp-ed-lead { max-width: 690px; margin: 0 0 16px; color: var(--bp-ink-soft, #c8cdd8); font-size: clamp(1.1rem, 2vw, 1.3rem); line-height: 1.56; }
.beastpick-page .bp-ed-meta { margin: 0; color: var(--bp-ink-muted, #8a90a0); font-size: .85rem; line-height: 1.6; }

.beastpick-page .bp-ed-hero-visual {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 30px;
  border: 1px solid rgba(62,207,171,.3);
  border-radius: 26px;
  background: linear-gradient(150deg, rgba(62,207,171,.14), rgba(43,130,217,.09) 50%, rgba(245,166,35,.09)), var(--bp-card, #141e35);
  box-shadow: var(--bp-shadow-lg, 0 24px 60px rgba(0,0,0,.35));
}
.beastpick-page .bp-ed-hero-visual::before {
  content: "";
  position: absolute;
  z-index: 1;
  width: 110px;
  height: 110px;
  top: -30px;
  right: -24px;
  border: 1px solid rgba(245,166,35,.4);
  border-radius: 50%;
  box-shadow: 0 0 0 24px rgba(245,166,35,.035);
  pointer-events: none;
}
.beastpick-page .bp-ed-hero-visual small { display: block; color: var(--bp-ink-soft, #c8cdd8); font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.beastpick-page .bp-ed-hero-visual strong { display: block; margin: 16px 0 6px; color: var(--bp-teal, #3ecfab); font: 900 clamp(4.5rem, 10vw, 8rem)/1 var(--bp-font-head, 'Outfit', system-ui, sans-serif); letter-spacing: -.075em; }
.beastpick-page .bp-ed-hero-visual p { margin: 0; color: var(--bp-ink, #f7f8fc); font-size: 1.03rem; }
.beastpick-page .bp-ed-hero-foot { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--bp-border-hover, rgba(255,255,255,.16)); color: var(--bp-ink-soft, #c8cdd8); font-size: .88rem; }
.beastpick-page .bp-ed-hero-visual--image { padding: 12px; }
.beastpick-page .bp-ed-hero-visual--image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 18px;
}

.beastpick-page .bp-post-cover { width: min(1000px, calc(100% - 32px)); margin: 0 auto 42px; }
.beastpick-page .bp-post-cover__image { display: block; width: 100%; height: auto; max-height: 650px; object-fit: contain; border: 1px solid rgba(255,255,255,.14); border-radius: 18px; background: #101a2d; }

/* ---------- Testo dell'articolo ---------- */
.bp-article-shell .bp-editorial-content { --acc: var(--bp-teal, #3ecfab); --acc-rgb: 62,207,171; min-width: 0; color: #dde2ea; font-size: clamp(1.03rem, .98rem + .25vw, 1.125rem); overflow-wrap: break-word; }
.bp-article-shell .bp-editorial-content :is(p, li) { line-height: 1.75; }
.bp-article-shell .bp-editorial-content p { margin: 0 0 1.15em; }
.bp-article-shell .bp-editorial-content :is(strong, b) { color: #fff; font-weight: 700; }
.bp-article-shell .bp-editorial-content h2 { margin: 0 0 18px; font-size: clamp(1.55rem, 1.2rem + 1.5vw, 2.15rem); line-height: 1.18; letter-spacing: -.025em; }
.bp-article-shell .bp-editorial-content h3 { margin: 0 0 10px; font-size: clamp(1.12rem, 1.05rem + .3vw, 1.28rem); line-height: 1.3; }
.bp-article-shell .bp-editorial-content a:not(.bp-btn):not(.fus-button) { color: var(--bp-teal, #3ecfab); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.bp-article-shell .bp-editorial-content a:not(.bp-btn):not(.fus-button):hover { color: #7fe6cc; }
.bp-article-shell .bp-editorial-content img { max-width: 100%; height: auto; border-radius: var(--bp-r, 14px); }
.bp-article-shell .bp-editorial-content :target { scroll-margin-top: 110px; }
.bp-article-shell .bp-editorial-content > :is(h2, h3) { margin-top: 2em; }
.bp-article-shell .bp-editorial-content blockquote { margin: 28px 0; padding: 22px 25px; border-left: 3px solid var(--bp-blue, #2b82d9); border-radius: 0 var(--bp-r, 14px) var(--bp-r, 14px) 0; background: rgba(43,130,217,.07); color: var(--bp-ink, #f7f8fc); }

/* ---------- Componenti .bp-fus ---------- */
.bp-article-shell .bp-fus { container: fus-layout / inline-size; counter-reset: fus-sec; }
.bp-article-shell .bp-fus .fus-label { margin: 0 0 10px; color: var(--bp-teal, #3ecfab); font-size: .75rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.bp-article-shell .bp-fus :is(.fus-small, figcaption) { color: #aab2c2; font-size: .9rem; line-height: 1.65; }
.bp-article-shell .bp-fus .fus-small strong { color: #e6eaf1; }
.bp-article-shell .bp-fus :is(.fus-intro, .fus-nav, .fus-box, .fus-figure, .fus-impact > li, .fus-route > div) > :first-child { margin-top: 0; }
.bp-article-shell .bp-fus :is(.fus-intro, .fus-nav, .fus-box, .fus-figure, .fus-impact > li, .fus-route > div, .fus-deal) > :last-child { margin-bottom: 0; }

/* Apertura: come la "risposta breve" */
.bp-article-shell .bp-fus .fus-intro {
  position: relative;
  padding: 27px 30px;
  border: 1px solid var(--bp-border-t, rgba(62,207,171,.3));
  border-left: 4px solid var(--bp-teal, #3ecfab);
  border-radius: var(--bp-r, 14px);
  background: linear-gradient(100deg, rgba(62,207,171,.13), rgba(43,130,217,.065)), var(--bp-card-2, #1e2535);
  box-shadow: var(--bp-shadow, 0 8px 28px rgba(0,0,0,.28));
}
.bp-article-shell .bp-fus .fus-deck { color: var(--bp-ink, #f7f8fc); font-size: clamp(1.06rem, 2.5vw, 1.2rem); line-height: 1.55; }
.bp-article-shell .bp-fus .fus-intro > p:not(.fus-label):not(.fus-deck):not(.fus-small) { font-size: 1.04rem; }
.bp-article-shell .bp-fus .fus-intro .fus-small { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--bp-border-hover, rgba(255,255,255,.16)); }

/* Indice: numeri a gettone colorati, voci leggibili */
.bp-article-shell .bp-fus .fus-nav { margin-top: 28px; padding: 24px 26px; border: 1px solid var(--bp-border-t, rgba(62,207,171,.3)); border-radius: var(--bp-r-lg, 20px); background: linear-gradient(135deg, rgba(62,207,171,.08), rgba(43,130,217,.06) 55%, rgba(245,166,35,.06)), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-nav > p:first-child { margin-bottom: 14px; }
.bp-article-shell .bp-fus .fus-nav > p:first-child strong { color: var(--bp-teal, #3ecfab); font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; }
.bp-article-shell .bp-fus .fus-nav ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 22px; margin: 0; padding: 0; list-style: none; counter-reset: fus-toc; }
.bp-article-shell .bp-fus .fus-nav li { --chip: 62,207,171; display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 8px 10px; border-radius: 10px; counter-increment: fus-toc; font-size: 1rem; line-height: 1.45; transition: background .2s ease; }
.bp-article-shell .bp-fus .fus-nav li:nth-child(4n+2) { --chip: 245,166,35; }
.bp-article-shell .bp-fus .fus-nav li:nth-child(4n+3) { --chip: 43,130,217; }
.bp-article-shell .bp-fus .fus-nav li:nth-child(4n+4) { --chip: 232,68,90; }
.bp-article-shell .bp-fus .fus-nav li:hover { background: rgba(var(--chip), .1); }
.bp-article-shell .bp-fus .fus-nav li::before { content: counter(fus-toc, decimal-leading-zero); flex: none; display: inline-grid; place-items: center; width: 30px; height: 26px; border-radius: 8px; background: rgba(var(--chip), .16); color: rgb(var(--chip)); font: 800 .78rem/1 var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-variant-numeric: tabular-nums; }
.bp-article-shell .bp-fus .fus-nav a:not(.fus-button) { color: #e6eaf1; text-decoration: none; }
.bp-article-shell .bp-fus .fus-nav li:hover a:not(.fus-button) { color: rgb(var(--chip)); }

/* Sezioni: colore d'accento a rotazione (teal, oro, blu, corallo) */
.bp-article-shell .bp-fus > section:not(.fus-box) { margin-top: 64px; scroll-margin-top: 110px; }
.bp-article-shell .bp-fus > section:nth-of-type(4n+2) { --acc: var(--bp-gold, #f5a623); --acc-rgb: 245,166,35; }
.bp-article-shell .bp-fus > section:nth-of-type(4n+3) { --acc: var(--bp-blue, #2b82d9); --acc-rgb: 43,130,217; }
.bp-article-shell .bp-fus > section:nth-of-type(4n+4) { --acc: #ff6b7f; --acc-rgb: 232,68,90; }
/* Pillola numerata solo dove la sezione non ha già un'etichetta propria */
.bp-article-shell .bp-fus > section:not(.fus-box):not(#fus-fonti):not(:has(> .fus-label:first-child)) { counter-increment: fus-sec; }
.bp-article-shell .bp-fus > section:not(.fus-box):not(#fus-fonti):not(:has(> .fus-label:first-child))::before {
  content: counter(fus-sec, decimal-leading-zero);
  display: inline-flex;
  align-items: center;
  margin-bottom: 12px;
  padding: 5px 12px;
  border: 1px solid rgba(var(--acc-rgb), .4);
  border-radius: 999px;
  background: rgba(var(--acc-rgb), .12);
  color: var(--acc);
  font-size: .8rem;
  font-weight: 800;
  line-height: 1.3;
}
.bp-article-shell .bp-fus > section:not(.fus-box) > .fus-label:first-child { color: var(--acc); }
/* Barra colorata sotto il titolo di sezione */
.bp-article-shell .bp-fus > section:not(.fus-box) > h2::after { content: ""; display: block; width: 64px; height: 4px; margin-top: 14px; border-radius: 999px; background: linear-gradient(90deg, var(--acc), rgba(var(--acc-rgb), .15)); }
/* Evidenziatore leggero sui grassetti del testo corrente */
.bp-article-shell .bp-fus > section:not(.fus-box) > p:not(.fus-small) strong { background: linear-gradient(transparent 60%, rgba(var(--acc-rgb), .22) 0); padding-inline: 1px; }
.bp-article-shell .bp-fus > section:not(.fus-box) :is(ul, ol):not(.fus-impact):not(.fus-checks) li::marker { color: var(--acc); }
.bp-article-shell .bp-fus :is(#fus-opas-mps, #fus-bper-cronaca, #fus-valsabbina, .fus-deal h3) { scroll-margin-top: 110px; }

/* Quattro impatti: card con bordo superiore colorato */
.bp-article-shell .bp-fus .fus-impact { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin: 24px 0 12px; padding: 0; list-style: none; }
.bp-article-shell .bp-fus .fus-impact > li {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 20px;
  overflow: hidden;
  border: 1px solid var(--bp-border, rgba(255,255,255,.09));
  border-top: 3px solid var(--bp-teal, #3ecfab);
  border-radius: var(--bp-r, 14px);
  background: linear-gradient(130deg, rgba(62,207,171,.09), transparent 65%), var(--bp-card-2, #1e2535);
  font-size: .92rem;
}
.bp-article-shell .bp-fus .fus-impact > li:nth-child(2) { border-top-color: var(--bp-gold, #f5a623); background: linear-gradient(130deg, rgba(245,166,35,.1), transparent 65%), var(--bp-card-2, #1e2535); }
.bp-article-shell .bp-fus .fus-impact > li:nth-child(3) { border-top-color: var(--bp-blue, #2b82d9); background: linear-gradient(130deg, rgba(43,130,217,.14), transparent 65%), var(--bp-card-2, #1e2535); }
.bp-article-shell .bp-fus .fus-impact > li:nth-child(4) { border-top-color: var(--bp-red, #e8445a); background: linear-gradient(130deg, rgba(232,68,90,.12), transparent 65%), var(--bp-card-2, #1e2535); }
.bp-article-shell .bp-fus .fus-impact > li:nth-child(2) .fus-label { color: var(--bp-gold, #f5a623); }
.bp-article-shell .bp-fus .fus-impact > li:nth-child(3) .fus-label { color: var(--bp-blue, #2b82d9); }
.bp-article-shell .bp-fus .fus-impact > li:nth-child(4) .fus-label { color: var(--bp-red, #e8445a); }
.bp-article-shell .bp-fus .fus-impact h3 { margin-bottom: 12px; font-size: 1.1rem; }
.bp-article-shell .bp-fus .fus-impact p:not(.fus-label) { margin: 0 0 10px; color: #d6dce6; }

/* Figura con i due numeri, stile "grafico" */
.bp-article-shell .bp-fus .fus-figure { margin: 27px 0; padding: 25px; border: 1px solid var(--bp-border-hover, rgba(255,255,255,.16)); border-radius: var(--bp-r-lg, 20px); background: var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-route { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 14px 0 16px; }
.bp-article-shell .bp-fus .fus-route > div { min-width: 0; padding: 18px; border: 1px solid var(--bp-border, rgba(255,255,255,.09)); border-top: 3px solid var(--bp-teal, #3ecfab); border-radius: var(--bp-r, 14px); background: linear-gradient(130deg, rgba(62,207,171,.09), transparent 65%), var(--bp-card-2, #1e2535); font-size: .9rem; }
.bp-article-shell .bp-fus .fus-route > div:nth-child(2) { border-top-color: var(--bp-gold, #f5a623); background: linear-gradient(130deg, rgba(245,166,35,.1), transparent 65%), var(--bp-card-2, #1e2535); }
.bp-article-shell .bp-fus .fus-route strong { display: block; margin-bottom: 6px; color: var(--bp-teal, #3ecfab); font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-size: clamp(1.8rem, 5vw, 2.5rem); font-weight: 800; line-height: 1; letter-spacing: -.03em; }
.bp-article-shell .bp-fus .fus-route > div:nth-child(2) strong { color: var(--bp-gold, #f5a623); }

/* Riquadri */
.bp-article-shell .bp-fus .fus-box { margin: 40px 0; padding: 26px; border: 1px solid var(--bp-border-hover, rgba(255,255,255,.16)); border-radius: var(--bp-r-lg, 20px); background: var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-box h2 { font-size: clamp(1.3rem, 2.6vw, 1.6rem); }
.bp-article-shell .bp-fus .fus-proof { border-color: var(--bp-border-t, rgba(62,207,171,.3)); background: linear-gradient(145deg, rgba(62,207,171,.075), transparent), var(--bp-card-2, #1e2535); }
.bp-article-shell .bp-fus .fus-keypoint { margin: 28px 0; padding: 22px 25px; border: 0; border-left: 4px solid var(--bp-gold, #f5a623); border-radius: 0 var(--bp-r, 14px) var(--bp-r, 14px) 0; background: linear-gradient(90deg, rgba(245,166,35,.09), transparent), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-keypoint .fus-label { color: var(--bp-gold, #f5a623); }
.bp-article-shell .bp-fus #fus-opas-mps { border-color: var(--bp-border-t, rgba(62,207,171,.3)); border-left: 4px solid var(--bp-teal, #3ecfab); background: linear-gradient(100deg, rgba(62,207,171,.1), rgba(43,130,217,.05)), var(--bp-card-2, #1e2535); }
.bp-article-shell .bp-fus .fus-news-bper { border: 1px solid rgba(43,130,217,.32); border-left: 4px solid var(--bp-blue, #2b82d9); background: linear-gradient(145deg, rgba(43,130,217,.12), transparent 70%), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-news-bper .fus-label { color: var(--bp-blue, #2b82d9); }
.bp-article-shell .bp-fus .fus-news-bper h3 { margin-top: 26px; }
.bp-article-shell .bp-fus .fus-box > section { margin-top: 26px; }

/* Elenchi numerati a controllo, come la checklist */
.bp-article-shell .bp-fus ol.fus-checks { margin: 22px 0; padding: 22px 22px 8px; border: 1px solid var(--bp-border, rgba(255,255,255,.09)); border-radius: var(--bp-r, 14px); background: var(--bp-card-2, #1e2535); list-style: none; counter-reset: check; }
.bp-article-shell .bp-fus ol.fus-checks > li { position: relative; margin: 0; padding: 0 0 14px 42px; border-bottom: 1px solid var(--bp-border, rgba(255,255,255,.09)); counter-increment: check; }
.bp-article-shell .bp-fus ol.fus-checks > li + li { padding-top: 14px; }
.bp-article-shell .bp-fus ol.fus-checks > li:last-child { border-bottom: 0; }
.bp-article-shell .bp-fus ol.fus-checks > li::before { content: counter(check, decimal-leading-zero); position: absolute; left: 0; color: var(--bp-teal, #3ecfab); font: 800 .88rem var(--bp-font-head, 'Outfit', system-ui, sans-serif); }
.bp-article-shell .bp-fus ul.fus-checks li, .bp-article-shell .bp-fus .fus-signals li { margin-bottom: 9px; }
.bp-article-shell .bp-fus :is(ul, ol):not(.fus-impact):not(.fus-checks) li::marker { color: var(--bp-teal, #3ecfab); }

/* Cronologia delle operazioni */
.bp-article-shell .bp-fus .fus-deal { margin: 18px 0; padding: 22px 24px; border: 1px solid rgba(255,255,255,.09); border-radius: var(--bp-r, 14px); background: linear-gradient(135deg, rgba(62,207,171,.08), transparent 60%), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-deal:has(.fus-state--stop) { background: linear-gradient(135deg, rgba(245,166,35,.09), transparent 60%), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-deal:has(.fus-state--open) { background: linear-gradient(135deg, rgba(43,130,217,.12), transparent 60%), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus .fus-deal h3 { margin: 12px 0 8px; font-size: clamp(1.15rem, 1.05rem + .4vw, 1.35rem); }
.bp-article-shell .bp-fus .fus-deal p { margin-bottom: 8px; }
.bp-article-shell .bp-fus .fus-state {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding: 5px 10px;
  border: 1px solid var(--bp-border-t, rgba(62,207,171,.3));
  border-radius: 999px;
  background: rgba(62,207,171,.08);
  color: var(--bp-teal, #3ecfab);
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.3;
}
.bp-article-shell .bp-fus .fus-state--stop { border-color: rgba(245,166,35,.33); background: rgba(245,166,35,.09); color: var(--bp-gold, #f5a623); }
.bp-article-shell .bp-fus .fus-state--open { border-color: rgba(43,130,217,.35); background: rgba(43,130,217,.1); color: #7fb6ec; }
.bp-article-shell .bp-fus .fus-deal:has(.fus-state--stop) { border-left: 3px solid var(--bp-gold, #f5a623); }
.bp-article-shell .bp-fus .fus-deal:has(.fus-state--open) { border-left: 3px solid var(--bp-blue, #2b82d9); }
.bp-article-shell .bp-fus .fus-deal:not(:has(.fus-state--stop, .fus-state--open)) { border-left: 3px solid var(--bp-teal, #3ecfab); }

/* Tabella: corpo 16px, intestazione piena, righe alternate, operazione in evidenza */
.bp-article-shell .bp-fus .fus-table-wrap { margin: 26px 0 14px; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid rgba(62,207,171,.28); border-radius: var(--bp-r-lg, 20px); background: var(--bp-card, #141e35); box-shadow: var(--bp-shadow, 0 8px 28px rgba(0,0,0,.28)); }
.bp-article-shell .bp-fus .fus-table { width: 100%; min-width: 640px; margin: 0; border-collapse: collapse; table-layout: fixed; font-size: 1rem; line-height: 1.55; }
.bp-article-shell .bp-fus .fus-table caption { padding: 16px 20px; border-bottom: 1px solid rgba(255,255,255,.08); background: linear-gradient(90deg, rgba(62,207,171,.1), rgba(245,166,35,.06)); color: #f7f8fc; font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-size: 1.02rem; font-weight: 700; text-align: left; }
.bp-article-shell .bp-fus .fus-table :is(th, td) { padding: 15px 16px; border-bottom: 1px solid rgba(255,255,255,.07); color: #dde2ea; text-align: left; vertical-align: top; overflow-wrap: break-word; }
.bp-article-shell .bp-fus .fus-table :is(th, td):first-child { padding-left: 20px; }
.bp-article-shell .bp-fus .fus-table thead th { padding-block: 13px; background: linear-gradient(90deg, #17544f, #1b3f68); color: #fff; font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-size: .82rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.bp-article-shell .bp-fus .fus-table thead th:nth-child(1) { width: 25%; }
.bp-article-shell .bp-fus .fus-table thead th:nth-child(2) { width: 23%; }
.bp-article-shell .bp-fus .fus-table thead th:nth-child(3) { width: 17%; }
.bp-article-shell .bp-fus .fus-table tbody tr:nth-child(even) { background: rgba(255,255,255,.035); }
.bp-article-shell .bp-fus .fus-table tbody tr:hover { background: rgba(62,207,171,.08); }
.bp-article-shell .bp-fus .fus-table tbody tr:last-child > * { border-bottom: 0; }
.bp-article-shell .bp-fus .fus-table tbody th { position: relative; color: #fff; font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-weight: 700; }
.bp-article-shell .bp-fus .fus-table tbody th::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 4px; border-radius: 0 4px 4px 0; background: var(--bp-teal, #3ecfab); }
.bp-article-shell .bp-fus .fus-table tbody tr:nth-child(4n+2) th::before { background: var(--bp-gold, #f5a623); }
.bp-article-shell .bp-fus .fus-table tbody tr:nth-child(4n+3) th::before { background: var(--bp-blue, #2b82d9); }
.bp-article-shell .bp-fus .fus-table tbody tr:nth-child(4n+4) th::before { background: #ff6b7f; }
.bp-article-shell .bp-fus .fus-table tbody th a:not(.fus-button) { color: #fff; text-decoration: underline; text-decoration-color: rgba(62,207,171,.55); text-underline-offset: 4px; }
.bp-article-shell .bp-fus .fus-table tbody th a:not(.fus-button):hover { color: var(--bp-teal, #3ecfab); }
.bp-article-shell .bp-fus .fus-table tbody td:nth-child(2) { color: #fff; font-weight: 600; }
.bp-article-shell .bp-fus .fus-table tbody td:nth-child(3) { color: #ffd38a; font-variant-numeric: tabular-nums; font-weight: 600; }
.bp-article-shell .bp-fus .fus-table-key { display: none; }

/* FAQ: icona +/− colorata, risposta su fondo tinto */
.bp-article-shell .bp-fus details { margin: 12px 0; padding: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: var(--bp-r, 14px); background: var(--bp-card, #141e35); transition: border-color .2s ease; }
.bp-article-shell .bp-fus details:nth-of-type(4n+2) { --q: 245,166,35; }
.bp-article-shell .bp-fus details:nth-of-type(4n+3) { --q: 43,130,217; }
.bp-article-shell .bp-fus details:nth-of-type(4n+4) { --q: 232,68,90; }
.bp-article-shell .bp-fus details { --q: 62,207,171; }
.bp-article-shell .bp-fus details[open] { border-color: rgba(var(--q), .45); background: linear-gradient(135deg, rgba(var(--q), .1), transparent 70%), var(--bp-card, #141e35); }
.bp-article-shell .bp-fus summary { position: relative; display: block; min-height: 28px; padding: 18px 60px 18px 22px; color: #fff; font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-size: 1.05rem; font-weight: 700; line-height: 1.4; list-style: none; cursor: pointer; }
.bp-article-shell .bp-fus summary::-webkit-details-marker { display: none; }
.bp-article-shell .bp-fus summary::after { content: "+"; position: absolute; right: 18px; top: 50%; display: grid; place-items: center; width: 30px; height: 30px; margin-top: -15px; border-radius: 50%; background: rgba(var(--q), .16); color: rgb(var(--q)); font: 700 1.25rem/1 var(--bp-font-head, 'Outfit', system-ui, sans-serif); }
.bp-article-shell .bp-fus details[open] summary::after { content: "−"; }
.bp-article-shell .bp-fus summary:hover { color: rgb(var(--q)); }
.bp-article-shell .bp-fus details > :not(summary) { margin: 0; padding: 0 22px 20px; color: #dde2ea; }

/* CTA finale */
.bp-article-shell .bp-fus .fus-cta {
  margin-top: 55px;
  border-color: var(--bp-border-t, rgba(62,207,171,.3));
  background:
    radial-gradient(circle at 88% 8%, rgba(43,130,217,.24), transparent 58%),
    linear-gradient(135deg, rgba(62,207,171,.14), rgba(245,166,35,.045)),
    var(--bp-card, #141e35);
  box-shadow: var(--bp-shadow-lg, 0 24px 60px rgba(0,0,0,.35));
}
.bp-article-shell .bp-fus .fus-cta h2 { max-width: 570px; }
.bp-article-shell .bp-fus .fus-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 22px 0 16px; }
.bp-article-shell .bp-fus .fus-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  min-height: 48px;
  padding: 11px 19px;
  border: 1px solid transparent;
  border-radius: var(--bp-r-pill, 999px);
  background: var(--bp-teal, #3ecfab);
  color: var(--bp-navy, #080d18) !important;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}
.bp-article-shell .bp-fus .fus-button:hover { opacity: .88; }
.bp-article-shell .bp-fus :is(.fus-button--secondary, .fus-button--quiet) { border-color: var(--bp-border-hover, rgba(255,255,255,.2)); background: transparent; color: var(--bp-ink, #f7f8fc) !important; }
.bp-article-shell .bp-fus .fus-proof .fus-button--quiet { border-color: var(--bp-border-t, rgba(62,207,171,.3)); color: var(--bp-teal, #3ecfab) !important; }
.bp-article-shell .bp-fus .fus-button:focus-visible { outline: 2px solid var(--bp-ink, #f7f8fc); outline-offset: 3px; }

/* Approfondimenti collegati: tre schede con colore proprio */
.bp-article-shell .bp-fus .fus-related { border-color: rgba(245,166,35,.35); background: radial-gradient(circle at 95% 0%, rgba(43,130,217,.18), transparent 55%), linear-gradient(135deg, rgba(245,166,35,.1), rgba(62,207,171,.06) 60%), var(--bp-card, #141e35); box-shadow: var(--bp-shadow, 0 8px 28px rgba(0,0,0,.28)); }
.bp-article-shell .bp-fus .fus-related > .fus-label { color: var(--bp-gold, #f5a623); }
.bp-article-shell .bp-fus .fus-related > h3 { margin-bottom: 18px; font-size: clamp(1.2rem, 1.08rem + .5vw, 1.45rem); }
.bp-article-shell .bp-fus .fus-related-list { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.bp-article-shell .bp-fus .fus-related-item { --r: 62,207,171; position: relative; margin: 0; padding: 18px 20px 18px 22px; border: 1px solid rgba(var(--r), .3); border-left: 4px solid rgb(var(--r)); border-radius: var(--bp-r, 14px); background: linear-gradient(120deg, rgba(var(--r), .12), transparent 70%), rgba(8,13,24,.45); transition: border-color .2s ease, transform .2s ease; }
.bp-article-shell .bp-fus .fus-related-item--check { --r: 245,166,35; }
.bp-article-shell .bp-fus .fus-related-item--local { --r: 43,130,217; }
.bp-article-shell .bp-fus .fus-related-item:hover { border-color: rgba(var(--r), .6); transform: translateY(-2px); }
.bp-article-shell .bp-fus .fus-related-item:focus-within { border-color: rgb(var(--r)); }
.bp-article-shell .bp-fus .fus-related-kicker { margin: 0 0 6px; color: rgb(var(--r)); font-size: .74rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.bp-article-shell .bp-fus .fus-related-item--local .fus-related-kicker { color: #7fb6ec; }
.bp-article-shell .bp-fus .fus-related-title { margin: 0 0 8px; font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-size: clamp(1.1rem, 1.02rem + .35vw, 1.25rem); font-weight: 700; line-height: 1.3; }
.bp-article-shell .bp-fus .fus-related-title a:not(.fus-button) { color: #fff; text-decoration: none; }
.bp-article-shell .bp-fus .fus-related-title a:not(.fus-button)::after { content: " →"; color: rgb(var(--r)); }
.bp-article-shell .bp-fus .fus-related-item--local .fus-related-title a:not(.fus-button)::after { content: " ↗"; }
/* Tutta la scheda è cliccabile, il link resta l'unico elemento interattivo */
.bp-article-shell .bp-fus .fus-related-title a:not(.fus-button)::before { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.bp-article-shell .bp-fus .fus-related-title a:not(.fus-button):hover { color: rgb(var(--r)); }
.bp-article-shell .bp-fus .fus-related-item > p:last-child { margin: 0; color: #d6dce6; font-size: .95rem; line-height: 1.65; }
/* Link contestuali verso le pagine collegate: un po' più evidenti */
.bp-article-shell .bp-fus a.bp-related-link:not(.fus-button) { font-weight: 600; text-decoration-thickness: 2px; text-decoration-color: rgba(62,207,171,.5); }
.bp-article-shell .bp-fus .fus-related a.bp-related-link:not(.fus-button) { font-weight: 700; }
@media (prefers-reduced-motion: reduce) { .bp-article-shell .bp-fus .fus-related-item { transition: none; } .bp-article-shell .bp-fus .fus-related-item:hover { transform: none; } }

/* Box autore dentro l'articolo: stesso stile del box autore expat */
.bp-article-shell .bp-fus .fus-box:has(#fus-autore-title) {
  margin-top: 52px;
  padding: clamp(23px, 4vw, 36px);
  border: 1px solid rgba(62,207,171,.3);
  border-radius: 18px;
  background: linear-gradient(145deg, #142941 0%, #101a2e 62%, #122d32 100%);
  box-shadow: 0 18px 45px rgba(0,0,0,.15);
}
.bp-article-shell .bp-fus .fus-box:has(#fus-autore-title)::before { content: "La firma dietro l’analisi"; display: block; margin-bottom: 14px; color: var(--bp-gold, #f5a623); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.bp-article-shell .bp-fus .fus-box:has(#fus-autore-title) p:not(.fus-small) { color: #e0e5eb; font-size: 15px; }
.bp-article-shell .bp-fus .fus-box:has(#fus-autore-title) .fus-small { margin-top: 18px; font-size: 0; }
.bp-article-shell .bp-fus .fus-box:has(#fus-autore-title) .fus-small a { display: inline-flex; align-items: center; min-height: 44px; margin: 0 10px 10px 0; padding: 10px 15px; border: 1px solid rgba(62,207,171,.48); border-radius: 8px; background: #0b202b; color: var(--bp-ink, #f7f8fc); font-size: 14px; font-weight: 800; line-height: 1.3; text-decoration: none; }
.bp-article-shell .bp-fus .fus-box:has(#fus-autore-title) .fus-small a:hover { border-color: var(--bp-teal, #3ecfab); background: #153941; }

/* Fonti */
.bp-article-shell .bp-fus #fus-fonti h2 { font-size: clamp(1.2rem, 2.4vw, 1.45rem); }
.bp-article-shell .bp-fus #fus-fonti li { margin-bottom: 10px; overflow-wrap: anywhere; }

/* ---------- Compatibilità: markup del template 1.0.x ancora in cache ---------- */
.beastpick-page .bp-editorial-container { position: relative; box-sizing: border-box; width: 100%; max-width: 808px; margin-inline: auto; padding-inline: 24px; }
.beastpick-page .bp-editorial-header { margin: 0 0 32px; }
.beastpick-page .bp-editorial-header h1 { margin: 0 0 16px; color: var(--bp-ink, #f7f8fc); font-family: var(--bp-font-head, 'Outfit', system-ui, sans-serif); font-size: clamp(2rem, 4vw, 3.2rem); font-weight: 800; line-height: 1.06; letter-spacing: -.04em; }
.beastpick-page .bp-editorial-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; color: var(--bp-ink-muted, #8a90a0); font-size: .85rem; }
.beastpick-page .bp-editorial-meta span:first-child { color: var(--bp-teal, #3ecfab); font-weight: 800; }
.beastpick-page .bp-editorial-cover { margin: 0 0 40px; padding: 12px; border: 1px solid rgba(62,207,171,.3); border-radius: 26px; background: linear-gradient(150deg, rgba(62,207,171,.14), rgba(43,130,217,.09) 50%, rgba(245,166,35,.09)), var(--bp-card, #141e35); box-shadow: var(--bp-shadow-lg, 0 24px 60px rgba(0,0,0,.35)); }
.beastpick-page .bp-editorial-cover img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 18px; }

/* "Nota informativa" aggiunta in coda al contenuto con colori da tema chiaro */
.bp-article-shell .bp-editorial-content > div[style*="245,158,11"] { margin-top: 48px !important; padding: 16px 20px !important; border: 1px solid rgba(245,166,35,.3) !important; border-radius: var(--bp-r, 14px) !important; background: rgba(245,166,35,.07) !important; color: var(--bp-ink-muted, #8a90a0) !important; font-size: 12.5px !important; }
.bp-article-shell .bp-editorial-content > div[style*="245,158,11"] strong { color: var(--bp-gold, #f5a623); }
.bp-article-shell .bp-editorial-content > div[style*="245,158,11"] a { color: var(--bp-gold, #f5a623) !important; }

/* ---------- Navigazione finale ---------- */
.beastpick-page .bp-post-nav { position: relative; width: min(1120px, calc(100% - 32px)); margin: 56px auto 64px; padding: 20px; border: 1px solid var(--bp-border, rgba(255,255,255,.13)); border-radius: 14px; background: var(--bp-card, #141e35); }
.beastpick-page .bp-post-nav__label { display: block; margin-bottom: 14px; color: var(--bp-gold, #f5a623); font-size: 12px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.beastpick-page .bp-post-nav__links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.beastpick-page a.bp-post-nav__link { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 15px; border: 1px solid var(--bp-border-hover, rgba(255,255,255,.2)); border-radius: 9px; background: var(--bp-navy-mid, #0e1628); color: var(--bp-ink, #f7f8fc) !important; font-size: 14px; font-weight: 800; line-height: 1.3; text-align: center; text-decoration: none !important; transition: border-color .2s ease, background .2s ease; }
.beastpick-page a.bp-post-nav__link:hover, .beastpick-page a.bp-post-nav__link:focus-visible { border-color: var(--bp-teal, #3ecfab); background: rgba(62,207,171,.09); }

/* Link "salta al contenuto" */
.beastpick-page .bp-editorial-skip { position: absolute; left: -999px; top: 0; z-index: 100000; padding: 10px 14px; background: var(--bp-teal, #3ecfab); color: var(--bp-navy, #080d18); }
.beastpick-page .bp-editorial-skip:focus { left: 12px; top: 12px; }

/* ---------- Adattamento ---------- */
@media (max-width: 900px) {
  .beastpick-page .bp-ed-hero-layout { grid-template-columns: 1fr; min-height: 0; gap: 26px; }
  .beastpick-page .bp-ed-hero-visual--image img { aspect-ratio: 16 / 9; }
}
@media (max-width: 640px) {
  .beastpick-page .bp-article-shell { padding-top: 32px; }
  .beastpick-page .bp-ed-wide, .beastpick-page .bp-ed-narrow { padding-inline: 18px; }
  .beastpick-page .bp-ed-hero-layout { padding-bottom: 30px; }
  .beastpick-page .bp-ed-hero-copy h1 { font-size: clamp(2rem, 9.5vw, 2.6rem); }
  .beastpick-page .bp-ed-hero-visual { padding: 22px; }
  .beastpick-page .bp-ed-hero-visual--image { padding: 8px; border-radius: 18px; }
  .beastpick-page .bp-ed-hero-visual--image img { border-radius: 12px; }
  .beastpick-page .bp-post-nav { margin: 40px auto 44px; padding: 15px; }
  .beastpick-page .bp-post-nav__links { grid-template-columns: 1fr; gap: 8px; }
  .beastpick-page a.bp-post-nav__link { justify-content: flex-start; }
  .bp-article-shell .bp-fus .fus-intro { padding: 20px; }
  .bp-article-shell .bp-fus .fus-box, .bp-article-shell .bp-fus .fus-figure { padding: 19px; }
  .bp-article-shell .bp-fus .fus-actions .fus-button { width: 100%; }
}
@container fus-layout (width < 600px) {
  .bp-article-shell .bp-fus .fus-nav ul, .bp-article-shell .bp-fus .fus-impact { grid-template-columns: 1fr; }
  .bp-article-shell .bp-fus .fus-table-wrap { overflow: visible; border: 0; background: transparent; }
  .bp-article-shell .bp-fus .fus-table, .bp-article-shell .bp-fus .fus-table tbody, .bp-article-shell .bp-fus .fus-table tbody tr { display: block; width: 100%; }
  .bp-article-shell .bp-fus .fus-table caption { display: block; padding: 0 0 10px; }
  .bp-article-shell .bp-fus .fus-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .bp-article-shell .bp-fus .fus-table { min-width: 0; }
  .bp-article-shell .bp-fus .fus-table caption { background: none; border: 0; }
  .bp-article-shell .bp-fus .fus-table tbody tr { margin-bottom: 14px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-top: 3px solid var(--bp-teal, #3ecfab); border-radius: var(--bp-r, 14px); background: var(--bp-card, #141e35); }
  .bp-article-shell .bp-fus .fus-table tbody tr:nth-child(4n+2) { border-top-color: var(--bp-gold, #f5a623); }
  .bp-article-shell .bp-fus .fus-table tbody tr:nth-child(4n+3) { border-top-color: var(--bp-blue, #2b82d9); }
  .bp-article-shell .bp-fus .fus-table tbody tr:nth-child(4n+4) { border-top-color: #ff6b7f; }
  .bp-article-shell .bp-fus .fus-table tbody th::before { display: none; }
  .bp-article-shell .bp-fus .fus-table tbody :is(th, td) { display: block; width: 100%; padding-left: 16px; }
  .bp-article-shell .bp-fus .fus-table tbody th { background: linear-gradient(90deg, rgba(62,207,171,.16), rgba(43,130,217,.13)); }
  .bp-article-shell .bp-fus .fus-table tbody tr > :last-child { border-bottom: 0; }
  .bp-article-shell .bp-fus .fus-table tbody td { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: 10px; }
  .bp-article-shell .bp-fus .fus-table-key { display: block; color: #9fb0c6; font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
}
@container fus-layout (width < 380px) {
  .bp-article-shell .bp-fus .fus-route { grid-template-columns: 1fr; }
  .bp-article-shell .bp-fus .fus-table tbody td { grid-template-columns: 1fr; gap: 2px; }
}
@media (prefers-reduced-motion: reduce) { .beastpick-page a.bp-post-nav__link { transition: none; } }