/* Temporary migration bridge. These rules are intended to be consolidated
   into Breakdance Global Settings after all pages have been validated. */

.cd-native-secondary__body {
  width: 100%;
}

.cd-native-secondary__body .bde-rich-text,
.cd-native-secondary__body .bde-text {
  min-width: 0;
}

/* Tipografia nativa: gli elementi Breakdance non ereditano sempre la stessa
   scala del precedente blocco HTML. Queste regole ripristinano la gerarchia
   editoriale approvata senza interferire con gallery, video e audio. */
html body .breakdance .cd-native-secondary__body .cd-secondary-2026-root {
  width: min(100%, var(--cd-secondary-wide, 1040px)) !important;
  max-width: var(--cd-secondary-wide, 1040px) !important;
  margin-inline: auto !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.92fr) minmax(0, 1.08fr) !important;
  column-gap: clamp(60px, 6.5vw, 96px) !important;
  align-items: start !important;
  width: 100% !important;
  padding-block: clamp(48px, 6vw, 78px) !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__heading,
html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__copy {
  min-width: 0 !important;
  width: 100% !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__title,
html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq__title {
  font-family: var(--cd-type-display, var(--cd-font-display, Manrope, sans-serif)) !important;
  font-size: clamp(24px, 1.75vw, 30px) !important;
  line-height: 1.14 !important;
  letter-spacing: -0.026em !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__title {
  max-width: 24ch !important;
  font-weight: 360 !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__title .cd-secondary-2026-title__light,
html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq__title .cd-secondary-2026-title__light {
  font: inherit !important;
  font-weight: 300 !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__title .cd-secondary-2026-title__strong,
html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq__title .cd-secondary-2026-title__strong {
  font: inherit !important;
  font-weight: 720 !important;
  letter-spacing: -0.032em !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__paragraph {
  max-width: 68ch !important;
  font-size: clamp(16px, 1.05vw, 18px) !important;
  line-height: 1.68 !important;
  color: var(--cd-text, var(--cd-secondary-ink-soft, #24343a)) !important;
  margin: 0 0 1.2em !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__paragraph:last-child {
  margin-bottom: 0 !important;
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr) !important;
  column-gap: clamp(48px, 7vw, 96px) !important;
  align-items: start !important;
  width: 100% !important;
  padding-block: clamp(62px, 8vw, 104px) !important;
}

/* FAQ native: il Rich Text è soltanto l'host editabile; details e summary
   restano nel markup e continuano a funzionare senza JavaScript dedicato. */
html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq__items > .cd-native-faq-item-host {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-top: 1px solid var(--cd-secondary-line, rgba(7, 24, 32, 0.16));
}

html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq__items > .cd-native-faq-item-host:first-child {
  border-top: 0;
}

html body .breakdance .cd-native-secondary__body .cd-native-faq-item-host .cd-secondary-2026-faq__item {
  width: 100%;
  margin: 0;
  border: 0;
}

html body .breakdance .cd-native-secondary__body .cd-native-faq-item-host .cd-secondary-2026-faq__question {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 24px !important;
  gap: 24px !important;
  align-items: center !important;
  width: 100% !important;
  padding: 22px 0 !important;
  cursor: pointer;
  list-style: none;
  font-size: clamp(17px, 1.25vw, 20px) !important;
  font-weight: 720 !important;
  line-height: 1.28 !important;
}

html body .breakdance .cd-native-secondary__body .cd-native-faq-item-host .cd-secondary-2026-faq__answer {
  max-width: 68ch !important;
  padding: 0 54px 24px 0 !important;
}

html body .breakdance .cd-native-secondary__body .cd-native-faq-item-host .cd-secondary-2026-faq__answer p {
  margin: 0 !important;
}

.cd-native-secondary__body .cd-native-embed__html {
  display: block;
  width: 100%;
}

.cd-native-secondary__body .cd-native-video {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
}

.cd-native-secondary__body .cd-native-embed__html iframe,
.cd-native-secondary__body .cd-native-embed__html video,
.cd-native-secondary__body .cd-native-video iframe,
.cd-native-secondary__body .cd-native-video video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  border-radius: clamp(12px, 1.4vw, 20px);
  background: #070a12;
}

.cd-native-secondary__body .cd-native-embed__html iframe[src*="soundcloud"] {
  min-height: 166px;
  aspect-ratio: auto;
  background: transparent;
}

.cd-native-secondary__body .cd-native-lightbox-gallery {
  display: block !important;
  width: 100%;
}

.cd-native-secondary__body .cd-native-media-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(14px, 2vw, 24px) !important;
  width: 100% !important;
  align-items: start;
}

.cd-native-secondary__body .cd-native-media-grid > * {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.cd-native-secondary__body .cd-native-media-grid img,
.cd-native-secondary__body .cd-native-media-grid .bde-image2 {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: auto !important;
}

/* Portfolio siti: il sorgente e' una galleria di link esterni. Manteniamo
   tre schede su desktop senza dipendere dalla griglia immagini generica. */
html body.breakdance .cd-native-secondary__body .cd-sites-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2vw, 26px) !important;
  width: 100% !important;
  align-items: start !important;
}

html body.breakdance .cd-native-secondary__body .cd-sites-gallery > * {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* La bozza completa e la pagina richiamata dalla Template Content Area hanno
   alberi equivalenti, ma Breakdance le rende in contesti CSS differenti. La
   classe body legata allo slug rende il contratto della gallery indipendente
   dal wrapper dell'anteprima: tutte le schermate hanno una card uniforme e
   gli screenshot verticali non possono estendere l'intera riga. */
html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2vw, 26px) !important;
  width: 100% !important;
  align-items: start !important;
}

html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery > * {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery .bde-image2,
html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery .bde-image2 img,
html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  object-position: top center !important;
  overflow: hidden !important;
}

.cd-native-secondary__body .cd-native-embed-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2.4vw, 30px) !important;
  width: 100% !important;
}

/* Blocchi Gutenberg legacy: immagine e lista affiancate. Il convertitore
   conserva le classi originali, ma i Div Breakdance partono con un proprio
   display flex e richiedono quindi una normalizzazione esplicita. */
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(28px, 4.5vw, 64px) !important;
  align-items: center !important;
  width: 100% !important;
  margin: clamp(28px, 4vw, 52px) 0 !important;
  padding: 0 !important;
}

