/* === FIX shift in caricamento: riserva sempre lo spazio della scrollbar ===
   I full-bleed usano width:100vw + margin:calc(50% - 50vw). Senza scrollbar
   riservata, quando a fine load appare la scrollbar verticale 50vw != 50% e gli
   elementi 100vw si spostano (lo "shift a destra che poi si corregge").
   scrollbar-gutter:stable riserva lo spazio dal primo paint -> niente shift. */
html { scrollbar-gutter: stable; }
@supports not (scrollbar-gutter: stable) { html { overflow-y: scroll; } }

/* ===== from <style id="no-id"> ===== */
/* === ARTICOLO hero image — contenuta, niente full-bleed gigante === */
body.single-post .wp-block-post-content > .wp-block-image:first-child,
body.single-post .wp-block-post-content > figure.wp-block-image:first-child {
  margin: 0 0 clamp(28px,4vw,44px) !important;
  width: 100% !important;
  max-width: 100% !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  aspect-ratio: 16/9 !important;
}
body.single-post .wp-block-post-content > .wp-block-image:first-child img,
body.single-post .wp-block-post-content > figure.wp-block-image:first-child img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  display: block !important;
}

/* === ARTICOLO end CTA === */
.art-end-cta {
  margin: clamp(56px, 8vw, 96px) auto 0;
  padding: clamp(32px, 5vw, 56px) clamp(28px, 4vw, 48px);
  max-width: 720px;
  border-radius: 18px;
  background:
    radial-gradient(ellipse 80% 60% at 0% 0%, rgba(220,205,239,0.45), transparent 65%),
    radial-gradient(ellipse 70% 55% at 100% 100%, rgba(250,216,189,0.55), transparent 65%),
    #FFFBF4;
  box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset, 0 4px 24px rgba(31,22,51,0.05);
  border: 1px solid rgba(79,45,127,0.08);
  text-align: center;
}
.art-end-eyebrow {
  font: 700 0.72rem/1 'DM Sans', sans-serif !important;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: #4F2D7F !important;
  margin: 0 0 14px !important;
}
.art-end-title {
  font: 500 clamp(1.4rem, 2.4vw, 1.85rem)/1.18 'Recoleta', Georgia, serif !important;
  letter-spacing: -0.01em;
  color: #1F1633 !important;
  margin: 0 0 28px !important;
  max-width: 22ch;
  margin-inline: auto !important;
}
.art-end-buttons {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 24px;
}
.art-end-btn {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  gap: 4px;
  padding: 16px 22px;
  border-radius: 18px;
  text-decoration: none !important;
  border: 0 !important;
  transition: transform 240ms cubic-bezier(0.16,1,0.3,1), box-shadow 240ms ease;
}
.art-end-btn--primary {
  background: linear-gradient(135deg, #C25E1F 0%, #E97E3A 100%);
  color: #FFFBF4 !important;
  box-shadow: 0 10px 24px rgba(194,94,31,0.32);
}
.art-end-btn--ghost {
  background: rgba(79,45,127,0.04);
  color: #1F1633 !important;
  border: 1px solid rgba(79,45,127,0.16) !important;
}
.art-end-btn-label {
  font: 600 1rem/1.2 'DM Sans', sans-serif;
}
.art-end-btn-sub {
  font: 400 0.82rem/1.3 'DM Sans', sans-serif;
  opacity: 0.78;
}
.art-end-btn--primary .art-end-btn-sub { color: rgba(255,251,244,0.88); }
.art-end-btn--ghost .art-end-btn-sub { color: #4A3F5C; }
.art-end-btn:hover { transform: translateY(-2px); }
.art-end-btn--primary:hover { box-shadow: 0 16px 36px rgba(194,94,31,0.42); }
.art-end-btn--ghost:hover { background: rgba(79,45,127,0.08); border-color: rgba(79,45,127,0.28) !important; }

.art-end-related {
  margin: 16px 0 0 !important;
  font: 500 0.88rem/1 'DM Sans', sans-serif !important;
}
.art-end-related a {
  color: #4F2D7F !important;
  text-decoration: none !important;
  border: 0 !important;
}
.art-end-related a:hover { color: #C25E1F !important; }

@media (max-width: 720px) {
  .art-end-cta { margin-inline: 16px; }
}

/* === SINGLE ARTICLE — Editorial polish v1 ===
   Sticky reading column, scale tipografica generosa, eyebrow categorie,
   TL;DR card distinto, blockquote pull, in-article CTA. */

/* Wrapper article — leggibile, max 720px texto */
body.single-post .wp-block-post-content,
body.single .wp-block-post-content {
  max-width: 880px !important;
  margin-inline: auto !important;
  padding-inline: clamp(20px, 4vw, 32px) !important;
  font-family: 'DM Sans', system-ui, sans-serif !important;
  color: #1F1633 !important;
  font-size: clamp(1rem, 0.95rem + 0.2vw, 1.1rem) !important;
  line-height: 1.72 !important;
}

/* Hero image full-bleed prima del titolo */
body.single-post .wp-block-post-content > .wp-block-image:first-child,
body.single-post .wp-block-post-content > figure.wp-block-image:first-child {
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  max-width: 100vw !important;
  width: 100vw !important;
  border-radius: 0 !important;
  margin-top: -24px !important;
  margin-bottom: clamp(40px, 6vw, 64px) !important;
}
body.single-post .wp-block-post-content > .wp-block-image:first-child img,
body.single-post .wp-block-post-content > figure.wp-block-image:first-child img {
  width: 100% !important;
  height: clamp(280px, 50vw, 540px) !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}

/* H1 articolo — Recoleta gigante */
body.single-post .wp-block-post-content > h1,
body.single-post .wp-block-post-content > .wp-block-heading:first-of-type {
  font-family: 'Recoleta', Georgia, serif !important;
  font-weight: 500 !important;
  font-size: clamp(2rem, 4vw, 3rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
  color: #1F1633 !important;
  margin: 0 0 16px !important;
  max-width: 24ch !important;
}

/* Eyebrow ornamentale prima del titolo (via ::before sul primo h1 successivo all'immagine) */
body.single-post .wp-block-post-content > h1::before {
  content: "Articolo · Metacometa";
  display: block;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #4F2D7F;
  margin-bottom: 14px;
}

/* H2 — divisori sezione */
body.single-post .wp-block-post-content h2 {
  font-family: 'Recoleta', serif !important;
  font-weight: 500 !important;
  font-size: clamp(1.5rem, 2.4vw, 1.9rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.012em !important;
  color: #1F1633 !important;
  margin: 56px 0 16px !important;
  padding-top: 12px;
  position: relative;
}
body.single-post .wp-block-post-content h2::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 48px; height: 2px;
  background: linear-gradient(90deg, #E97E3A, #4F2D7F);
  border-radius: 2px;
}

/* H3 — sub sezione */
body.single-post .wp-block-post-content h3 {
  font-family: 'Recoleta', serif !important;
  font-weight: 600 !important;
  font-size: clamp(1.15rem, 1.7vw, 1.3rem) !important;
  letter-spacing: -0.008em !important;
  color: #371E5C !important;
  margin: 32px 0 12px !important;
}

/* Paragrafi e liste — leggibilità top */
body.single-post .wp-block-post-content p { margin: 0 0 18px !important; }
body.single-post .wp-block-post-content p strong { color: #1F1633; font-weight: 700; }
body.single-post .wp-block-post-content p em { color: #4F2D7F; font-style: italic; }
body.single-post .wp-block-post-content ul,
body.single-post .wp-block-post-content ol {
  margin: 0 0 24px !important;
  padding-left: 28px !important;
}
body.single-post .wp-block-post-content li { margin-bottom: 8px; line-height: 1.65; }
body.single-post .wp-block-post-content ul li::marker { color: #E97E3A; }
body.single-post .wp-block-post-content ol li::marker { color: #4F2D7F; font-weight: 700; }

/* TL;DR detect — primo paragrafo dopo h1 con "TL;DR" → card style */
body.single-post .wp-block-post-content p:has(strong:first-child):first-of-type {
  background:
    radial-gradient(ellipse 80% 60% at 0% 0%, rgba(220,205,239,0.45), transparent 65%),
    radial-gradient(ellipse 60% 50% at 100% 100%, rgba(250,216,189,0.42), transparent 65%),
    #FFFBF4;
  padding: 22px 26px !important;
  border-radius: 18px !important;
  border-left: 3px solid #E97E3A;
  margin: 0 0 40px !important;
  font-size: 1.0625rem !important;
  line-height: 1.6 !important;
  color: #2A1F3D !important;
  box-shadow: 0 2px 14px rgba(31,22,51,0.05);
}

/* Blockquote — pull editorial */
body.single-post .wp-block-post-content blockquote,
body.single-post .wp-block-post-content .wp-block-quote {
  border-left: 0 !important;
  margin: 40px 0 !important;
  padding: 28px 32px !important;
  background:
    radial-gradient(ellipse 70% 60% at 100% 0%, rgba(220,205,239,0.55), transparent 60%),
    #F5EBD9;
  border-radius: 18px;
  position: relative;
  font-family: 'Recoleta', serif !important;
}
body.single-post .wp-block-post-content blockquote::before,
body.single-post .wp-block-post-content .wp-block-quote::before {
  content: '"';
  position: absolute;
  top: 4px; left: 18px;
  font-family: 'Recoleta', serif;
  font-size: 4rem;
  color: rgba(79,45,127,0.25);
  line-height: 1;
}
body.single-post .wp-block-post-content blockquote p,
body.single-post .wp-block-post-content .wp-block-quote p {
  font-style: italic;
  font-size: 1.15rem;
  line-height: 1.5;
  color: #2A1F3D;
  margin: 0 0 8px !important;
}
body.single-post .wp-block-post-content blockquote cite,
body.single-post .wp-block-post-content .wp-block-quote cite {
  display: block;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.85rem;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4F2D7F;
  margin-top: 12px;
}

/* Link in body — sottolineatura soft */
body.single-post .wp-block-post-content p a,
body.single-post .wp-block-post-content li a {
  color: #4F2D7F;
  text-decoration: none;
  border-bottom: 1.5px solid rgba(79,45,127,0.35);
  transition: color 200ms, border-color 200ms;
}
body.single-post .wp-block-post-content p a:hover,
body.single-post .wp-block-post-content li a:hover {
  color: #C25E1F;
  border-color: #C25E1F;
}

/* Code inline */
body.single-post .wp-block-post-content code {
  background: rgba(79,45,127,0.08);
  padding: 2px 7px;
  border-radius: 6px;
  font-family: 'Fira Code', monospace;
  font-size: 0.92em;
  color: #4F2D7F;
}

/* Article title (post-title block) above content if rendered separately */
body.single-post .wp-block-post-title {
  font-family: 'Recoleta', Georgia, serif !important;
  font-weight: 500 !important;
  font-size: clamp(2rem, 4vw, 3rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
  color: #1F1633 !important;
  max-width: 880px !important;
  margin: 0 auto 24px !important;
  padding: 0 clamp(20px,4vw,32px) !important;
  text-align: left !important;
}

/* Article hero band (between title and content) */
body.single-post main {
  background: var(--wp--preset--color--bg-alt, #FFFBF4) !important;
}

/* End-of-article gradient transition zone */
body.single-post .wp-block-post-content::after {
  content: "";
  display: block;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(79,45,127,0.2), transparent);
  margin: 56px auto 0;
  max-width: 320px;
}

/* ============================================
   STILI GLOBALI PAGINE METACOMETA
   Spostati dalle inline <style> delle singole
   pagine per render content puramente Gutenberg.
   ============================================ */

/* Base reset section */
.mc-page-section { padding: clamp(72px,9vw,128px) 0; position: relative; }
.mc-page-container { max-width: 1100px; margin: 0 auto; padding: 0 clamp(20px,4vw,32px); }
.mc-page-container-wide { max-width: 1200px; margin: 0 auto; padding: 0 clamp(20px,4vw,32px); }
.mc-page-container-narrow { max-width: 760px; margin: 0 auto; padding: 0 clamp(20px,4vw,32px); }

/* Eyebrow */
.mc-eyebrow-tag { font-family: 'DM Sans',sans-serif; font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; color: #4F2D7F; font-weight: 600; margin: 0 0 14px; }
.mc-eyebrow-tag-orange { color: #E97E3A; }
.mc-eyebrow-tag-light { color: #DCCDEF; }

/* Headings */
.mc-h-display { font-family: 'Recoleta',serif !important; font-size: clamp(2.5rem,6vw,4.25rem) !important; line-height: 1.02 !important; letter-spacing: -0.025em !important; font-weight: 500 !important; }
.mc-h-1 { font-family: 'Recoleta',serif !important; font-size: clamp(2.25rem,5.5vw,3.75rem) !important; line-height: 1.05 !important; letter-spacing: -0.02em !important; }
.mc-h-2 { font-family: 'Recoleta',serif !important; font-size: clamp(1.75rem,3.5vw,2.5rem) !important; line-height: 1.15 !important; letter-spacing: -0.015em !important; }
.mc-h-3 { font-family: 'Recoleta',serif !important; font-size: clamp(1.25rem,2.2vw,1.625rem) !important; line-height: 1.2 !important; }
.mc-h-em { font-style: italic; color: #4F2D7F; }
.mc-h-em-orange { font-style: italic; color: #E97E3A; }

/* Body */
.mc-lead { font-family: 'DM Sans',sans-serif !important; font-size: 1.125rem !important; line-height: 1.6 !important; color: #4A3F5C; max-width: 720px; }
.mc-text { font-family: 'DM Sans',sans-serif !important; line-height: 1.7 !important; color: #4A3F5C; font-size: 1.0625rem; }
.mc-text-center { text-align: center; }
.mc-text-center .mc-lead { margin-left: auto; margin-right: auto; }

/* CARDS */
.mc-card { background: #fff; border-radius: 18px; padding: 32px 28px; box-shadow: 0 4px 16px rgba(31,22,51,0.06); transition: transform 220ms ease, box-shadow 220ms ease; }
.mc-card:hover { transform: translateY(-4px); box-shadow: 0 16px 32px rgba(31,22,51,0.10); }
.mc-card-lg { padding: clamp(32px,5vw,56px); }
.mc-card-icon-box { width: 56px; height: 56px; border-radius: 18px; display: inline-flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.mc-icon-warm { background: linear-gradient(135deg,#FAD8BD 0%,#E97E3A 100%); color: #fff; }
.mc-icon-violet { background: linear-gradient(135deg,#DCCDEF 0%,#4F2D7F 100%); color: #fff; }
.mc-icon-sand { background: linear-gradient(135deg,#F1D9A6 0%,#C9A56B 100%); color: #fff; }
.mc-icon-soft { background: linear-gradient(135deg,#FAD8BD 0%,#DCCDEF 100%); color: #4F2D7F; }
.mc-card-icon-box svg { width: 26px; height: 26px; }

/* GRIDS */
.mc-grid-2 { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; }
.mc-grid-3 { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.mc-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; }
@media (max-width: 900px) { .mc-grid-3, .mc-grid-4 { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 600px) { .mc-grid-2, .mc-grid-3, .mc-grid-4 { grid-template-columns: 1fr; } }

/* SECTION DEEP (Servizi sportello, CTA finale, ecc) */
.mc-section-deep { background: radial-gradient(ellipse 85% 80% at 15% 20%,rgba(120,82,170,0.34),transparent 65%),radial-gradient(ellipse 70% 60% at 88% 75%,rgba(85,52,140,0.26),transparent 70%),radial-gradient(ellipse 60% 50% at 50% 105%,rgba(150,108,195,0.20),transparent 75%),#2E1B5C !important; color: #fff !important; }
.mc-section-deep h1, .mc-section-deep h2, .mc-section-deep h3, .mc-section-deep .mc-h-1, .mc-section-deep .mc-h-2, .mc-section-deep .mc-h-3, .mc-section-deep .mc-h-display { color: #fff !important; }
.mc-section-deep .mc-lead, .mc-section-deep .mc-text { color: #DCCDEF !important; }
.mc-section-deep .mc-eyebrow-tag { color: #E97E3A; }
.mc-section-deep .mc-card { background: rgba(255,255,255,0.10); border: 1px solid rgba(255,255,255,0.16); }
.mc-section-deep .mc-card h3, .mc-section-deep .mc-card .mc-h-3 { color: #fff; }
.mc-section-deep .mc-card p, .mc-section-deep .mc-card .mc-text { color: #DCCDEF !important; }

/* SECTION SAND (aMALI hero) */
.mc-section-sand { background: linear-gradient(135deg,#C9A56B 0%,#E0BE85 50%,#F1D9A6 100%) !important; position: relative; overflow: hidden; }

/* BUTTONS */
.mc-btn-primary, .mc-btn-orange, .mc-btn-ghost, .mc-btn-secondary { display: inline-block; padding: 14px 26px; border-radius: 999px; text-decoration: none; font-family: 'DM Sans',sans-serif; font-weight: 600; transition: transform 180ms ease, box-shadow 180ms ease; }
.wp-block-button.is-style-mc-primary .wp-block-button__link { background: linear-gradient(135deg,#4F2D7F 0%,#6B3FA0 100%) !important; color: #fff !important; }
.wp-block-button.is-style-mc-orange .wp-block-button__link { background: linear-gradient(135deg,#C25E1F 0%,#E97E3A 100%) !important; color: #fff !important; }
.wp-block-button.is-style-mc-ghost .wp-block-button__link { background: transparent !important; color: #4F2D7F !important; border: 2px solid #4F2D7F !important; }
.wp-block-button .wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(31,22,51,0.18); }

/* TIMELINE */
.mc-timeline { position: relative; margin-top: 32px; }
.mc-timeline::before { content: ""; position: absolute; left: 32px; top: 32px; bottom: 32px; width: 2px; background: linear-gradient(180deg,#E97E3A,#4F2D7F); }
.mc-step { display: grid; grid-template-columns: 80px 1fr; gap: 24px; align-items: flex-start; padding: 24px 0; position: relative; }
.mc-step-num { width: 64px; height: 64px; border-radius: 50%; background: #fff; box-shadow: 0 6px 16px rgba(31,22,51,0.10); display: flex; align-items: center; justify-content: center; font-family: 'Recoleta',serif; font-size: 1.625rem; color: #4F2D7F; font-weight: 600; position: relative; z-index: 1; }

/* QUOTE / BLOCKQUOTE custom */
.mc-quote-card { background: #fff; border-radius: 18px; padding: clamp(32px,4vw,48px); box-shadow: 0 6px 24px rgba(31,22,51,0.08); border-left: 4px solid #E97E3A; }
.mc-quote-card p { font-family: 'Recoleta',serif !important; font-size: 1.375rem !important; font-style: italic; line-height: 1.4 !important; color: #1F1633 !important; margin: 0 0 14px; }
.mc-quote-card cite { font-family: 'DM Sans',sans-serif; font-size: 0.95rem; color: #7E7290; font-style: normal; }

/* FAQ DETAILS */
.mc-faq-item { background: #fff; border-radius: 18px; padding: 0; margin-bottom: 12px; box-shadow: 0 2px 12px rgba(31,22,51,0.05); overflow: hidden; transition: box-shadow 180ms ease; }
.mc-faq-item[open] { box-shadow: 0 8px 24px rgba(31,22,51,0.10); }
.mc-faq-item summary { font-family: 'Recoleta',serif; font-weight: 600; cursor: pointer; color: #1F1633; padding: 20px 24px; font-size: 1.0625rem; list-style: none; position: relative; padding-right: 56px; }
.mc-faq-item summary::-webkit-details-marker { display: none; }
.mc-faq-item summary::after { content: "+"; position: absolute; right: 24px; top: 50%; transform: translateY(-50%); font-family: 'DM Sans',sans-serif; font-weight: 400; font-size: 1.5rem; color: #4F2D7F; transition: transform 220ms ease; }
.mc-faq-item[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.mc-faq-item > div { padding: 0 24px 22px; }
.mc-faq-item p { font-family: 'DM Sans',sans-serif !important; color: #4A3F5C !important; line-height: 1.65 !important; }

/* BREADCRUMB */
.mc-crumb { font-family: 'DM Sans',sans-serif; font-size: 0.85rem; color: #7E7290; margin-bottom: 12px; }
.mc-crumb a { color: #4F2D7F; text-decoration: none; }
.mc-crumb a:hover { color: #E97E3A; }

/* BREAKOUT (sezioni full-width) */
.mc-full {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: 100vw !important;
}

/* === ARTICOLI INDEX + SINGLE === */
.mc-art-filters { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; padding: 0 24px; }
.mc-art-filters a { display: inline-flex; align-items: center; gap: 8px; padding: 10px 20px; border-radius: 999px; background: #fff; color: #4F2D7F; text-decoration: none; font-family: 'DM Sans',sans-serif; font-weight: 500; font-size: 0.92rem; box-shadow: 0 2px 8px rgba(31,22,51,0.04); transition: all 220ms ease; }
.mc-art-filters a:hover, .mc-art-filters a.active { background: #4F2D7F; color: #fff; transform: translateY(-2px); }
.mc-art-filters .dot { width: 8px; height: 8px; border-radius: 50%; display: inline-block; }
.mc-art-filters .dot-violet { background: #4F2D7F; }
.mc-art-filters .dot-orange { background: #E97E3A; }
.mc-art-filters .dot-pink { background: #C25E1F; }
.mc-art-filters .dot-green { background: #2D6A4F; }
.mc-art-filters .dot-sand { background: #C9A56B; }
.mc-art-filters .dot-gold { background: #F2B645; }
.mc-art-filters a:hover .dot, .mc-art-filters a.active .dot { background: #fff !important; }

.mc-art-grid { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 32px 24px; padding: 24px 0; }
@media (max-width: 900px) { .mc-art-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .mc-art-grid { grid-template-columns: 1fr; } }

.mc-art-card { background: transparent !important; padding: 0 !important; transition: transform 240ms cubic-bezier(0.4,0,0.2,1); cursor: pointer; }
.mc-art-card:hover { transform: translateY(-6px); }
.mc-art-card .wp-block-post-featured-image { margin: 0 !important; border-radius: 18px; overflow: hidden; box-shadow: 0 6px 20px rgba(31,22,51,0.08); transition: box-shadow 240ms ease; aspect-ratio: 16/9; }
.mc-art-card:hover .wp-block-post-featured-image { box-shadow: 0 16px 32px rgba(31,22,51,0.16); }
.mc-art-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.mc-art-card-body { padding: 20px 4px 8px !important; }
.mc-art-card-cat { font-family: 'DM Sans',sans-serif; font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: #4F2D7F !important; font-weight: 700; margin: 0 0 8px !important; }
.mc-art-card-cat a { color: #4F2D7F !important; text-decoration: none; }
.mc-art-card-title { font-family: 'Recoleta',serif !important; font-size: 1.375rem !important; line-height: 1.2 !important; margin: 0 0 10px !important; letter-spacing: -0.01em; }
.mc-art-card-title a { color: #1F1633 !important; text-decoration: none; transition: color 180ms ease; }
.mc-art-card:hover .mc-art-card-title a { color: #4F2D7F !important; }
.mc-art-card-excerpt { font-family: 'DM Sans',sans-serif !important; font-size: 0.95rem !important; color: #4A3F5C !important; line-height: 1.5 !important; margin: 0 !important; }

.mc-art-empty { text-align: center; padding: 80px 32px; background: #fff; border-radius: 18px; box-shadow: 0 4px 16px rgba(31,22,51,0.06); margin: 32px auto; max-width: 600px; }
.mc-art-empty-icon { width: 88px; height: 88px; border-radius: 18px; background: linear-gradient(135deg,#DCCDEF 0%,#FAD8BD 100%); display: inline-flex; align-items: center; justify-content: center; margin: 0 auto 24px; color: #4F2D7F; }
.mc-art-empty h3 { font-family: 'Recoleta',serif; font-size: 1.625rem; margin: 0 0 12px; color: #1F1633; }
.mc-art-empty p { font-family: 'DM Sans',sans-serif; color: #4A3F5C; max-width: 480px; margin: 0 auto 24px; line-height: 1.6; }
.mc-art-empty-cta { display: inline-block; padding: 14px 28px; border-radius: 999px; background: linear-gradient(135deg,#4F2D7F 0%,#6B3FA0 100%); color: #fff !important; text-decoration: none; font-family: 'DM Sans',sans-serif; font-weight: 600; transition: transform 180ms ease, box-shadow 180ms ease; }
.mc-art-empty-cta:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(79,45,127,0.32); }

/* === SINGLE ARTICLE === */
.single-post .wp-block-post-content { max-width: 720px !important; margin: 0 auto !important; padding: 0 clamp(20px,4vw,32px) !important; }
.single-post .wp-block-post-content h1 { font-family: 'Recoleta',serif !important; font-size: clamp(2rem,4vw,2.75rem) !important; line-height: 1.15 !important; letter-spacing: -0.02em !important; color: #1F1633 !important; margin: 32px 0 20px !important; }
.single-post .wp-block-post-content h2 { font-family: 'Recoleta',serif !important; font-size: clamp(1.5rem,3vw,2rem) !important; line-height: 1.2 !important; letter-spacing: -0.01em !important; color: #1F1633 !important; margin: 48px 0 16px !important; }
.single-post .wp-block-post-content h3 { font-family: 'Recoleta',serif !important; font-size: 1.375rem !important; color: #4F2D7F !important; margin: 32px 0 12px !important; }
.single-post .wp-block-post-content p { font-family: 'DM Sans',sans-serif !important; font-size: 1.0625rem !important; line-height: 1.75 !important; color: #1F1633 !important; margin: 0 0 18px !important; }
.single-post .wp-block-post-content p strong { color: #4F2D7F; }
.single-post .wp-block-post-content blockquote, .single-post .wp-block-quote { background: linear-gradient(135deg,#FFFBF4 0%,#DCCDEF 100%); border-left: 4px solid #E97E3A; border-radius: 0 16px 16px 0; padding: 24px 28px !important; margin: 32px 0 !important; }
.single-post .wp-block-post-content blockquote p, .single-post .wp-block-quote p { font-family: 'Recoleta',serif !important; font-style: italic; font-size: 1.25rem !important; line-height: 1.5 !important; color: #1F1633 !important; margin: 0 !important; }
.single-post .wp-block-post-content ul, .single-post .wp-block-post-content ol { padding-left: 24px; margin: 0 0 24px; font-family: 'DM Sans',sans-serif; font-size: 1.0625rem; line-height: 1.75; color: #1F1633; }
.single-post .wp-block-post-content li { margin-bottom: 8px; }
.single-post .wp-block-post-content img { border-radius: 18px; box-shadow: 0 6px 20px rgba(31,22,51,0.08); margin: 24px 0; }
.single-post .wp-block-post-title { font-family: 'Recoleta',serif !important; font-size: clamp(2.25rem,5vw,3.5rem) !important; line-height: 1.05 !important; letter-spacing: -0.02em !important; color: #1F1633 !important; max-width: 720px; margin: 0 auto 24px !important; padding: 0 clamp(20px,4vw,32px); text-align: center; }
.single-post .wp-block-post-featured-image { max-width: 1100px !important; margin: 0 auto 48px !important; padding: 0 clamp(20px,4vw,32px); }
.single-post .wp-block-post-featured-image img { border-radius: 18px; aspect-ratio: 16/9; object-fit: cover; box-shadow: 0 12px 32px rgba(31,22,51,0.12); }
.single-post .wp-block-post-terms { font-family: 'DM Sans',sans-serif; font-size: 0.75rem; letter-spacing: 0.1em; text-transform: uppercase; color: #4F2D7F; font-weight: 700; text-align: center; max-width: 720px; margin: 32px auto 8px !important; padding: 0 24px; }
.single-post .wp-block-post-date { font-family: 'DM Sans',sans-serif; font-size: 0.85rem; color: #7E7290; text-align: center; max-width: 720px; margin: 0 auto 32px !important; padding: 0 24px; }

/* === COOKIE BANNER: sposta a bottom, compatto, non invasivo === */
.cookieadmin_law_container {
  position: fixed !important;
  bottom: 16px !important;
  top: auto !important;
  left: 16px !important;
  right: 16px !important;
  max-width: 560px !important;
  margin: 0 auto !important;
  background: rgba(255, 251, 244, 0.96) !important;
  backdrop-filter: saturate(180%) blur(18px) !important;
  -webkit-backdrop-filter: saturate(180%) blur(18px) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 48px rgba(31, 22, 51, 0.22) !important;
  padding: 16px 20px !important;
  border: 1px solid rgba(79, 45, 127, 0.10) !important;
  z-index: 2000 !important;
  width: auto !important;
  font-family: 'DM Sans', sans-serif !important;
}
.cookieadmin_consent_inside { padding: 0 !important; }
#cookieadmin_notice_title { font-family: 'Recoleta', serif !important; font-size: 0.95rem !important; color: #1F1633 !important; margin: 0 0 4px !important; font-weight: 600 !important; }
#cookieadmin_notice { font-size: 0.82rem !important; color: #4A3F5C !important; line-height: 1.5 !important; margin: 0 0 12px !important; }
.cookieadmin_consent_btns { display: flex !important; gap: 8px !important; flex-wrap: wrap !important; justify-content: flex-end !important; }
.cookieadmin_btn {
  padding: 8px 16px !important;
  border-radius: 999px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  font-family: 'DM Sans', sans-serif !important;
  border: 0 !important;
  cursor: pointer !important;
  transition: transform 180ms ease, box-shadow 180ms ease !important;
}
.cookieadmin_accept_btn { background: linear-gradient(135deg, #C25E1F 0%, #E97E3A 100%) !important; color: #fff !important; }
.cookieadmin_accept_btn:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(233,126,58,0.32) !important; }
.cookieadmin_reject_btn { background: transparent !important; color: #4F2D7F !important; border: 1px solid #4F2D7F !important; }
.cookieadmin_reject_btn:hover { background: #4F2D7F !important; color: #fff !important; }
.cookieadmin_customize_btn { background: transparent !important; color: #7E7290 !important; padding: 8px 12px !important; }
.cookieadmin_customize_btn:hover { color: #1F1633 !important; }

@media (max-width: 540px) {
  .cookieadmin_law_container {
    left: 8px !important;
    right: 8px !important;
    bottom: 8px !important;
    padding: 14px 16px !important;
    border-radius: 18px !important;
  }
  .cookieadmin_consent_btns { justify-content: stretch !important; }
  .cookieadmin_btn { flex: 1; }
}

/* === FOOTER TOP: twin panels gemelle === */
.mc-footer-top {
  max-width: 1200px;
  margin: clamp(32px, 4vw, 56px) auto clamp(20px, 3vw, 32px);
  padding: 0 clamp(20px, 4vw, 32px);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  align-items: stretch;
}

.mc-footer-top > section {
  padding: clamp(28px, 2.6vw, 36px) !important;
  border-radius: 18px;
  display: flex !important;
  flex-direction: column !important;
  min-height: 360px;
  box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset, 0 2px 18px rgba(31,22,51,0.05);
  border: 1px solid rgba(79,45,127,0.06);
  overflow: hidden;
  position: relative;
  isolation: isolate;
}

/* Pannello 1 — Tre porte aperte: crema con wash viola tenue */
.mc-footer-cta-hero {
  background:
    radial-gradient(ellipse 90% 70% at 15% 0%, rgba(220,205,239,0.55), transparent 62%),
    radial-gradient(ellipse 70% 50% at 100% 100%, rgba(233,126,58,0.10), transparent 60%),
    #FFFBF4 !important;
}

/* Pannello 2 — Letture utili: sand caldo con wash viola+arancio */
.mc-footer-articoli {
  background:
    radial-gradient(ellipse 80% 60% at 100% 0%, rgba(250,216,189,0.65), transparent 60%),
    radial-gradient(ellipse 90% 65% at 0% 100%, rgba(220,205,239,0.45), transparent 60%),
    #F5EBD9 !important;
}

.mc-footer-top .mc-footer-band-inner {
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
}

/* Gerarchia gemella: eyebrow + heading + lead identici nei due pannelli */
.mc-footer-top .mc-eyebrow-purple {
  font: 700 0.7rem/1.2 'DM Sans', sans-serif !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4F2D7F !important;
  margin: 0 0 12px !important;
  display: inline-block;
}

.mc-footer-top h2,
.mc-footer-top h3 {
  font: 500 clamp(1.25rem, 1.6vw, 1.5rem)/1.2 'Recoleta', Georgia, serif !important;
  letter-spacing: -0.012em;
  color: #1F1633 !important;
  margin: 0 0 10px !important;
  max-width: 22ch;
}

.mc-footer-top .mc-lead {
  font: 400 0.9rem/1.5 'DM Sans', sans-serif !important;
  color: #4A3F5C !important;
  margin: 0 0 22px !important;
  max-width: 42ch;
}

/* Lista items: flat, separatori sottili, allineamento icon-grid coerente */
.mc-footer-top .mc-footer-tiles,
.mc-footer-top .mc-articoli-grid-footer {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  margin: 0 !important;
  flex: 1;
}

.mc-footer-top .mc-footer-tile,
.mc-footer-top .mc-art-card {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid rgba(79,45,127,0.10) !important;
  border-radius: 0 !important;
  padding: 14px 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  display: grid !important;
  grid-template-columns: 36px 1fr auto !important;
  column-gap: 14px !important;
  row-gap: 2px !important;
  align-items: center !important;
  text-decoration: none !important;
  transition: padding 240ms cubic-bezier(0.16, 1, 0.3, 1), background 200ms ease !important;
}

.mc-footer-top .mc-footer-tiles > *:last-child,
.mc-footer-top .mc-articoli-grid-footer > *:last-child {
  border-bottom: 1px solid rgba(79,45,127,0.10) !important;
}

.mc-footer-top .mc-footer-tile:hover,
.mc-footer-top .mc-art-card:hover {
  padding-left: 6px !important;
  padding-right: 6px !important;
  background: rgba(79,45,127,0.035) !important;
}

/* Icon tile — gemello chiave del pattern */
.mc-footer-top .mc-footer-tile-icon {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px;
  border-radius: 10px !important;
  background: linear-gradient(135deg, rgba(220,205,239,0.7), rgba(220,205,239,0.4)) !important;
  margin: 0 !important;
  color: #4F2D7F;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.mc-footer-top .mc-footer-tile-icon svg {
  width: 18px !important;
  height: 18px !important;
}

/* Tile titolo */
.mc-footer-top .mc-footer-tile h3 {
  font: 500 0.98rem/1.25 'Recoleta', serif !important;
  letter-spacing: -0.005em !important;
  margin: 0 !important;
  grid-column: 2 !important;
  color: #1F1633 !important;
  max-width: none !important;
}
.mc-footer-top .mc-footer-tile p { display: none !important; }

/* Micro-CTA tile (arrow only su mobile, label+arrow desktop) */
.mc-footer-top .mc-footer-tile a {
  background: transparent !important;
  color: #4F2D7F !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  font: 600 0.82rem/1 'DM Sans', sans-serif !important;
  text-decoration: none !important;
  grid-column: 3 !important;
  white-space: nowrap;
}
.mc-footer-top .mc-footer-tile a::after {
  content: " →";
  display: inline-block;
  transition: transform 240ms cubic-bezier(0.16, 1, 0.3, 1);
}
.mc-footer-top .mc-footer-tile:hover a::after {
  transform: translateX(4px);
}

/* Article card — stesso grid pattern, niente icona ma cat-tag come placeholder visivo */
.mc-footer-top .mc-art-card {
  grid-template-columns: 36px 1fr auto !important;
}
.mc-footer-top .mc-art-card::before {
  content: "";
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(250,216,189,0.85), rgba(233,126,58,0.25));
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
}
.mc-footer-top .mc-art-card .cat {
  font: 700 0.62rem/1 'DM Sans', sans-serif !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #C25E1F !important;
  margin: 0 !important;
  grid-column: 2;
  grid-row: 1;
}
.mc-footer-top .mc-art-card h4 {
  font: 500 0.95rem/1.25 'Recoleta', serif !important;
  letter-spacing: -0.005em !important;
  color: #1F1633 !important;
  margin: 3px 0 0 !important;
  grid-column: 2;
  grid-row: 2;
}
.mc-footer-top .mc-art-card p { display: none !important; }
.mc-footer-top .mc-art-card a {
  font: 600 0.82rem/1 'DM Sans', sans-serif !important;
  color: #4F2D7F !important;
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  grid-column: 3;
  grid-row: 1 / 3;
  align-self: center;
  white-space: nowrap;
}
.mc-footer-top .mc-art-card a::after {
  content: " →";
  display: inline-block;
  transition: transform 240ms cubic-bezier(0.16, 1, 0.3, 1);
}
.mc-footer-top .mc-art-card:hover a::after {
  transform: translateX(4px);
}

/* CTA finale "Tutti gli articoli" — pinned bottom, sostituisce il 3o tile slot mancante */
.mc-footer-top .mc-footer-articoli-cta {
  margin-top: auto !important;
  padding-top: 18px !important;
  text-align: left !important;
}
.mc-footer-top .mc-footer-articoli-cta a {
  font: 600 0.88rem/1 'DM Sans', sans-serif !important;
  color: #4F2D7F !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  display: inline-block;
  border-bottom: 1px solid rgba(79,45,127,0.25);
  padding-bottom: 2px !important;
  transition: color 220ms ease, border-color 220ms ease;
}
.mc-footer-top .mc-footer-articoli-cta a::after {
  content: " →";
  display: inline-block;
  transition: transform 240ms cubic-bezier(0.16, 1, 0.3, 1);
}
.mc-footer-top .mc-footer-articoli-cta a:hover {
  color: #C25E1F !important;
  border-color: #C25E1F;
}
.mc-footer-top .mc-footer-articoli-cta a:hover::after {
  transform: translateX(4px);
}

/* Mobile stack — fluid */
@media (max-width: 880px) {
  .mc-footer-top {
    grid-template-columns: 1fr;
    gap: 14px;
    margin: 28px auto 14px;
    padding: 0 18px;
  }
  .mc-footer-top > section {
    min-height: 0;
    padding: 26px !important;
    border-radius: 18px;
  }
  .mc-footer-top h2,
  .mc-footer-top h3 {
    font-size: clamp(1.15rem, 4.5vw, 1.35rem) !important;
  }
}
@media (max-width: 480px) {
  .mc-footer-top { padding: 0 14px; gap: 12px; }
  .mc-footer-top > section { padding: 22px !important; }
  .mc-footer-top .mc-footer-tile,
  .mc-footer-top .mc-art-card {
    grid-template-columns: 32px 1fr auto !important;
    column-gap: 12px !important;
    padding: 12px 0 !important;
  }
  .mc-footer-top .mc-footer-tile-icon,
  .mc-footer-top .mc-art-card::before {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px;
  }
  .mc-footer-top .mc-footer-tile a span,
  .mc-footer-top .mc-art-card a span { display: none; }
}

/* ===== from <style id="no-id"> ===== */
/* === MC-PX — modulo pagine riusabile (hero cinema + sezioni) === */
.px { font-family:'DM Sans',system-ui,sans-serif; color:#1F1633; padding-bottom:clamp(56px,8vw,96px); }
.px * { box-sizing:border-box; }
.px-bleed { width:100vw; max-width:none; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.px-hero { position:relative; overflow:hidden; min-height:clamp(500px,72vh,700px); display:flex; align-items:flex-end; background:#1F1633; isolation:isolate; }
.px-hero-bg { position:absolute; inset:0; z-index:0; background-size:cover; background-position:center 40%; transform:scale(1.05); animation:px-kb 26s ease-out infinite alternate; }
@keyframes px-kb { from{transform:scale(1.05)} to{transform:scale(1.13)} }
.px-hero-ov { position:absolute; inset:0; z-index:1; pointer-events:none; background:
  radial-gradient(ellipse 70% 60% at 12% 110%, rgba(79,45,127,0.5), transparent 60%),
  radial-gradient(ellipse 60% 50% at 90% 0%, rgba(233,126,58,0.26), transparent 60%),
  linear-gradient(180deg, rgba(31,22,51,0.4) 0%, transparent 32%, rgba(31,22,51,0.42) 58%, rgba(31,22,51,0.9) 100%); }
.px-hero-inner { position:relative; z-index:2; max-width:1200px; width:100%; margin:0 auto; padding:clamp(40px,7vw,84px) clamp(20px,4vw,40px); color:#FFFBF4; }
.px-eyebrow-h { display:inline-flex; align-items:center; gap:10px; font:600 0.72rem/1 'DM Sans',sans-serif; letter-spacing:0.16em; text-transform:uppercase; color:#F2B645; margin-bottom:16px; }
.px-hero-title { font:400 clamp(2.4rem,5.8vw,4.5rem)/0.99 'Recoleta',Georgia,serif; letter-spacing:-0.025em; color:#FFFBF4; margin:0 0 18px; max-width:18ch; text-shadow:0 2px 30px rgba(0,0,0,0.4); }
.px-hero-title em { font-style:italic; font-weight:300; color:#F2B645; }
.px-hero-sub { font:400 clamp(1rem,1.5vw,1.18rem)/1.5 'DM Sans',sans-serif; color:rgba(255,251,244,0.92); max-width:54ch; margin:0 0 28px; text-shadow:0 1px 14px rgba(0,0,0,0.5); }
.px-ctas { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.px-btn { display:inline-flex; align-items:center; gap:9px; font:600 0.98rem/1 'DM Sans',sans-serif; text-decoration:none !important; border-radius:999px; padding:15px 28px; transition:transform 220ms cubic-bezier(0.16,1,0.3,1),box-shadow 220ms,background 220ms; border:0; }
.px-btn.primary { background:linear-gradient(135deg,#C25E1F,#E97E3A); color:#FFFBF4 !important; box-shadow:0 10px 30px rgba(194,94,31,0.45); }
.px-btn.primary:hover { transform:translateY(-3px); box-shadow:0 18px 40px rgba(194,94,31,0.55); }
.px-btn.ghost { background:rgba(255,251,244,0.1); color:#FFFBF4 !important; border:1px solid rgba(255,251,244,0.4); }
.px-btn.ghost:hover { background:rgba(255,251,244,0.2); transform:translateY(-2px); }
.px-btn.ghost-dark { background:rgba(79,45,127,0.06); color:#4F2D7F !important; border:1px solid rgba(79,45,127,0.28); }
.px-btn.ghost-dark:hover { background:rgba(79,45,127,0.12); transform:translateY(-2px); }
.px-sec { max-width:1200px; margin:0 auto; padding:clamp(48px,7vw,92px) clamp(20px,4vw,40px); }
.px-sec .eyebrow { font:700 0.72rem/1 'DM Sans',sans-serif; letter-spacing:0.14em; text-transform:uppercase; color:#4F2D7F; margin:0 0 14px; }
.px-h2 { font:500 clamp(1.7rem,3.2vw,2.5rem)/1.12 'Recoleta',Georgia,serif; letter-spacing:-0.015em; color:#1F1633; margin:0 0 18px; max-width:24ch; }
.px-text { font:400 1.0625rem/1.65 'DM Sans',sans-serif; color:#4A3F5C; max-width:64ch; margin:0 0 16px; }
.px-text strong { color:#1F1633; font-weight:600; }
.px-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:32px; }
.px-grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; margin-top:32px; }
.px-card { background:#FFFBF4; border:1px solid rgba(79,45,127,0.09); border-radius:18px; padding:28px; transition:transform 200ms,box-shadow 200ms; }
.px-card:hover { transform:translateY(-4px); box-shadow:0 16px 40px -16px rgba(31,22,51,0.2); }
.px-card .ic { width:46px; height:46px; border-radius:12px; background:linear-gradient(135deg,rgba(220,205,239,0.7),rgba(220,205,239,0.4)); display:flex; align-items:center; justify-content:center; color:#4F2D7F; margin-bottom:18px; }
.px-card .ic svg { width:24px; height:24px; }
.px-card h3 { font:500 1.3rem/1.2 'Recoleta',serif; color:#1F1633; margin:0 0 10px; }
.px-card p { font:400 0.95rem/1.6 'DM Sans',sans-serif; color:#4A3F5C; margin:0; }
.px-card a.more { display:inline-block; margin-top:14px; font:600 0.85rem/1 'DM Sans',sans-serif; color:#4F2D7F; text-decoration:none; }
.px-steps { counter-reset:pxstep; margin-top:32px; }
.px-step { display:grid; grid-template-columns:64px 1fr; gap:24px; padding:26px 0; border-top:1px solid rgba(79,45,127,0.12); align-items:start; }
.px-step::before { counter-increment:pxstep; content:counter(pxstep,decimal-leading-zero); font:500 1.7rem/1 'Recoleta',serif; color:#E97E3A; }
.px-step h3 { font:500 1.3rem/1.2 'Recoleta',serif; color:#1F1633; margin:0 0 8px; }
.px-step p { font:400 1rem/1.6 'DM Sans',sans-serif; color:#4A3F5C; margin:0; max-width:62ch; }
.px-stats { background:linear-gradient(180deg,#4F2D7F,#371E5C); color:#FFFBF4; }
.px-stats .px-h2, .px-stats .eyebrow { color:#FFFBF4; }
.px-stats .eyebrow { color:#F2B645 !important; }
.px-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:32px; }
.px-stat .n { font:500 clamp(2.25rem,4vw,3.25rem)/1 'Recoleta',serif; color:#F2B645; letter-spacing:-0.02em; }
.px-stat .l { font:600 0.85rem/1.3 'DM Sans',sans-serif; color:#FFFBF4; margin-top:8px; }
.px-stat .m { font:400 0.78rem/1.4 'DM Sans',sans-serif; color:rgba(255,251,244,0.7); margin-top:4px; }
.px-warm { background:radial-gradient(ellipse 80% 70% at 50% 0%, rgba(241,217,166,0.4), transparent 60%), #FFFBF4; }
.px-violet-soft { background:radial-gradient(ellipse 80% 70% at 50% 0%, rgba(220,205,239,0.4), transparent 60%), #FFFBF4; }
.px-cta-final { background:radial-gradient(ellipse 70% 60% at 10% 0%, rgba(250,216,189,0.5), transparent 60%), radial-gradient(ellipse 60% 55% at 90% 100%, rgba(220,205,239,0.45), transparent 60%), #FFFBF4; text-align:center; }
.px-cta-final .px-h2 { margin-left:auto; margin-right:auto; }
.px-cta-final .px-ctas { justify-content:center; }
.px-note { max-width:1200px; margin:0 auto; padding:0 clamp(20px,4vw,40px); }
.px-note-box { background:rgba(79,45,127,0.04); border-left:3px solid #4F2D7F; border-radius:0 12px 12px 0; padding:20px 24px; font:400 0.92rem/1.6 'DM Sans',sans-serif; color:#4A3F5C; }
.px-note-box strong { color:#1F1633; }
/* Timeline */
.px-timeline { margin-top:32px; border-left:2px solid rgba(79,45,127,0.18); padding-left:28px; }
.px-tl { padding:0 0 26px; position:relative; }
.px-tl::before { content:""; position:absolute; left:-35px; top:4px; width:12px; height:12px; border-radius:50%; background:#E97E3A; box-shadow:0 0 0 4px #FFFBF4; }
.px-tl .yr { font:500 1.1rem/1 'Recoleta',serif; color:#4F2D7F; }
.px-tl .ev { font:400 0.98rem/1.5 'DM Sans',sans-serif; color:#4A3F5C; margin-top:4px; }
/* Contact cards */
.px-contact { display:flex; align-items:flex-start; gap:14px; }
.px-contact .ic { width:42px; height:42px; flex-shrink:0; border-radius:12px; background:rgba(220,205,239,0.5); display:flex; align-items:center; justify-content:center; color:#4F2D7F; }
.px-contact .ic svg { width:20px; height:20px; }
.px-contact .lab { font:600 0.72rem/1 'DM Sans',sans-serif; letter-spacing:0.1em; text-transform:uppercase; color:#7E7290; margin-bottom:4px; }
.px-contact a, .px-contact .v { font:500 1.05rem/1.3 'DM Sans',sans-serif; color:#1F1633; text-decoration:none; }
.px-contact a:hover { color:#4F2D7F; }
@media (max-width:880px) {
  .px-grid-3 { grid-template-columns:1fr; }
  .px-grid-2 { grid-template-columns:1fr; }
  .px-stats-grid { grid-template-columns:1fr 1fr; }
  .px-step { grid-template-columns:48px 1fr; gap:16px; }
}

/* ===== from <style id="no-id"> ===== */
/* === HERO Hybrid (wp:group native + slideshow wp:html bg) === */
.mvg-hero-wrap {
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  position: relative !important;
  overflow: hidden !important;
  background: #0E0820 !important;
  color: #fff !important;
  font-family: 'Barlow', sans-serif !important;
  min-height: 100vh !important;
  padding: clamp(100px, 14vw, 160px) 24px clamp(40px, 6vw, 80px) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
.mvg-hero-wrap > .mvg-bg-stage {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  overflow: hidden;
}
.mvg-hero-wrap > * { position: relative; z-index: 2; }
.mvg-hero-wrap > .mvg-bg-stage { z-index: 0 !important; }
.mvg-hero-wrap .mvg-bg-slide { position: absolute; inset: 0; background-size: cover; background-position: center 38%; opacity: 0; animation: mvg-kb 32s infinite; will-change: transform, opacity; }
.mvg-hero-wrap .mvg-bg-slide:nth-of-type(1) { animation-delay: 0s; }
.mvg-hero-wrap .mvg-bg-slide:nth-of-type(2) { animation-delay: 8s; }
.mvg-hero-wrap .mvg-bg-slide:nth-of-type(3) { animation-delay: 16s; }
.mvg-hero-wrap .mvg-bg-slide:nth-of-type(4) { animation-delay: 24s; }
@keyframes mvg-kb { 0% { opacity: 0; transform: scale(1.02); } 4% { opacity: 1; } 25% { opacity: 1; transform: scale(1.10); } 29% { opacity: 0; } 100% { opacity: 0; transform: scale(1.02); } }
.mvg-hero-wrap .mvg-overlay-hero { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse 70% 60% at 15% 10%, rgba(79,45,127,0.55), transparent 65%), radial-gradient(ellipse 65% 55% at 85% 20%, rgba(194,94,31,0.32), transparent 65%), radial-gradient(ellipse 80% 70% at 50% 110%, rgba(31,22,51,0.85), transparent 60%), linear-gradient(180deg, rgba(14,8,32,0.78) 0%, rgba(14,8,32,0.55) 35%, rgba(14,8,32,0.65) 60%, rgba(14,8,32,0.92) 100%); }

/* Content nativo Gutenberg styling */
.mvg-hero-wrap .mvg-gb-badge {
  display: inline-flex !important;
  align-items: center; gap: 8px;
  background: rgba(255,255,255,0.08) !important;
  -webkit-
  border-radius: 999px;
  padding: 6px 14px 6px 6px !important;
  font-size: 14px !important;
  color: rgba(255,255,255,0.92) !important;
  margin: 0 auto 24px !important;
  width: max-content;
  max-width: 100%;
  box-shadow: inset 0 1px 1px rgba(255,255,255,0.12);
}
.mvg-hero-wrap .mvg-gb-badge-tag { background: #fff; color: #000; padding: 4px 12px; border-radius: 999px; font-size: 12px; font-weight: 600; }
.mvg-hero-wrap .mvg-gb-h1 { font-family: 'Instrument Serif', Georgia, serif !important; font-style: italic !important; font-weight: 400 !important; font-size: clamp(2.5rem, 7vw, 5rem) !important; line-height: 0.85 !important; letter-spacing: -3px !important; color: #fff !important; margin: 0 auto 16px !important; max-width: 18ch; }
.mvg-hero-wrap .mvg-gb-sub { font-size: clamp(0.9rem, 1.4vw, 1rem) !important; font-weight: 300 !important; line-height: 1.5 !important; color: rgba(255,255,255,0.92) !important; max-width: 56ch; margin: 0 auto 28px !important; }
.mvg-hero-wrap .mvg-gb-ctas { margin: 0 0 40px !important; gap: 18px !important; }
.mvg-hero-wrap .is-style-mvg-cta-primary .wp-block-button__link { background: linear-gradient(135deg, #C25E1F 0%, #E97E3A 100%) !important; color: #fff !important; border-radius: 999px !important; padding: 12px 22px !important; font-size: 14px !important; font-weight: 500 !important; border: 0 !important; box-shadow: 0 10px 28px rgba(194,94,31,0.42); font-family: 'Barlow', sans-serif !important; }
.mvg-hero-wrap .is-style-mvg-cta-ghost .wp-block-button__link { background: transparent !important; color: #fff !important; border-radius: 999px !important; padding: 12px 22px !important; font-size: 14px !important; font-weight: 500 !important; border: 1px solid rgba(255,255,255,0.32) !important; font-family: 'Barlow', sans-serif !important; }
.mvg-hero-wrap .mvg-gb-stats { max-width: 760px !important; margin: 0 auto 40px !important; gap: 16px !important; }
.mvg-hero-wrap .mvg-gb-stat { background: rgba(255,255,255,0.06) !important; -webkit- border-radius: 18px; padding: 20px !important; text-align: left !important; box-shadow: inset 0 1px 1px rgba(255,255,255,0.12); flex-basis: 0; }
.mvg-hero-wrap .mvg-gb-stat-num { font-family: 'Instrument Serif', serif !important; font-style: italic !important; font-size: 36px !important; line-height: 1 !important; letter-spacing: -1px; color: #fff !important; margin: 0 !important; }
.mvg-hero-wrap .mvg-gb-stat-label { font-size: 12px !important; font-weight: 300 !important; color: rgba(255,255,255,0.85) !important; margin: 10px 0 0 !important; }
.mvg-hero-wrap .mvg-gb-partners { margin: 40px auto 0 !important; }
.mvg-hero-wrap .mvg-gb-partners-chip { display: inline-block !important; background: rgba(255,255,255,0.06) !important; border-radius: 999px !important; padding: 4px 14px !important; font-size: 12px !important; font-weight: 500 !important; color: #fff !important; margin: 0 auto 16px !important; width: max-content; }
.mvg-hero-wrap .mvg-gb-partners-row { font-family: 'Instrument Serif', serif !important; font-style: italic !important; color: #fff !important; font-size: clamp(1.2rem, 2.5vw, 1.75rem) !important; letter-spacing: -1px; margin: 0 !important; }

/* === CAP Gutenberg native styling === */
.mvg-cap-gb { font-family: 'Barlow', sans-serif; padding: clamp(80px, 12vw, 120px) 24px 60px !important; }
.mvg-cap-gb .mvg-gb-kicker { font-size: 14px !important; color: rgba(255,255,255,0.8) !important; margin: 0 0 16px !important; }
.mvg-cap-gb .mvg-gb-h2 { font-family: 'Instrument Serif', serif !important; font-style: italic !important; font-size: clamp(2.5rem, 7vw, 5.5rem) !important; line-height: 0.92 !important; letter-spacing: -3px !important; color: #fff !important; font-weight: 400 !important; margin: 0 !important; }
.mvg-cap-gb .mvg-gb-lead { margin-top: 20px !important; max-width: 600px; font-size: clamp(1rem, 1.6vw, 1.125rem) !important; font-weight: 300 !important; line-height: 1.4 !important; color: rgba(255,255,255,0.92) !important; }
.mvg-cap-gb .mvg-gb-cap-grid { margin-top: 64px !important; gap: 24px !important; }
.mvg-cap-gb .mvg-gb-cap-col { padding: 0 !important; }
.mvg-cap-gb .mvg-gb-cap-card {
  background: rgba(255,255,255,0.04) !important; -webkit-
  border-radius: 18px;
  padding: 24px !important;
  min-height: 380px;
  display: flex; flex-direction: column;
  box-shadow: inset 0 1px 1px rgba(255,255,255,0.12);
  height: 100%;
}
.mvg-cap-gb .mvg-gb-cap-tags { margin: 0 0 24px !important; display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.mvg-cap-gb .mvg-gb-tag {
  background: rgba(255,255,255,0.06);
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 11px !important;
  color: rgba(255,255,255,0.92);
  white-space: nowrap;
  box-shadow: inset 0 1px 1px rgba(255,255,255,0.08);
}
.mvg-cap-gb .mvg-gb-cap-title {
  font-family: 'Instrument Serif', serif !important;
  font-style: italic !important;
  font-size: clamp(1.75rem, 3vw, 2.25rem) !important;
  line-height: 1 !important;
  letter-spacing: -1px !important;
  color: #fff !important;
  font-weight: 400 !important;
  margin: auto 0 0 !important;
}
.mvg-cap-gb .mvg-gb-cap-body { margin: 12px 0 20px !important; font-size: 14px !important; font-weight: 300 !important; line-height: 1.4 !important; color: rgba(255,255,255,0.92) !important; }
.mvg-cap-gb .mvg-gb-cap-cta .wp-block-button__link {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,0.32) !important;
  border-radius: 999px !important;
  padding: 10px 18px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-family: 'Barlow', sans-serif !important;
}
.mvg-cap-gb .mvg-gb-cap-final { margin-top: 48px !important; }
.mvg-cap-gb .mvg-gb-cap-final .is-style-mvg-cta-primary .wp-block-button__link {
  background: linear-gradient(135deg, #C25E1F 0%, #E97E3A 100%) !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 14px 24px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  border: 0 !important;
  box-shadow: 0 10px 28px rgba(194,94,31,0.42);
  font-family: 'Barlow', sans-serif !important;
}
.mvg-cap-gb .mvg-gb-cap-legal { margin: 16px 0 0 !important; font-size: 12px !important; color: rgba(255,255,255,0.6) !important; }

/* === VOYAGES page (321) — zero gap totale tra TUTTI i blocchi === */
body.page-id-321 main#wp--skip-link--target { margin-top: 0 !important; }
body.page-id-321 main > .wp-block-group.alignfull {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-id-321 .wp-block-post-content { padding: 0 !important; }
body.page-id-321 .wp-block-post-content > *,
body.page-id-321 .wp-block-post-content > * > *,
body.page-id-321 .wp-block-group > *,
body.page-id-321 .mvg-hero,
body.page-id-321 .mvg-cap,
body.page-id-321 section.mc-section,
body.page-id-321 .mc-trust {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}
body.page-id-321 .mvg-hero .mvg-hero-inner { padding-top: 0 !important; }

/* === HOME (page-id-14) — riduci gap header → contenuto === */
body.page-id-14 main#wp--skip-link--target { margin-top: 0 !important; }
body.page-id-14 main > .wp-block-group.alignfull {
  padding-top: 0 !important;
  padding-bottom: clamp(40px, 6vw, 80px) !important;
}
body.page-id-14 .wp-block-post-content { padding-top: 0 !important; }
body.page-id-14 .wp-block-post-content > *:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* === ARTICOLI page (149) — hero attaccato al menu sticky === */
body.page-id-149 main#wp--skip-link--target { margin-top: 0 !important; }
body.page-id-149 main > .wp-block-group.alignfull {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
body.page-id-149 .wp-block-post-content { padding-top: 0 !important; }
body.page-id-149 .wp-block-post-content > *:first-child { margin-top: 0 !important; }

body.page-id-149 .art-hero {
  margin-top: 0 !important;
  padding: 0 !important;
  max-width: none !important;
}
body.page-id-149 .art-hero-stage {
  border-radius: 0 !important;
  aspect-ratio: 16/8 !important;
  min-height: clamp(480px, 65vh, 720px) !important;
}
@media (max-width: 880px) {
  body.page-id-149 .art-hero-stage {
    aspect-ratio: 3/4 !important;
    min-height: clamp(520px, 70vh, 700px) !important;
  }
}

/* === GUTENBERG WRAPPER RESET === */
@media (max-width: 1100px) {
  main#wp--skip-link--target { margin-top: 8px !important; }
  main#wp--skip-link--target > .wp-block-group.alignfull {
    padding-top: 0 !important;
    padding-bottom: 16px !important;
  }
  .wp-block-post-content { padding-top: 0 !important; }
  .wp-block-post-content > *:first-child { margin-top: 0 !important; padding-top: 0 !important; }
/* il wrapper hero e' spesso il PRIMO DIV dopo un tag <style>: azzera il block-gap (1.2rem) */
.wp-block-post-content > div:first-of-type,
.wp-block-post-content > section:first-of-type,
.wp-block-post-content > style:first-child + * { margin-top: 0 !important; }
.wp-block-post-content > .wp-block-html:first-child + .wp-block-html { margin-top: 0 !important; }
}
@media (min-width: 1101px) {
  main#wp--skip-link--target { margin-top: 24px !important; }
}

/* Transparenti per body gradient */
main#wp--skip-link--target,
main#wp--skip-link--target > .wp-block-group.alignfull,
.wp-block-post-content {
  background: transparent !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* === FULL BLEED VIEWPORT-BASED ===
   100vw è SEMPRE il viewport. margin: calc(50% - 50vw) compensa qualsiasi
   posizione del parent (nested has-global-padding incluso).
   overflow-x: clip su html/body kill scrollbar gutter side effects. */
.entry-content > .hs-page,
.entry-content > .mc-section,
.entry-content > .mc-hero-slideshow,
.entry-content > .mc-footer-top,
.entry-content > div[class*="mc-grad-"],
main .wp-block-post-content > .hs-page,
main .wp-block-post-content > .mc-section,
main .wp-block-post-content > .mc-hero-slideshow,
main .wp-block-post-content > .mc-footer-top,
.entry-content > .lt-page,
.entry-content > .rs-page,
.entry-content > .art-page,
main .wp-block-post-content > .lt-page,
main .wp-block-post-content > .rs-page,
main .wp-block-post-content > .art-page,
main .wp-block-post-content > div[class*="mc-grad-"] {
  max-width: none !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
  position: relative;
}

/* hs-page: zero padding inline, ogni .hs-N gestisce */
.entry-content > .hs-page,
main .wp-block-post-content > .hs-page {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Horizontal clip antiscrollbar */
html { overflow-x: clip; }
body { overflow-x: clip; max-width: 100vw; }

/* Heroes simmetria */
.hs-1, .hs-2, .hs-3, .hs-4 {
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* ===== from <style id="no-id"> ===== */
/* === RADIAL v5 — continuità totale via body bg fixed ===
   Sezioni cream condividono lo stesso sfondo (body fixed).
   Solo sezioni Deep/Sand/Night mantengono bg proprio (break voluto). */

/* ====== BODY: bg unico, fixed, attraversa tutta la pagina ====== */
html { background: #FBF5EE; }
body {
  background: radial-gradient(ellipse 60% 50% at 10% 8%, rgba(233,126,58,0.11), transparent 65%),
    radial-gradient(ellipse 50% 45% at 92% 18%, rgba(242,182,69,0.10), transparent 65%),
    radial-gradient(ellipse 55% 50% at 20% 60%, rgba(220,205,239,0.22), transparent 70%),
    radial-gradient(ellipse 60% 50% at 88% 55%, rgba(79,45,127,0.10), transparent 65%),
    radial-gradient(ellipse 65% 55% at 35% 105%, rgba(250,216,189,0.30), transparent 75%),
    radial-gradient(ellipse 50% 50% at 92% 92%, rgba(233,126,58,0.08), transparent 65%),
    #FBF5EE !important;
  background-attachment: fixed !important;
  background-size: cover !important;
}

/* ====== HEADER ====== */
/* ====== CONTAINER ====== */
.mc-container {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(20px, 4vw, 32px) !important;
  padding-right: clamp(20px, 4vw, 32px) !important;
}

/* ====== TUTTE LE SEZIONI LEGGERE → TRANSPARENT (mostrano body bg) ====== */
.mc-spazio-hero,
.mc-progetti-page-hero,
.mc-amali-sub-hero,
.mc-amali-luogo-hero,
.mc-articoli-page-hero,
.page-id-14 .mc-section.mc-grad-1,
.page-id-14 .mc-section.mc-grad-3,
.page-id-14 .mc-section.mc-grad-4,
.page-id-14 .mc-section.mc-grad-5,
.page-id-14 .mc-section.mc-grad-aziende,
.mc-amali-story,
.mc-amali-famiglie,
.mc-amali-bambini,
.mc-progetti-page,
.mc-sportello-home,
.mc-progetti-home,
.mc-amali-sub-body,
.mc-amali-luogo-body,
.mc-percorso,
.mc-faq,
.mc-pillars,
.mc-psico,
.mc-footer-cta-hero,
.mc-footer-articoli,
.mc-articoli-filters,
.mc-articoli-grid-wrap {
  background: transparent !important;
  background-image: none !important;
}

/* ====== SEZIONI DEEP — bg proprio (break voluto) ====== */
.mc-servizi,
.mc-amali-sostieni,
.mc-cta-form,
.mc-footer-info {
  background: radial-gradient(ellipse 85% 80% at 15% 20%, rgba(120,82,170,0.34), transparent 65%),
    radial-gradient(ellipse 70% 60% at 88% 75%, rgba(85,52,140,0.26), transparent 70%),
    radial-gradient(ellipse 60% 50% at 50% 105%, rgba(150,108,195,0.20), transparent 75%),
    radial-gradient(ellipse 50% 45% at 92% 18%, rgba(233,126,58,0.10), transparent 65%),
    #2E1B5C !important;
  color: #fff !important;
}

/* aMALI hero — palette sand dedicata */
.mc-amali-hero {
  background: radial-gradient(ellipse 75% 60% at 20% 25%, rgba(201,165,107,0.28), transparent 65%),
    radial-gradient(ellipse 60% 50% at 88% 28%, rgba(224,190,133,0.26), transparent 65%),
    radial-gradient(ellipse 65% 50% at 40% 100%, rgba(241,217,166,0.38), transparent 65%),
    radial-gradient(ellipse 50% 50% at 85% 88%, rgba(233,126,58,0.10), transparent 65%),
    #F1D9A6 !important;
}

/* Sub-footer FLAT */
.mc-footer-legal-band {
  background: #22113D !important;
  background-image: none !important;
}

/* ====== Padding sezioni uniforme ====== */
.mc-spazio-hero,
.mc-progetti-page-hero,
.mc-amali-sub-hero,
.mc-amali-luogo-hero,
.mc-articoli-page-hero,
.mc-amali-hero {
  padding-top: clamp(80px, 10vw, 128px) !important;
  padding-bottom: clamp(56px, 7vw, 80px) !important;
}

.mc-pillars,
.mc-servizi,
.mc-percorso,
.mc-psico,
.mc-faq,
.mc-cta-form,
.mc-amali-story,
.mc-amali-bambini,
.mc-amali-famiglie,
.mc-amali-sostieni,
.mc-progetti-page,
.mc-amali-sub-body,
.mc-amali-luogo-body {
  padding-top: clamp(64px, 8vw, 96px) !important;
  padding-bottom: clamp(64px, 8vw, 96px) !important;
}

/* ====== Hero h1 uniforme ====== */
.mc-spazio-hero h1,
.mc-progetti-page-hero h1,
.mc-amali-sub-hero h1,
.mc-amali-luogo-hero h1,
.mc-articoli-page-hero h1 {
  font-family: 'Recoleta', Georgia, serif !important;
  font-size: clamp(2rem, 5vw, 3.25rem) !important;
  letter-spacing: -0.015em !important;
  line-height: 1.1 !important;
  margin: 0 0 16px !important;
  color: #1F1633 !important;
}

/* === BREAKOUT: forza sezioni a width 100vw rompendo content-wrapper === */
.sf-section, .pg-section, .ct-section,
.am-hero, .am-quote, .am-stats, .am-sostieni, .am-subnav,
.sub-hero, .sub-body, .lg-hero, .lg-body,
.pj-hero, .pj-vision,
.art-hero, .art-filters, .art-grid,
.ct-hero, .ct-ways, .ct-sportello, .ct-regions, .ct-social, .ct-legal,
.hp-intro, .hp-variant, .hp-cta-final,
.mc-az-hero, .mc-az-quote, .mc-az-modes, .mc-az-benefits, .mc-az-cta,
.mc-cinque-hero, .mc-cinque-card, .mc-cinque-steps, .mc-cinque-what, .mc-cinque-diff, .mc-cinque-reminder,
.mc-contatti-hero, .mc-contatti-ways, .mc-contatti-sportello, .mc-contatti-social, .mc-contatti-legal {
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: 100vw !important;
}

/* I figli wp:html non devono ereditare max-width constrained */
.wp-block-html { max-width: none !important; width: 100% !important; }

/* Main wrapper page content full width */
main.wp-block-group, .wp-site-blocks main, body.page main, body.page .wp-block-post-content {
  max-width: none !important;
}
body.page .wp-block-post-content > * {
  max-width: none !important;
}

/* Override title bar WP che a volte aggiunge h1 separato sopra */
body.page .wp-block-post-title {
  display: none !important;
}

/* ===== from <style id="no-id"> ===== */
.mc-footer { font-family: 'DM Sans', sans-serif; }
.mc-footer-band { padding: clamp(28px, 4vw, 52px) 0; }
.mc-footer-band-inner { max-width: 1200px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 32px); }

/* Fascia 1: Big CTA hero */
.mc-footer-cta-hero { background: linear-gradient(180deg, #DCCDEF 0%, #C9B3E0 100%); color: #1F1633; }
.mc-footer-cta-hero h2 { font-family: 'Recoleta', Georgia, serif; font-size: clamp(1.125rem, 1.8vw, 1.375rem); margin: 0 0 6px; letter-spacing: -0.005em; line-height: 1.25; max-width: 760px; font-weight: 500; }
.mc-footer-cta-hero .mc-eyebrow-purple { font-size: 0.75rem; letter-spacing: 0.08em; text-transform: uppercase; color: #4F2D7F; margin-bottom: 8px; font-weight: 600; }
.mc-footer-cta-hero .mc-lead { font-size: 0.88rem; max-width: 600px; color: #371E5C; margin: 0 0 18px; opacity: 0.85; }
.mc-footer-tiles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 16px; }
.mc-footer-tile { background: rgba(255,255,255,0.85); border-radius: 18px; padding: 16px 18px; box-shadow: 0 2px 10px rgba(31,22,51,0.06); transition: transform 240ms cubic-bezier(0.4,0,0.2,1), box-shadow 240ms ease; display: flex; align-items: center; gap: 12px; }
.mc-footer-tile:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(31,22,51,0.15); }
.mc-footer-tile-icon { width: 36px; height: 36px; min-width: 36px; border-radius: 10px; background: linear-gradient(135deg,#FAD8BD 0%,#DCCDEF 100%); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 0; flex-shrink: 0; }
.mc-footer-tile-icon svg { width: 18px; height: 18px; }
.mc-footer-tile h3 { font-family: 'Recoleta', serif; font-size: 0.95rem; margin: 0 0 2px; color: #1F1633; line-height: 1.2; }
.mc-footer-tile p { font-size: 0.78rem; color: #4A3F5C; margin: 0; line-height: 1.4; opacity: 0.85; display: none; }
.mc-footer-tile a { display: inline-flex; align-items: center; background: transparent; color: #4F2D7F; padding: 0; border-radius: 0; text-decoration: none; font-weight: 600; font-size: 0.78rem; transition: color 180ms ease; margin-left: auto; white-space: nowrap; }
.mc-footer-tile a:hover { color: #E97E3A; background: transparent; }

/* Fascia 2: Articoli in evidenza */
.mc-footer-articoli { background: linear-gradient(180deg, #C9B3E0 0%, #F1E7DA 100%); }
.mc-footer-articoli h3 { font-family: 'Recoleta', serif; font-size: clamp(1rem, 1.5vw, 1.25rem); margin: 0 0 4px; color: #1F1633; font-weight: 500; }
.mc-footer-articoli .mc-lead { color: #4A3F5C; margin: 0 0 14px; max-width: 600px; font-size: 0.82rem; opacity: 0.85; }
.mc-articoli-grid-footer { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.mc-art-card { background: #fff; border-radius: 12px; padding: 12px 14px; box-shadow: 0 2px 8px rgba(31,22,51,0.05); transition: transform 220ms ease, box-shadow 220ms ease; }
.mc-art-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(31,22,51,0.12); }
.mc-art-card .cat { font-size: 0.62rem; text-transform: uppercase; letter-spacing: 0.08em; color: #4F2D7F; font-weight: 700; margin-bottom: 2px; }
.mc-art-card h4 { font-family: 'Recoleta', serif; font-size: 0.88rem; margin: 0 0 4px; line-height: 1.25; color: #1F1633; font-weight: 500; }
.mc-art-card p { display: none; }
.mc-art-card a { color: #4F2D7F; font-weight: 600; text-decoration: none; font-size: 0.76rem; }
.mc-art-card a:hover { color: #E97E3A; }
.mc-footer-articoli-cta { margin-top: 14px; text-align: center; }
.mc-footer-articoli-cta a { color: #4F2D7F; font-weight: 600; text-decoration: none; padding: 7px 16px; border: 1px solid #4F2D7F; border-radius: 999px; display: inline-block; transition: background 180ms ease, color 180ms ease; font-size: 0.78rem; }
.mc-footer-articoli-cta a:hover { background: #4F2D7F; color: #fff; }

/* Fascia 3: Info compatta + newsletter */
.mc-footer-info { background: linear-gradient(180deg, #371E5C 0%, #4F2D7F 100%); color: #fff; }
.mc-footer-info-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.2fr; gap: 36px; }
.mc-footer-info h4 { font-family: 'Recoleta', serif; font-size: 1rem; margin: 0 0 14px; color: #fff; letter-spacing: 0.02em; }
.mc-footer-info .col-brand .logo { font-family: 'Recoleta', serif; font-size: 1.45rem; color: #fff; margin-bottom: 8px; display: block; }
.mc-footer-info .col-brand .logo strong { font-weight: 600; }
.mc-footer-info .col-brand p { font-size: 0.9rem; line-height: 1.5; color: #DCCDEF; margin: 0 0 14px; }
.mc-footer-info .mc-socials { display: flex; gap: 12px; margin-top: 8px; }
.mc-footer-info .mc-socials a { width: 36px; height: 36px; border-radius: 50%; background: rgba(255,255,255,0.1); color: #fff; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; transition: background 180ms ease, transform 180ms ease; }
.mc-footer-info .mc-socials a:hover { background: #E97E3A; transform: scale(1.08); }
.mc-footer-info .mc-socials svg { width: 18px; height: 18px; fill: currentColor; }
.mc-footer-info .col-explore a, .mc-footer-info .col-community a { display: block; color: #DCCDEF; text-decoration: none; padding: 4px 0; font-size: 0.92rem; transition: color 180ms ease; }
.mc-footer-info .col-explore a:hover, .mc-footer-info .col-community a:hover { color: #FAD8BD; }
.mc-footer-info .col-contact a { color: #DCCDEF; text-decoration: none; display: block; padding: 4px 0; font-size: 0.92rem; }
.mc-footer-info .col-contact a:hover { color: #FAD8BD; }
.mc-footer-info .col-contact .mute { color: #B9A3CC; font-size: 0.85rem; display: block; padding: 2px 0; }

/* Newsletter form */
.mc-newsletter { margin-top: 16px; }
.mc-newsletter form { display: flex; gap: 8px; flex-wrap: wrap; }
.mc-newsletter input[type="email"] { flex: 1; min-width: 180px; padding: 12px 18px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.2); background: rgba(255,255,255,0.08); color: #fff; font-size: 0.92rem; font-family: inherit; }
.mc-newsletter input[type="email"]::placeholder { color: rgba(220,205,239,0.6); }
.mc-newsletter input[type="email"]:focus { outline: 2px solid #E97E3A; outline-offset: 2px; background: rgba(255,255,255,0.14); }
.mc-newsletter button { background: linear-gradient(135deg, #C25E1F 0%, #E97E3A 100%); color: #fff; border: 0; padding: 12px 22px; border-radius: 999px; font-weight: 600; font-size: 0.92rem; cursor: pointer; font-family: inherit; transition: transform 180ms ease, box-shadow 180ms ease; }
.mc-newsletter button:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(233,126,58,0.4); }

/* Fascia 4: Sub-footer legal */
.mc-footer-legal-band { background: #2A1648; color: #B9A3CC; padding: 18px 0; font-size: 0.82rem; }
.mc-footer-legal-band-inner { max-width: 1200px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 32px); display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; }
.mc-footer-legal-band a { color: #DCCDEF; text-decoration: none; margin-left: 14px; transition: color 180ms ease; }
.mc-footer-legal-band a:hover { color: #E97E3A; }

@media (max-width: 900px) {
  .mc-footer-tiles { grid-template-columns: 1fr; }
  .mc-articoli-grid-footer { grid-template-columns: 1fr; }
  .mc-footer-info-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 540px) {
  .mc-footer-info-grid { grid-template-columns: 1fr; }
  .mc-footer-legal-band-inner { flex-direction: column; align-items: flex-start; }
  .mc-footer-legal-band a { margin: 0 14px 0 0; }
}

/* ===== from <style id="no-id"> ===== */
/* Forza il cookie banner CookieAdmin in basso, non intrusivo */
.cookieadmin_law_container {
  position: fixed !important;
  top: auto !important;
  bottom: 16px !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  max-width: 720px !important;
  width: calc(100% - 32px) !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 50px rgba(31,22,51,0.22) !important;
  z-index: 99999 !important;
  margin: 0 !important;
}
/* niente overlay scuro che blocca la pagina */
.cookieadmin_overlay, .cookieadmin_law_overlay { background: transparent !important; pointer-events: none !important; }

/* ===== from <style id="no-id"> ===== */
/* === COERENZA BORDI MOBILE ===
   Riduce il root padding WP (spacing-50 = 30-50px) su mobile e allinea
   articolo/letture al resto del sito. alignfull ricalcola da queste var. */
@media (max-width: 880px) {
  body {
    --wp--style--root--padding-left: 16px !important;
    --wp--style--root--padding-right: 16px !important;
  }
  /* Articolo: niente doppio padding — usa solo il root (16px) */
  body.single-post .wp-block-post-content,
  body.single .wp-block-post-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 880px !important;
    margin-inline: auto !important;
  }
  /* Letture: padding mobile coerente 16 */
  .lt-head { padding-left: 16px !important; padding-right: 16px !important; }
  .lt-wall { padding-left: 16px !important; padding-right: 16px !important; gap: 12px !important; }
  /* px-sec pagine: padding mobile 16 */
  .px-sec, .vt-sec, .am2-sec, .af-sec { padding-left: 16px !important; padding-right: 16px !important; }
}
@media (max-width: 480px) {
  body {
    --wp--style--root--padding-left: 14px !important;
    --wp--style--root--padding-right: 14px !important;
  }
  .lt-head, .lt-wall { padding-left: 14px !important; padding-right: 14px !important; }
}

/* ===== from <style id="no-id"> ===== */
/* === HERO attaccata all'header — azzera gap Gutenberg su TUTTE le pagine === */
main#wp--skip-link--target { margin-top: 0 !important; }
main#wp--skip-link--target > .wp-block-group.alignfull { padding-top: 0 !important; }
.wp-block-post-content { padding-top: 0 !important; }
.wp-block-post-content > *:first-child { margin-top: 0 !important; padding-top: 0 !important; }
/* il wrapper hero e' spesso il PRIMO DIV dopo un tag <style>: azzera il block-gap (1.2rem) */
.wp-block-post-content > div:first-of-type,
.wp-block-post-content > section:first-of-type,
.wp-block-post-content > style:first-child + * { margin-top: 0 !important; }
.wp-block-post-content > .wp-block-html:first-child + .wp-block-html { margin-top: 0 !important; }
/* il primo blocco wp:html (wrapper hero) non deve avere margine sopra */
.wp-block-post-content > .wp-block-html:first-child { margin-top: 0 !important; }
/* mobile: nessuno spazio extra sopra la hero */
@media (max-width: 880px) {
  main#wp--skip-link--target { margin-top: 0 !important; }
  main#wp--skip-link--target > .wp-block-group.alignfull { padding-top: 0 !important; padding-bottom: 0 !important; }
}

/* ===== from <style id="no-id"> ===== */
/* === FIX 3: HEADER sovrappone le foto (fixed overlay) === */
.mc-header-wrap { position: fixed !important; top: 0; left: 0; right: 0; z-index: 1000 !important; }
main#wp--skip-link--target { padding-top: 0 !important; }
/* le hero con foto restano flush (foto dietro header). Contenuto bottom-aligned = visibile.
   Pagine/sezioni senza foto-hero in cima: spazio per non finire sotto l'header */
body.single-post .wp-block-post-content,
body.single .wp-block-post-content { padding-top: clamp(84px, 12vh, 112px) !important; }
.lt-head { padding-top: clamp(96px, 13vh, 124px) !important; }
.dona-hero { padding-top: clamp(110px, 16vh, 150px) !important; }
@media (max-width: 880px) {
  body.single-post .wp-block-post-content, body.single .wp-block-post-content { padding-top: 76px !important; }
  .lt-head { padding-top: 84px !important; }
  .dona-hero { padding-top: 96px !important; }
}

/* === FIX 2: ARTICOLO — via "Scritto da" + autore, categoria diventa eyebrow === */
body.single-post .wp-block-group:has(> .wp-block-post-author-name) > p.wp-block-paragraph,
body.single-post .wp-block-post-author-name { display: none !important; }
body.single-post .wp-block-group:has(> .wp-block-post-author-name) {
  margin-bottom: 14px !important; gap: 0 !important;
}
body.single-post .taxonomy-category a {
  font: 700 0.75rem/1 'DM Sans', sans-serif !important;
  letter-spacing: 0.14em !important; text-transform: uppercase !important;
  color: #4F2D7F !important; text-decoration: none !important; font-weight: 700 !important;
}
/* rimuove la mia eyebrow statica "ARTICOLO · METACOMETA" */
body.single-post .wp-block-post-content > h1::before { content: none !important; display: none !important; }

/* === FIX 1: cookie — link footer per riaprire preferenze === */
.mc-cookie-reopen { cursor: pointer; }

/* ===== from <style id="no-id"> ===== */
/* header usa il suo .mc-container 1240 nativo */
/* kill gap 19px (1.2rem block-gap) sopra la prima sezione/hero */
.wp-site-blocks > main#wp--skip-link--target { margin-top: 0 !important; margin-block-start: 0 !important; }
main#wp--skip-link--target > * { margin-block-start: 0 !important; }
.wp-block-post-content > section:first-of-type, .wp-block-post-content > div:first-of-type { margin-top: 0 !important; margin-block-start: 0 !important; }

/* ===== from <style id="no-id"> ===== */
/* ===== SFONDO ANIMATO GLOBALE (fixed dietro tutto) ===== */
html { background:#FBF5EE !important; }
body { background:transparent !important; }
body::before, body::after { display:none !important; }
.wp-site-blocks { background:transparent !important; }
main#wp--skip-link--target, main#wp--skip-link--target > .wp-block-group.alignfull,
.wp-block-post-content { background:transparent !important; }

#mcbg { position:fixed; inset:0; z-index:-2; overflow:hidden; background:#FBF5EE; pointer-events:none; }
#mcbg b { position:absolute; border-radius:50%; filter:blur(75px); will-change:transform; display:block; }
#mcbg .b1 { width:54vw; height:54vw; left:-12vw; top:-14vh; background:radial-gradient(circle, rgba(233,126,58,0.40), transparent 62%); animation:gd1 17s ease-in-out infinite alternate; }
#mcbg .b2 { width:50vw; height:50vw; right:-14vw; top:-8vh; background:radial-gradient(circle, rgba(79,45,127,0.40), transparent 62%); animation:gd2 21s ease-in-out infinite alternate; }
#mcbg .b3 { width:46vw; height:46vw; left:8vw; bottom:-18vh; background:radial-gradient(circle, rgba(242,182,69,0.34), transparent 62%); animation:gd3 19s ease-in-out infinite alternate; }
#mcbg .b4 { width:48vw; height:48vw; right:-6vw; bottom:-12vh; background:radial-gradient(circle, rgba(155,123,193,0.40), transparent 62%); animation:gd4 23s ease-in-out infinite alternate; }
#mcbg .b5 { width:38vw; height:38vw; left:28vw; top:18vh; background:radial-gradient(circle, rgba(250,216,189,0.42), transparent 60%); animation:gd5 15s ease-in-out infinite alternate; }
#mcbg .b6 { width:42vw; height:42vw; right:18vw; top:34vh; background:radial-gradient(circle, rgba(107,63,160,0.32), transparent 62%); animation:gd6 25s ease-in-out infinite alternate; }
#mcbg .b7 { width:34vw; height:34vw; left:40vw; bottom:6vh; background:radial-gradient(circle, rgba(233,126,58,0.30), transparent 60%); animation:gd7 18s ease-in-out infinite alternate; }
#mcbg .b8 { width:36vw; height:36vw; left:-4vw; top:40vh; background:radial-gradient(circle, rgba(220,205,239,0.5), transparent 62%); animation:gd8 20s ease-in-out infinite alternate; }
#mcbg .b9 { width:30vw; height:30vw; right:34vw; bottom:30vh; background:radial-gradient(circle, rgba(242,182,69,0.30), transparent 60%); animation:gd9 16s ease-in-out infinite alternate; }
@keyframes gd1 { from{translate:0 0; scale:1} to{translate:16vw 8vh; scale:1.18} }
@keyframes gd2 { from{translate:0 0; scale:1.1} to{translate:-15vw 10vh; scale:0.92} }
@keyframes gd3 { from{translate:0 0} to{translate:14vw -9vh; scale:1.2} }
@keyframes gd4 { from{translate:0 0; scale:1.05} to{translate:-13vw -8vh; scale:0.9} }
@keyframes gd5 { from{translate:0 0} to{translate:-18vw 6vh; scale:1.25} }
@keyframes gd6 { from{translate:0 0; scale:1.08} to{translate:16vw -7vh; scale:0.94} }
@keyframes gd7 { from{translate:0 0} to{translate:-20vw -10vh; scale:1.15} }
@keyframes gd8 { from{translate:0 0; scale:0.95} to{translate:15vw 9vh; scale:1.2} }
@keyframes gd9 { from{translate:0 0} to{translate:18vw 8vh; scale:0.9} }
@media (prefers-reduced-motion: reduce) { #mcbg b { animation:none !important; } }

/* ===== sezioni CHIARE -> trasparenti (mostra il bg) ===== */
body [class*="mc-grad-"],
body .mc-section:not(.mc-bg-deep):not(.mc-stories-fw):not(.mc-sportello-home):not(.mc-progetti-home),
.px-warm, .px-violet-soft,
.am2-kids, .am2-sostieni, .am2-sec:not(.am2-stats),
.af-paure, .af-sec,
.px-sec, .vt-sec, .st-sec:not(.st-violet):not(.st-orange):not(.st-photo) {
  background: transparent !important;
}
/* card interne: superficie piena leggibile (de-glass) */
.px-card, .am2-kid, .am2-step, .af-paura, .af-cluster, .am2-tier {
  background: #FFFFFF !important;
}
/* OPACHE (restano): hero foto, viola, arancio, deep */
.mc-cine, .px-hero, .af-hero, .am2-hero, .px-stats, .am2-stats,
.mc-bg-deep, .af-impact, .am2-stats, [class*="gl-deep"] {
  /* invariate */
}

/* override alta specificità per home: sezioni gradient chiare -> trasparenti */
body.page-id-14 .mc-section[class*="mc-grad-"],
body.page-id-14 .mc-section:not(.mc-bg-deep):not(.mc-stories-fw) {
  background: transparent !important;
}

/* ===== from <style id="no-id"> ===== */
.entry-content > .mc-cine, main .wp-block-post-content > .mc-cine {
  width: 100vw !important; max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* ===== from <style id="no-id"> ===== */
/* rimuovi divider sopra le sedi */
.mc-trust { border-top: none !important; border-bottom: none !important; }

/* === CARD: superficie piena, bordo tenue, ombra tintata viola (de-glass) === */
.px-card, .am2-kid, .am2-step, .af-paura, .af-cluster, .am2-tier,
  .dona-card, .mc-card {
  background: #FFFFFF !important;
  border: 1px solid rgba(31,22,51,0.08) !important;
  box-shadow: 0 8px 30px rgba(31,22,51,0.06) !important;
}
/* card su sezioni scure (viola/arancio): vetro chiaro trasparente */
.px-stats .px-card, .am2-stats .px-card { background: rgba(255,255,255,0.12) !important; }

/* === CITTÀ sedi cliccabili === */
.mc-trust-region { text-decoration: none !important; cursor: pointer; transition: color 180ms ease; position: relative; }
.mc-trust-region::before { content: none; }
.mc-trust-region:hover { color: #C25E1F !important; }
.mc-trust-region:hover::after { content: ""; position: absolute; left: 14px; right: 0; bottom: -3px; height: 1.5px; background: #E97E3A; }

/* === BG ANIMATO: colori più accentuati su mobile === */
@media (max-width: 880px) {
  #mcbg b { filter: blur(58px) saturate(1.5) brightness(1.06) !important; }
  #mcbg .b1 { background: radial-gradient(circle, rgba(233,126,58,0.55), transparent 62%) !important; }
  #mcbg .b2 { background: radial-gradient(circle, rgba(79,45,127,0.55), transparent 62%) !important; }
  #mcbg .b3 { background: radial-gradient(circle, rgba(242,182,69,0.46), transparent 62%) !important; }
  #mcbg .b4 { background: radial-gradient(circle, rgba(155,123,193,0.52), transparent 62%) !important; }
  #mcbg .b5 { background: radial-gradient(circle, rgba(250,216,189,0.55), transparent 60%) !important; }
  #mcbg .b6 { background: radial-gradient(circle, rgba(107,63,160,0.46), transparent 62%) !important; }
  #mcbg .b7 { background: radial-gradient(circle, rgba(233,126,58,0.44), transparent 60%) !important; }
  #mcbg .b8 { background: radial-gradient(circle, rgba(220,205,239,0.62), transparent 62%) !important; }
  #mcbg .b9 { background: radial-gradient(circle, rgba(242,182,69,0.44), transparent 60%) !important; }
}

/* ===== from <style id="no-id"> ===== */
/* === Unifica TUTTE le card chiare: superficie piena (de-glass) === */
.mc-fr-card, .mc-story-card-link, .cta-tel, .mc-sportello-home .cta-tel,
.lg-fact, .sub-body .callout, .dona-amount:not(.active), .dona-toggle, .vl-pola {
  background: #FFFFFF !important;
  border: 1px solid rgba(31,22,51,0.08) !important;
  box-shadow: 0 8px 30px rgba(31,22,51,0.06) !important;
}
/* dona tiles: override piu' forte (specificita' + longhand) per battere .dona-amount */
.dona-card .dona-amount:not(.active), .dona-grid .dona-amount:not(.active),
.dona-amounts .dona-amount:not(.active) {
  background-color: rgba(255,255,255,0.48) !important;
  background-image: none !important;
}

/* ===== from <style id="no-id"> ===== */
/* === RADIUS CONCENTRICO: img interno = radius card - padding === */
.mc-card { padding: 14px !important; border-radius: 18px !important; }
.mc-card .wp-block-image, .mc-card figure.wp-block-image { margin: 0 0 4px !important; border-radius: 18px !important; overflow: hidden !important; }
.mc-card .wp-block-image img, .mc-card figure img { border-radius: 18px !important; display: block; width: 100%; }
/* content group: niente doppio padding, solo respiro interno */
.mc-card > .wp-block-group, .mc-card .wp-block-group[style*="padding"] { padding: 10px 10px 6px !important; }

/* ===== from <style id="no-id"> ===== */
/* Pre-footer integrato nel footer viola, quieto */
.mc-footer{
  background:
    radial-gradient(ellipse 85% 80% at 15% 18%, rgba(120,82,170,0.34), transparent 65%),
    radial-gradient(ellipse 70% 60% at 88% 80%, rgba(85,52,140,0.26), transparent 70%),
    #2E1B5C !important;
}
.mc-footer-info{ background: transparent !important; }
/* pannelli: niente glass card, trasparenti, compatti */
.mc-footer-top{ margin-top: clamp(8px,2vw,24px) !important; align-items: stretch; }
.mc-footer-top .mc-footer-cta-hero,
.mc-footer-top .mc-footer-articoli{
  background: transparent !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
  border:0 !important; box-shadow:none !important; border-radius:0 !important;
  padding: clamp(14px,2.2vw,26px) clamp(10px,2vw,22px) !important;
}
.mc-footer-top .mc-footer-articoli{ border-left:1px solid rgba(255,255,255,0.10) !important; }
/* testo chiaro su viola */
.mc-footer-top h2,
.mc-footer-top .mc-footer-cta-hero h2,
.mc-footer-top .mc-footer-articoli h3,
.mc-footer-top .mc-footer-tile h3,
.mc-footer-top .mc-art-card h4{ color:#FFFFFF !important; }
.mc-footer-top .mc-lead{ color: rgba(242,234,219,0.72) !important; }
.mc-footer-top .mc-eyebrow-purple,
.mc-footer-top .mc-art-card .cat{ color:#F2B645 !important; }
.mc-footer-top .mc-footer-tile a,
.mc-footer-top .mc-art-card a,
.mc-footer-top .mc-footer-articoli-cta a{ color:#F2EADB !important; }
.mc-footer-top .mc-footer-tile a:hover,
.mc-footer-top .mc-art-card a:hover{ color:#FFFFFF !important; }
/* righe + separatori chiari */
.mc-footer-top .mc-footer-tile,
.mc-footer-top .mc-art-card{ background: transparent !important; border-color: rgba(255,255,255,0.12) !important; }
.mc-footer-top .mc-footer-tiles > *:last-child,
.mc-footer-top .mc-articoli-grid-footer > *:last-child{ border-bottom-color: rgba(255,255,255,0.12) !important; }
.mc-footer-top .mc-footer-tile:hover,
.mc-footer-top .mc-art-card:hover{ background: rgba(255,255,255,0.05) !important; }
/* quadrati icona/segnaposto tenui */
.mc-footer-top .mc-footer-tile-icon,
.mc-footer-top .mc-art-card::before{ background: rgba(255,255,255,0.10) !important; }
.mc-footer-top .mc-footer-tile-icon{ color:#FFFFFF !important; }
.mc-footer-top .mc-footer-tile-icon svg{ stroke:#FFFFFF !important; }
/* CTA "Tutti gli articoli" outline chiaro */
.mc-footer-top .mc-footer-articoli-cta a{ color:#F2EADB !important; border-color: rgba(255,255,255,0.28) !important; }
.mc-footer-top .mc-footer-articoli-cta a:hover{ background: rgba(255,255,255,0.08) !important; color:#FFFFFF !important; border-color: rgba(255,255,255,0.5) !important; }
@media (max-width:760px){
  .mc-footer-top .mc-footer-articoli{ border-left:0 !important; border-top:1px solid rgba(255,255,255,0.10) !important; }
}

/* ===== from <style id="no-id"> ===== */
/* Tre porte aperte + Letture utili -> circa meta altezza */
.mc-footer-top > section{min-height:0 !important;padding:clamp(16px,1.7vw,20px) !important;}
.mc-footer-top .mc-lead{display:none !important;}
.mc-footer-top .mc-eyebrow-purple{margin:0 0 5px !important;}
.mc-footer-top h2,.mc-footer-top h3{margin:0 0 6px !important;font-size:clamp(1.1rem,1.4vw,1.3rem) !important;}
.mc-footer-top .mc-footer-tile,.mc-footer-top .mc-art-card{padding:6px 0 !important;grid-template-columns:28px 1fr auto !important;column-gap:12px !important;}
.mc-footer-top .mc-footer-tile-icon,.mc-footer-top .mc-art-card::before{width:28px !important;height:28px !important;min-width:28px !important;border-radius:8px !important;}
.mc-footer-top .mc-footer-tile-icon svg{width:15px !important;height:15px !important;}
.mc-footer-top .mc-footer-tile h3{font-size:0.9rem !important;}
.mc-footer-top .mc-art-card h4{font-size:0.88rem !important;margin-top:2px !important;}
.mc-footer-top .mc-art-card .cat{font-size:0.58rem !important;}
.mc-footer-top .mc-footer-articoli-cta{padding-top:8px !important;}
@media(max-width:781px){.mc-footer-top .mc-footer-tile,.mc-footer-top .mc-art-card{grid-template-columns:28px 1fr auto !important;}}

/* ===== from <style id="no-id"> ===== */
/* pre-footer content-space = footer */
.mc-footer-top{ max-width:1200px !important; padding:0 clamp(16px,4vw,32px) !important; margin:0 auto !important; }
.mc-footer-top > section{ padding-left:0 !important; padding-right:0 !important; padding-top:clamp(8px,1.2vw,14px) !important; padding-bottom:clamp(8px,1.2vw,14px) !important; }
.mc-footer-info{ padding-top:clamp(10px,1.6vw,18px) !important; }
/* tile interi cliccabili (porte aperte + articoli) */
.mc-footer-top a.mc-footer-tile{ text-decoration:none !important; color:#1F1633 !important; cursor:pointer; }
.mc-footer-top a.mc-footer-tile h3{ color:#1F1633 !important; transition:color 180ms ease; }
.mc-footer-top a.mc-footer-tile:hover h3{ color:#4F2D7F !important; }
.mc-footer-top .mc-foot-go{ grid-column:3 !important; align-self:center !important; justify-self:end; font:600 0.82rem/1 'DM Sans',sans-serif !important; color:#4F2D7F !important; white-space:nowrap; }
.mc-footer-top .mc-foot-go::after{ content:" \2192"; display:inline-block; transition:transform .24s cubic-bezier(.16,1,.3,1); }
.mc-footer-top a.mc-footer-tile:hover .mc-foot-go::after{ transform:translateX(4px); }
/* box icona/miniatura 40px + immagine in evidenza cover */
.mc-footer-top .mc-footer-tile-icon{ width:40px !important; height:40px !important; min-width:40px !important; }
.mc-footer-top .mc-footer-tile-icon svg{ width:20px !important; height:20px !important; }
.mc-footer-top .mc-footer-tile-icon.mc-has-thumb{ background:none !important; padding:0 !important; overflow:hidden !important; }
.mc-footer-top .mc-footer-tile-icon img{ width:100% !important; height:100% !important; object-fit:cover !important; display:block; border-radius:inherit; }
.mc-footer-top .mc-footer-tile, .mc-footer-top a.mc-footer-tile{ grid-template-columns:40px 1fr auto !important; }

/* ===== from <style id="no-id"> ===== */
/* Porte aperte + Letture utili: pannelli trasparenti (footer gia viola), testo bianco, CTA arancio */
.mc-footer-top .mc-footer-cta-hero, .mc-footer-top .mc-footer-articoli{ background:transparent !important; border:0 !important; }
/* testo bianco */
.mc-footer-top .mc-eyebrow-purple{ color:#FFFFFF !important; opacity:.85; }
.mc-footer-top h2, .mc-footer-top h3, .mc-footer-top h4, .mc-footer-top a.mc-footer-tile h3{ color:#FFFFFF !important; }
.mc-footer-top p, .mc-footer-top .mc-lead, .mc-footer-top li{ color:#EDE7F6 !important; }
.mc-footer-top a.mc-footer-tile:hover h3{ color:#FFD79B !important; }
/* CTA arancio */
.mc-footer-top .mc-foot-go{ color:#E97E3A !important; }
.mc-footer-top .mc-footer-articoli-cta a{ color:#E97E3A !important; border-color:rgba(233,126,58,0.55) !important; }
.mc-footer-top .mc-footer-articoli-cta a:hover{ color:#FFD79B !important; border-color:#E97E3A !important; }
/* separatori + box icona su scuro */
.mc-footer-top .mc-footer-tile, .mc-footer-top a.mc-footer-tile{ border-top-color:rgba(255,255,255,0.14) !important; }
.mc-footer-top .mc-footer-tiles > *:last-child, .mc-footer-top .mc-articoli-grid-footer > *:last-child{ border-bottom-color:rgba(255,255,255,0.14) !important; }
.mc-footer-top .mc-footer-tile-icon:not(.mc-has-thumb){ background:rgba(255,255,255,0.14) !important; color:#FFD79B !important; }
.mc-footer-top a.mc-footer-tile:hover{ background:rgba(255,255,255,0.06) !important; }

/* === 404 brand === */
.mc-404{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:64px 24px;background:linear-gradient(160deg,#FFFBF4,#F1E7DA)}
.mc-404-in{max-width:760px;text-align:center}
.mc-404-eyebrow{font:700 .8rem/1 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#4F2D7F;margin:0 0 12px}
.mc-404-title{font:500 clamp(2rem,4.5vw,3.2rem)/1.1 'Recoleta',serif;color:#1F1633;margin:0 0 14px}
.mc-404-lead{font-size:1.1rem;color:#4A3F5C;margin:0 0 32px}
.mc-404-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}
.mc-404-card{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid rgba(31,22,51,.1);border-radius: 18px;padding:20px 16px;text-decoration:none!important;color:#1F1633!important;box-shadow:0 2px 14px rgba(31,22,51,.06);transition:transform .2s}
.mc-404-card:hover{transform:translateY(-4px)}
.mc-404-card span{font-size:1.8rem}
.mc-404-card strong{font-family:'Recoleta',serif;font-weight:500}
.mc-404-card small{color:#7E7290;font-size:.82rem}
.mc-404-search{display:flex;gap:8px;max-width:420px;margin:0 auto}
.mc-404-search input{flex:1;padding:12px 16px;border:1px solid rgba(31,22,51,.15);border-radius:999px;font:400 1rem 'DM Sans',sans-serif}
.mc-404-search button{background:#E97E3A;color:#fff;border:0;border-radius:999px;padding:12px 24px;font-weight:600;cursor:pointer}
@media(max-width:640px){.mc-404-cards{grid-template-columns:1fr}}

/* === Reveal-on-scroll (entrata coerente, solo opacity/transform) === */
.mc-reveal{opacity:0;transform:translateY(22px);will-change:opacity,transform}
.mc-reveal.mc-in{opacity:1;transform:none;transition:opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1)}
@media(prefers-reduced-motion:reduce){.mc-reveal{opacity:1!important;transform:none!important}}

/* === [hotfix portato dal DB live · 2026-06] Spaziatura uniforme tra le sezioni del footer === */
.mc-footer-top { margin-top: clamp(28px,4vw,48px) !important; margin-bottom: 0 !important; }
.mc-footer-top .mc-footer-band { padding-top: 0 !important; padding-bottom: 0 !important; }
.mc-footer-info { margin: 0 !important; padding-top: clamp(28px,4vw,48px) !important; padding-bottom: 0 !important; }
.mc-footer-legal-band { margin: 0 !important; padding-top: clamp(28px,4vw,48px) !important; padding-bottom: 18px !important; }
/* Nota: il credit "creato con ♥ da postella.it" è MARKUP -> spostato nella .mc-footer-legal-band
   del footer template-part (DB, per convenzione SESSION 02). postella.it + cuore in arancio inline.
   Da riflettere nel repo quando il footer template-part verrà esportato. */