html body.breakdance .cd-secondary-2026-media .cd-legacy-columns > .wp-block-column {
  display: block !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-image,
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-image .bde-image2,
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-image img {
  border-radius: clamp(12px, 1.4vw, 20px) !important;
}

html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-list,
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-list > ul,
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns > .wp-block-column:last-child ul {
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-list li,
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns > .wp-block-column:last-child li {
  position: relative !important;
  margin: 0 !important;
  padding: 0 0 0 20px !important;
  color: var(--cd-text, var(--cd-secondary-ink-soft, #24343a)) !important;
  font-family: var(--cd-type-body, Manrope, sans-serif) !important;
  font-size: clamp(15px, 1vw, 17px) !important;
  font-weight: 540 !important;
  line-height: 1.48 !important;
}

html body.breakdance .cd-secondary-2026-media .cd-legacy-columns .wp-block-list li::before,
html body.breakdance .cd-secondary-2026-media .cd-legacy-columns > .wp-block-column:last-child li::before {
  content: "" !important;
  position: absolute !important;
  top: .66em !important;
  left: 0 !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: var(--cd-accent, #14c9d4) !important;
}

html body.breakdance .cd-secondary-2026-media .cd-secondary-media-examples {
  display: block !important;
  width: 100% !important;
  margin: clamp(44px, 6vw, 82px) 0 0 !important;
  padding: 0 !important;
}

/* Breakdance Div usa flex come default. La gallery fotografica originale usa
   invece un masonry a colonne: il display va quindi neutralizzato. */
.cd-native-secondary__body .cdsm-photo__grid {
  display: block !important;
  width: 100%;
  column-count: 3 !important;
  column-gap: clamp(12px, 1.5vw, 22px) !important;
}

.cd-native-secondary__body .cdsm-photo__item {
  display: inline-block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: auto !important;
  margin: 0 0 clamp(12px, 1.5vw, 22px) !important;
  break-inside: avoid !important;
  vertical-align: top;
}

.cd-native-secondary__body .cdsm-photo__item > .bde-container-link,
.cd-native-secondary__body .cdsm-photo__item > a {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: auto !important;
}

.cd-native-secondary__body .cd-native-lightbox-gallery .bde-image2,
.cd-native-secondary__body .cd-native-lightbox-gallery img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: initial !important;
}

@media (max-width: 1024px) {
  html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section,
  html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }

  html body.breakdance .cd-native-secondary__body .cd-sites-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section,
  html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }

  html body .breakdance .cd-native-secondary__body .cd-secondary-2026-section__title,
  html body .breakdance .cd-native-secondary__body .cd-secondary-2026-faq__title {
    max-width: none !important;
    font-size: clamp(23px, 6.7vw, 28px) !important;
  }

  html body .breakdance .cd-native-secondary__body .cd-native-faq-item-host .cd-secondary-2026-faq__question {
    gap: 16px !important;
    padding: 19px 0 !important;
  }

  html body .breakdance .cd-native-secondary__body .cd-native-faq-item-host .cd-secondary-2026-faq__answer {
    padding: 0 34px 20px 0 !important;
  }

  .cd-native-secondary__body .cd-native-media-grid,
  .cd-native-secondary__body .cd-native-embed-grid {
    grid-template-columns: 1fr !important;
  }

  html body.breakdance .cd-native-secondary__body .cd-sites-gallery {
    grid-template-columns: 1fr !important;
  }

  html body.breakdance.cd-bdnm-source-realizzazione-di-siti-web .cd-sites-gallery {
    grid-template-columns: 1fr !important;
  }

  html body.breakdance .cd-secondary-2026-media .cd-legacy-columns {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }

  .cd-native-secondary__body .cdsm-photo__grid {
    column-count: 2 !important;
  }

  .cd-native-secondary__body .cd-native-embed__html iframe,
  .cd-native-secondary__body .cd-native-embed__html video,
  .cd-native-secondary__body .cd-native-video iframe,
  .cd-native-secondary__body .cd-native-video video {
    border-radius: 12px;
  }
}

/* =========================================================
   DIRETTE LIVE STREAMING — native media layout
   La pagina e' riconosciuta dalla presenza del blocco video dedicato, cosi'
   le regole non incidono sulle altre secondarie gia' approvate.
   ========================================================= */

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-section {
  grid-template-columns: minmax(250px, 0.68fr) minmax(0, 1.32fr) !important;
  column-gap: clamp(46px, 5vw, 72px) !important;
  padding-block: clamp(38px, 4.8vw, 62px) !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-media {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: clamp(24px, 3vw, 42px) 0 clamp(68px, 8vw, 108px) !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-videos {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: clamp(30px, 4vw, 52px) 0 clamp(48px, 6vw, 78px) !important;
  padding: 0 !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-showcase__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(24px, 3vw, 38px) !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video,
html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video__frame,
html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video__frame > .cd-native-embed__html {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video__frame iframe {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  border: 0 !important;
  border-radius: clamp(12px, 1.2vw, 18px) !important;
  background: #070a12 !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video > .bde-rich-text:last-child,
html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video > .bde-rich-text:last-child * {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--cd-secondary-ink, #071820) !important;
  font-family: var(--cd-type-body, Manrope, sans-serif) !important;
  font-size: clamp(13px, 0.95vw, 15px) !important;
  font-weight: 560 !important;
  line-height: 1.45 !important;
  letter-spacing: -0.008em !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-secondary-2026-street-video > .bde-rich-text:last-child {
  display: block !important;
  width: 100% !important;
  margin-top: 12px !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(26px, 3.2vw, 40px) clamp(16px, 2vw, 24px) !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-gallery__item {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 11px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-gallery__item > .bde-image2,
html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-gallery__item > .bde-image2 img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  border-radius: clamp(10px, 1vw, 15px) !important;
}

html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-gallery__item > .bde-rich-text:last-child,
html body .breakdance
.cd-native-secondary__body
.cd-secondary-2026-root:has(.cd-live-streaming-videos)
.cd-live-streaming-gallery__item > .bde-rich-text:last-child * {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--cd-muted, #555e6c) !important;
  font-family: var(--cd-type-body, Manrope, sans-serif) !important;
  font-size: clamp(12px, 0.88vw, 14px) !important;
  font-weight: 480 !important;
  line-height: 1.45 !important;
}

@media (max-width: 1024px) {
  html body .breakdance
  .cd-native-secondary__body
  .cd-secondary-2026-root:has(.cd-live-streaming-videos)
  .cd-secondary-2026-section {
    grid-template-columns: 1fr !important;
    row-gap: 22px !important;
  }

  html body .breakdance
  .cd-native-secondary__body
  .cd-secondary-2026-root:has(.cd-live-streaming-videos)
  .cd-live-streaming-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  html body .breakdance
  .cd-native-secondary__body
  .cd-secondary-2026-root:has(.cd-live-streaming-videos)
  .cd-secondary-2026-street-showcase__grid,
  html body .breakdance
  .cd-native-secondary__body
  .cd-secondary-2026-root:has(.cd-live-streaming-videos)
  .cd-live-streaming-gallery {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 479px) {
  .cd-native-secondary__body .cdsm-photo__grid {
    column-count: 1 !important;
  }
}

/* =========================================================
   HARDENING BREAKDANCE NATIVE
   Il foglio è caricato soltanto sulle pagine marcate dal migratore: questi
   selettori non dipendono dal wrapper del template e funzionano anche quando
   Breakdance cambia il contenitore DOM esterno.
   ========================================================= */
.cd-secondary-2026-root {
  width: min(100%, var(--cd-secondary-wide, 1040px)) !important;
  max-width: var(--cd-secondary-wide, 1040px) !important;
  margin-inline: auto !important;
}

.cd-secondary-2026-section {
  display: grid !important;
  grid-template-columns: minmax(360px, 0.92fr) minmax(0, 1.08fr) !important;
  column-gap: clamp(60px, 6.5vw, 96px) !important;
  align-items: start !important;
  width: 100% !important;
  padding-block: clamp(48px, 6vw, 78px) !important;
}

.cd-secondary-2026-section__heading,
.cd-secondary-2026-section__copy {
  width: 100% !important;
  min-width: 0 !important;
}

.cd-secondary-2026-section__title,
.cd-secondary-2026-faq__title {
  font-family: var(--cd-type-display, var(--cd-font-display, Manrope, sans-serif)) !important;
  font-size: clamp(24px, 1.75vw, 30px) !important;
  line-height: 1.14 !important;
  letter-spacing: -0.026em !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

.cd-secondary-2026-section__title {
  max-width: 24ch !important;
  font-weight: 360 !important;
}

.cd-secondary-2026-title__light {
  font: inherit !important;
  font-weight: 300 !important;
}

.cd-secondary-2026-title__strong {
  font: inherit !important;
  font-weight: 720 !important;
  letter-spacing: -0.032em !important;
}

.cd-secondary-2026-section__paragraph {
  width: 100% !important;
  max-width: 68ch !important;
  margin: 0 0 1.2em !important;
  color: var(--cd-text, var(--cd-secondary-ink-soft, #24343a)) !important;
  font-size: clamp(16px, 1.05vw, 18px) !important;
  line-height: 1.68 !important;
}

.cd-secondary-2026-section__paragraph:last-child {
  margin-bottom: 0 !important;
}

.cd-secondary-2026-faq {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr) !important;
  column-gap: clamp(48px, 7vw, 96px) !important;
  align-items: start !important;
  width: 100% !important;
  padding-block: clamp(62px, 8vw, 104px) !important;
}

.cd-secondary-2026-faq__items {
  width: 100% !important;
  min-width: 0 !important;
  border-bottom: 1px solid var(--cd-secondary-line, rgba(7, 24, 32, 0.16));
}

.cd-secondary-2026-faq__item,
.cd-native-faq-item-host {
  width: 100% !important;
  margin: 0 !important;
  border-top: 1px solid var(--cd-secondary-line, rgba(7, 24, 32, 0.16));
}

.cd-secondary-2026-faq__items > :first-child {
  border-top: 0 !important;
}

.cd-secondary-2026-faq__question {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 24px !important;
  gap: 24px !important;
  align-items: center !important;
  width: 100% !important;
  padding: 22px 0 !important;
  cursor: pointer !important;
  list-style: none !important;
  color: var(--cd-ink, var(--cd-secondary-ink, #071820)) !important;
  font-size: clamp(17px, 1.25vw, 20px) !important;
  font-weight: 720 !important;
  line-height: 1.28 !important;
}

.cd-secondary-2026-faq__answer {
  max-width: 68ch !important;
  padding: 0 54px 24px 0 !important;
}

.cd-secondary-2026-faq__item:not([open]):not(.is-open) > .cd-secondary-2026-faq__answer,
.cd-native-faq-item-host:not(.is-open) > .cd-secondary-2026-faq__answer {
  display: none !important;
}

.cd-secondary-2026-faq__item.is-open > .cd-secondary-2026-faq__answer,
.cd-native-faq-item-host.is-open > .cd-secondary-2026-faq__answer {
  display: block !important;
}

.cd-secondary-2026-faq__item.is-open .cd-secondary-2026-faq__icon::after,
.cd-native-faq-item-host.is-open .cd-secondary-2026-faq__icon::after {
  opacity: 0 !important;
  transform: translate(-50%, -50%) rotate(0deg) !important;
}

/* Approfondimenti: Breakdance racchiude la UL in un Rich Text. Il wrapper
   resta nella seconda colonna, mentre la lista interna torna a essere una
   serie ordinata di link editoriali senza bullet. */
.cd-secondary-2026-related {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr) !important;
  column-gap: clamp(48px, 7vw, 96px) !important;
  align-items: start !important;
  width: 100% !important;
  margin-top: clamp(24px, 4vw, 48px) !important;
  padding: clamp(34px, 4vw, 52px) 0 clamp(54px, 7vw, 88px) !important;
  border-top: 1px solid var(--cd-secondary-line, rgba(7, 24, 32, 0.16)) !important;
}

.cd-secondary-2026-related__label {
  width: 100% !important;
  margin: 0 !important;
  color: var(--cd-muted, var(--cd-secondary-ink-soft, #24343a)) !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.cd-secondary-2026-related > .cd-secondary-2026-related__list {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cd-secondary-2026-related > .cd-secondary-2026-related__list > ul.cd-secondary-2026-related__list,
.cd-secondary-2026-related > ul.cd-secondary-2026-related__list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.cd-secondary-2026-related .cd-secondary-2026-related__list li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.cd-secondary-2026-related .cd-secondary-2026-related__list li::marker {
  content: "" !important;
}

.cd-secondary-2026-related .cd-secondary-2026-related__list a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 9px 14px !important;
  border: 1px solid var(--cd-secondary-line, rgba(7, 24, 32, 0.18)) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: var(--cd-ink, var(--cd-secondary-ink, #071820)) !important;
  font-size: 0.92rem !important;
  font-weight: 650 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease !important;
}

.cd-secondary-2026-related .cd-secondary-2026-related__list a:hover,
.cd-secondary-2026-related .cd-secondary-2026-related__list a:focus-visible {
  border-color: var(--cd-ink, #071820) !important;
  background: var(--cd-ink, #071820) !important;
  color: #fff !important;
  transform: translateY(-1px);
}

.cd-secondary-2026-related .cd-secondary-2026-related__list a:focus-visible {
  outline: 2px solid currentColor !important;
  outline-offset: 3px !important;
}

@media (max-width: 1024px) {
  .cd-secondary-2026-section,
  .cd-secondary-2026-faq,
  .cd-secondary-2026-related {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }

  .cd-secondary-2026-related {
    row-gap: 20px !important;
  }
}

@media (max-width: 767px) {
  .cd-secondary-2026-section__title,
  .cd-secondary-2026-faq__title {
    max-width: none !important;
    font-size: clamp(23px, 6.7vw, 28px) !important;
  }

  .cd-secondary-2026-faq__question {
    gap: 16px !important;
    padding: 19px 0 !important;
  }

  .cd-secondary-2026-faq__answer {
    padding: 0 34px 20px 0 !important;
  }

  .cd-secondary-2026-related > .cd-secondary-2026-related__list > ul.cd-secondary-2026-related__list,
  .cd-secondary-2026-related > ul.cd-secondary-2026-related__list {
    gap: 8px !important;
  }
}
/* Documento nativo inserito nella Template Content Area. Breakdance richiede
 * una Section come nodo di primo livello; il layout reale resta affidato alla
 * radice editoriale convertita al suo interno. */
.cd-native-page-section {
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cd-native-page-section > .section-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* v0.3.3 — routing certo tramite body_class WordPress. */
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-section {
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr) !important;
  column-gap: clamp(46px, 5vw, 72px) !important;
  padding-block: clamp(38px, 4.8vw, 62px) !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-media,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-videos,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-showcase__grid,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video__frame,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video__frame > .cd-native-embed__html {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-media,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-videos {
  display: block !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-videos {
  margin-block: clamp(30px, 4vw, 52px) clamp(48px, 6vw, 78px) !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-showcase__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(24px, 3vw, 38px) !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video__frame iframe {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  border: 0 !important;
  border-radius: clamp(12px, 1.2vw, 18px) !important;
  background: #070a12 !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video > figcaption,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video > .bde-rich-text:last-child,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-video > .bde-rich-text:last-child * {
  display: block !important;
  width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  color: var(--cd-secondary-ink, #071820) !important;
  font-size: clamp(13px, .95vw, 15px) !important;
  font-weight: 560 !important;
  line-height: 1.45 !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(26px, 3.2vw, 40px) clamp(16px, 2vw, 24px) !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 11px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item > img,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item > .bde-image2,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item > .bde-image2 img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  border-radius: clamp(10px, 1vw, 15px) !important;
}

body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item > figcaption,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item > .bde-rich-text:last-child,
body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery__item > .bde-rich-text:last-child * {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--cd-muted, #555e6c) !important;
  font-size: clamp(12px, .88vw, 14px) !important;
  font-weight: 480 !important;
  line-height: 1.45 !important;
}

@media (max-width: 1024px) {
  body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-section {
    grid-template-columns: 1fr !important;
    row-gap: 22px !important;
  }

  body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  body.cd-bdnm-source-dirette-live-streaming-professionali .cd-secondary-2026-street-showcase__grid,
  body.cd-bdnm-source-dirette-live-streaming-professionali .cd-live-streaming-gallery {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   v0.3.16 — VIDEO COLLECTIONS UNIVERSALI
   Stile unico per tutte le pagine secondarie che il migratore
   riconosce come raccolte video: due colonne ampie su desktop,
   player 16:9 full-width e caption coerenti. Non dipende più
   dallo slug della singola pagina.
   ========================================================= */

/* La raccolta video deve poter usare tutta la larghezza disponibile
   nella colonna contenuti, senza ereditare max-width stretti dai blocchi
   Gutenberg originari. */
html body.breakdance .cd-secondary-2026-media:has(.cd-secondary-media-examples),
html body.breakdance .cd-secondary-media-examples {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

/* Wrapper interno creato dal convertitore per gli elementi media. */
html body.breakdance .cd-secondary-media-examples > .bde-div:last-child,
html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(32px, 3.5vw, 52px) clamp(34px, 4vw, 64px) !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: start !important;
}

/* Ogni item deve occupare l'intera cella della griglia. */
html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > *,
html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

/* Neutralizza i limiti di larghezza dei wrapper media generati dal parser. */
html body.breakdance .cd-secondary-media-examples .cd-native-video,
html body.breakdance .cd-secondary-media-examples .cd-native-video-fallback,
html body.breakdance .cd-secondary-media-examples .cd-native-embed__html,
html body.breakdance .cd-secondary-media-examples .wp-block-embed__wrapper,
html body.breakdance .cd-secondary-media-examples .bde-rich-text:has(> iframe),
html body.breakdance .cd-secondary-media-examples .bde-rich-text:has(> video) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Player: full-width, 16:9, responsive. Gli angoli arrotondati vengono
   mantenuti come scelta coerente per le pagine migrate. */
html body.breakdance .cd-secondary-media-examples iframe,
html body.breakdance .cd-secondary-media-examples video {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: clamp(12px, 1.2vw, 18px) !important;
  background: #070a12 !important;
  overflow: hidden !important;
}

/* Caption: gerarchia visiva uniforme per figcaption, paragraph o Rich Text
   generato dalla migrazione. */
html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > * > figcaption,
html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) *,
html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * > figcaption,
html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) * {
  display: block !important;
  width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  color: var(--cd-secondary-ink, #071820) !important;
  font-family: var(--cd-type-body, Manrope, sans-serif) !important;
  font-size: clamp(15px, 1.05vw, 18px) !important;
  font-weight: 620 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.018em !important;
}

/* Evita margini tipografici interni che alterano la distanza dalla preview. */
html body.breakdance .cd-secondary-media-examples .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) p {
  margin: 0 !important;
}

@media (max-width: 767px) {
  html body.breakdance .cd-secondary-media-examples > .bde-div:last-child,
  html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > * > figcaption,
  html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
  html body.breakdance .cd-secondary-media-examples > .bde-div:last-child > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) *,
  html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * > figcaption,
  html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
  html body.breakdance .cd-secondary-media-examples .cd-native-embed-grid > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) * {
    font-size: 15px !important;
    margin-top: 10px !important;
  }
}


/* =========================================================
   v0.3.17 — VIDEO GALLERY CONTRACT UNIVERSALE
   Il migratore marca ora semanticamente le raccolte e le card video.
   Queste regole coprono Vimeo, YouTube e video self-hosted su TUTTE le
   pagine secondarie, incluse le vecchie griglie Street/Spot/Motion.
   ========================================================= */

/* Gallery: breakout controllato rispetto alla colonna editoriale da 1040px.
   Il testo resta nella gabbia standard, mentre gli elenchi video hanno la
   larghezza necessaria per due preview realmente leggibili. */
html body.breakdance .cd-native-video-gallery,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video),
html body.breakdance .cd-native-embed-grid:has(.cd-native-video-fallback),
html body.breakdance .cd-secondary-2026-street-video-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(34px, 4vw, 58px) clamp(36px, 4.4vw, 68px) !important;
  width: min(1320px, calc(100vw - 64px)) !important;
  max-width: none !important;
  min-width: 0 !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: start !important;
}

/* Card universale + fallback per le figure/div storiche. */
html body.breakdance .cd-native-video-gallery > *,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video) > *,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video-fallback) > *,
html body.breakdance .cd-secondary-2026-street-video-grid > *,
html body.breakdance .cd-native-video-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
}

/* Tutti i wrapper che possono ospitare il player devono riempire la card. */
html body.breakdance .cd-native-video-card .cd-native-video,
html body.breakdance .cd-native-video-card .cd-native-video-fallback,
html body.breakdance .cd-native-video-card .cd-native-embed__html,
html body.breakdance .cd-native-video-gallery .cd-native-video,
html body.breakdance .cd-native-video-gallery .cd-native-video-fallback,
html body.breakdance .cd-native-video-gallery .cd-native-embed__html,
html body.breakdance .cd-native-video-gallery .wp-block-embed__wrapper,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video) .cd-native-video,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video-fallback) .cd-native-video-fallback {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Player 16:9 full-width. Manteniamo gli angoli arrotondati come richiesto. */
html body.breakdance .cd-native-video-gallery iframe,
html body.breakdance .cd-native-video-gallery video,
html body.breakdance .cd-native-video-card iframe,
html body.breakdance .cd-native-video-card video,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video) iframe,
html body.breakdance .cd-native-embed-grid:has(.cd-native-video-fallback) iframe,
html body.breakdance .cd-secondary-2026-street-video-grid iframe,
html body.breakdance .cd-secondary-2026-street-video-grid video {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: clamp(12px, 1.1vw, 18px) !important;
  background: #070a12 !important;
  overflow: hidden !important;
}

/* Caption universale: stessa gerarchia visiva su tutte le raccolte. */
html body.breakdance .cd-native-video-caption,
html body.breakdance .cd-native-video-caption *,
html body.breakdance .cd-native-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
html body.breakdance .cd-native-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) *,
html body.breakdance .cd-native-video-gallery > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
html body.breakdance .cd-native-video-gallery > * > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) * {
  display: block !important;
  width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  color: var(--cd-secondary-ink, #071820) !important;
  font-family: var(--cd-type-body, "Manrope", sans-serif) !important;
  font-size: clamp(16px, 1.18vw, 19px) !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.018em !important;
}

html body.breakdance .cd-native-video-caption p,
html body.breakdance .cd-native-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) p {
  margin: 0 !important;
}

@media (max-width: 767px) {
  html body.breakdance .cd-native-video-gallery,
  html body.breakdance .cd-native-embed-grid:has(.cd-native-video),
  html body.breakdance .cd-native-embed-grid:has(.cd-native-video-fallback),
  html body.breakdance .cd-secondary-2026-street-video-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
    width: 100% !important;
    max-width: none !important;
    left: auto !important;
    transform: none !important;
  }

  html body.breakdance .cd-native-video-caption,
  html body.breakdance .cd-native-video-caption *,
  html body.breakdance .cd-native-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
  html body.breakdance .cd-native-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) * {
    font-size: 15px !important;
    margin-top: 10px !important;
  }
}


/* 0.3.18 — Gallerie fotografiche native
   Le raccolte Gutenberg con molte immagini arrivano spesso dentro la colonna
   editoriale stretta. Qui le trattiamo come vere gallery: breakout controllato
   e masonry a colonne, senza crop e senza dipendere dallo slug della pagina. */
html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid {
  display: block !important;
  width: min(1320px, calc(100vw - 64px)) !important;
  max-width: none !important;
  margin-top: clamp(34px, 5vw, 64px) !important;
  margin-right: 0 !important;
  margin-bottom: clamp(34px, 5vw, 64px) !important;
  margin-left: 50% !important;
  padding: 0 !important;
  transform: translateX(-50%) !important;
  column-count: 3 !important;
  column-gap: clamp(14px, 1.6vw, 22px) !important;
  column-fill: balance !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid > * {
  display: inline-block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 0 clamp(14px, 1.6vw, 22px) !important;
  padding: 0 !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
  vertical-align: top !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid > * > a,
html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid > * > .bde-container-link,
html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid .bde-image2 {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  border-radius: clamp(8px, .9vw, 14px) !important;
}

@media (max-width: 1024px) {
  html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid {
    width: min(100%, calc(100vw - 40px)) !important;
    column-count: 2 !important;
    column-gap: 16px !important;
  }
}

@media (max-width: 640px) {
  html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid {
    width: min(100%, calc(100vw - 28px)) !important;
    margin-left: 50% !important;
    column-count: 1 !important;
    column-gap: 0 !important;
  }

  html body.breakdance .cd-native-secondary__body .cd-native-lightbox-gallery.cd-native-media-grid > * {
    margin-bottom: 14px !important;
  }
}


/* 0.3.27 — figure editoriali standalone nelle pagine secondarie.
   Le immagini che interrompono il flusso dei paragrafi devono usare tutta la
   gabbia del testo (non una singola colonna) e una caption coerente col sito. */
html body.breakdance .cd-native-secondary__body .cd-native-inline-figure {
  grid-column: 1 / -1 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: clamp(24px, 3.5vw, 42px) 0 clamp(36px, 5vw, 60px) !important;
  padding: 0 !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-inline-figure > a,
html body.breakdance .cd-native-secondary__body .cd-native-inline-figure > .bde-container-link,
html body.breakdance .cd-native-secondary__body .cd-native-inline-figure .bde-image2,
html body.breakdance .cd-native-secondary__body .cd-native-inline-figure img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-image-caption,
html body.breakdance .cd-native-secondary__body .cd-native-image-caption * {
  font-family: var(--cd-type-body, var(--cd-font-body, Manrope, sans-serif)) !important;
  font-size: clamp(12px, 0.9vw, 14px) !important;
  line-height: 1.45 !important;
  font-weight: 430 !important;
  letter-spacing: -0.01em !important;
  color: var(--cd-text-muted, rgba(7,24,32,.62)) !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-inline-figure > .cd-native-image-caption,
html body.breakdance .cd-native-secondary__body .cd-native-inline-figure > figcaption {
  display: block !important;
  width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
}

html body.breakdance .cd-native-secondary__body .cd-native-image-caption p {
  margin: 0 !important;
}

@media (max-width: 767px) {
  html body.breakdance .cd-native-secondary__body .cd-native-inline-figure {
    margin-top: 20px !important;
    margin-bottom: 38px !important;
  }
}

/* =========================================================
   0.3.28 — Video gallery hardening
   Alcune secondarie (es. Unconventional Experience / Team Building)
   usano .cdsm-video-grid ma non ereditano sempre il body selector previsto.
   Queste regole agiscono direttamente sulle classi native generate dal migratore.
   ========================================================= */
.cdsm-video-grid.cd-native-video-gallery,
.cdsm-video-grid.cd-native-embed-grid,
.cdsm-video-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  column-gap: clamp(30px, 3.2vw, 52px) !important;
  row-gap: clamp(34px, 3.6vw, 56px) !important;
  width: min(1320px, calc(100vw - 72px)) !important;
  max-width: none !important;
  min-width: 0 !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin: clamp(34px, 5vw, 64px) 0 0 !important;
  padding: 0 !important;
  align-items: start !important;
}

.cdsm-video-grid > .cdsm-video-card,
.cdsm-video-grid > .cd-native-video-card,
.cdsm-video-card.cd-native-video-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.cdsm-video-card > .bde-div:first-child,
.cdsm-video-card .cd-native-video,
.cdsm-video-card .cd-native-video-fallback,
.cdsm-video-card .cd-native-embed__html,
.cdsm-video-card .bde-rich-text:has(iframe),
.cdsm-video-card .bde-rich-text:has(video),
.cdsm-video-card .bde-rich-text:has(iframe) > *,
.cdsm-video-card .bde-rich-text:has(video) > * {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cdsm-video-card iframe,
.cdsm-video-card video {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  min-height: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: clamp(12px, 1vw, 18px) !important;
  background: #070a12 !important;
}

.cdsm-video-card .cd-native-video-caption,
.cdsm-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)),
.cdsm-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) * {
  width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  color: var(--cd-secondary-ink, #071820) !important;
  font-family: var(--cd-type-body, "Manrope", sans-serif) !important;
  font-size: clamp(16px, 1.15vw, 19px) !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.018em !important;
  text-align: left !important;
}

.cdsm-video-card .cd-native-video-caption p,
.cdsm-video-card > .bde-rich-text:last-child:not(:has(iframe)):not(:has(video)) p {
  margin: 0 !important;
}

@media (max-width: 767px) {
  .cdsm-video-grid.cd-native-video-gallery,
  .cdsm-video-grid.cd-native-embed-grid,
  .cdsm-video-grid {
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: none !important;
    left: auto !important;
    transform: none !important;
    gap: 30px !important;
    margin-top: 30px !important;
  }
}

/* =========================================================
   0.3.29 — CD Video Card Frame Fix
   Corregge i player delle griglie .cdsm-video-grid:
   il rapporto 16:9 vive sul frame esterno e l'iframe riempie il frame
   in posizione assoluta. Evita viewport Vimeo/YouTube schiacciate,
   bande nere artificiali e controlli tagliati.
   ========================================================= */
.cdsm-video-grid {
  width: min(1320px, calc(100vw - 96px)) !important;
  max-width: 1320px !important;
  margin-left: 50% !important;
  margin-right: 0 !important;
  left: auto !important;
  transform: translateX(-50%) !important;
}

.cdsm-video-card > .bde-div:first-child {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: clamp(12px, 1vw, 18px) !important;
  background: #070a12 !important;
}

.cdsm-video-card > .bde-div:first-child > .bde-rich-text,
.cdsm-video-card > .bde-div:first-child .cd-native-video,
.cdsm-video-card > .bde-div:first-child .cd-native-video-fallback,
.cdsm-video-card > .bde-div:first-child .cd-native-embed__html,
.cdsm-video-card > .bde-div:first-child .bde-rich-text > p {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
}

.cdsm-video-card > .bde-div:first-child iframe,
.cdsm-video-card > .bde-div:first-child video {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #070a12 !important;
  object-fit: contain !important;
}

@media (max-width: 767px) {
  .cdsm-video-grid {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    transform: none !important;
  }
}
