#seon.seon-unified {
  margin-top: 30px;
  color: #22313f;
}

#seon.seon-unified .titseo {
  background: #3e76a7;
  color: #fff;
  text-align: center;
  padding: 10px 14px;
  font-size: 1.2rem !important;
  font-weight: 600;
  line-height: 1.3;
  width: calc(100% - 1.5rem);
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 0;
  box-sizing: border-box;
}

/* En tarima-flotante, las franjas deben ir a ancho completo sin laterales */
#seon.seon-unified[data-seon-slug="tarima-flotante"] .titseo,
#seon.seon-unified[data-seon-slug="tarima-flotante"] .seon-title {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Si la franja está dentro de un container, alinear exactamente con el contenido */
#seon.seon-unified .container .titseo,
#seon.seon-unified .row .titseo {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#seon.seon-unified .titseo h2,
#seon.seon-unified .titseo h3,
#seon.seon-unified .titseo h4 {
  font-size: inherit !important;
  font-weight: 700 !important;
  line-height: inherit !important;
  margin: 0 !important;
  letter-spacing: 0.15px;
  color: inherit !important;
}

/* Normaliza estilos inline heredados dentro de SEON */
#seon.seon-unified .titseo[style] {
  width: calc(100% - 1.5rem) !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  clear: none !important;
}

#seon.seon-unified .container[style],
#seon.seon-unified .row[style] {
  margin-left: auto !important;
  margin-right: auto !important;
}

#seon.seon-unified h2[style],
#seon.seon-unified h3[style],
#seon.seon-unified p[style] {
  margin-left: 0 !important;
  margin-right: 0 !important;
  clear: none !important;
}

#seon.seon-unified img[style*="float"] {
  float: none !important;
  display: block !important;
  margin: 0 auto 1rem auto !important;
  max-width: 100% !important;
  height: auto !important;
}

/* Excepción: en moquetas-ferial mantener imagen a la izquierda con texto a la derecha */
#seon.seon-unified[data-seon-slug="moquetas-ferial"] img[style*="float:left"] {
  float: left !important;
  display: block !important;
  margin: 5px 14px 10px 0 !important;
  max-width: min(360px, 42%) !important;
  height: auto !important;
}

/* Contener correctamente los floats para evitar cortes/solapes entre párrafos */
#seon.seon-unified[data-seon-slug="moquetas-ferial"] p {
  display: flow-root;
}

#seon.seon-unified[data-seon-slug="moquetas-ferial"] h3 {
  clear: both;
}

/* Mismo ajuste estructural para moquetas-losetas */
#seon.seon-unified[data-seon-slug="moquetas-losetas"] img[style*="float:left"] {
  float: left !important;
  display: block !important;
  margin: 5px 14px 10px 0 !important;
  max-width: min(360px, 42%) !important;
  height: auto !important;
}

#seon.seon-unified[data-seon-slug="moquetas-losetas"] p {
  display: flow-root;
}

#seon.seon-unified[data-seon-slug="moquetas-losetas"] h3 {
  clear: both;
}

@media (max-width: 768px) {
  #seon.seon-unified[data-seon-slug="moquetas-ferial"] img[style*="float:left"] {
    float: none !important;
    display: block !important;
    margin: 0 auto 0.9rem auto !important;
    max-width: 100% !important;
  }

  #seon.seon-unified[data-seon-slug="moquetas-losetas"] img[style*="float:left"] {
    float: none !important;
    display: block !important;
    margin: 0 auto 0.9rem auto !important;
    max-width: 100% !important;
  }
}

#seon.seon-unified .seon-section {
  margin-bottom: 1.5rem;
}

#seon.seon-unified .seon-title {
  margin-bottom: 0.9rem;
}

#seon.seon-unified .titseo.m-3 {
  margin: 0 0 0.75rem 0 !important;
}

#seon.seon-unified .seon-content > :last-child {
  margin-bottom: 0;
}

#seon.seon-unified .seon-content {
  text-align: justify;
}

/* Estructura editorial unificada para cualquier bloque de contenido en SEON */
#seon.seon-unified .container,
#seon.seon-unified .container-fluid,
#seon.seon-unified .row {
  box-sizing: border-box;
}

#seon.seon-unified .container:not(.accordion):not(.seon-faq),
#seon.seon-unified .row:not(.accordion):not(.seon-faq) {
  margin-bottom: 1.35rem;
}

#seon.seon-unified p {
  margin-top: 0;
  margin-bottom: 0.95rem;
  font-size: 1rem;
  line-height: 1.72;
  color: #2a3845;
  max-width: none;
  width: 100%;
}

/* Evita desalineaciones por utilidades Bootstrap con margen horizontal */
#seon.seon-unified p.m-3,
#seon.seon-unified h3.m-3,
#seon.seon-unified ul.m-3,
#seon.seon-unified ol.m-3 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#seon.seon-unified ul,
#seon.seon-unified ol {
  margin-top: 0.45rem;
  margin-bottom: 1.1rem;
  padding-left: 1.5rem;
  max-width: none;
  width: 100%;
}

#seon.seon-unified li + li {
  margin-top: 0.35rem;
}

#seon.seon-unified h2 {
  font-size: 1.35rem;
  margin: 0 0 0.35rem 0;
  letter-spacing: 0.1px;
}

#seon.seon-unified h3 {
  font-size: 1.22rem;
  font-weight: 700;
  margin-top: 1.15rem;
  margin-bottom: 0.6rem;
  color: #17324b;
  letter-spacing: 0.05px;
  line-height: 1.35;
}

#seon.seon-unified h4 {
  font-size: 1.12rem;
  font-weight: 700;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  color: #17324b;
  letter-spacing: 0.05px;
  line-height: 1.35;
}

#seon.seon-unified p,
#seon.seon-unified li {
  line-height: 1.6;
  text-align: justify;
}

#seon.seon-unified .accordion {
  margin-top: 0.6rem;
}

#seon.seon-unified .seon-faq .accordion-button {
  background: #e0eaf5;
  padding: 0.85rem 1rem;
  font-weight: 600;
  color: #143650;
}

#seon.seon-unified .seon-faq .accordion-header h3 {
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.35;
  margin: 0 !important;
  color: inherit !important;
}

#seon.seon-unified .seon-faq .accordion-button:not(.collapsed) {
  color: #0b3a5b;
  background: #d8e6f6;
}

#seon.seon-unified .seon-faq .accordion-button:focus {
  box-shadow: none;
}

#seon.seon-unified .seon-faq .accordion-body p:last-child {
  margin-bottom: 0;
}

#seon.seon-unified .seon-faq .accordion-body {
  padding: 0.85rem 1rem 0.95rem;
  color: #2a3845;
}

/* Normalización específica de acordeones editoriales en PVC Sintasol */
#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-item {
  border: 1px solid #d5e2ef;
  margin-bottom: 0.45rem;
  overflow: hidden;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-header {
  margin: 0;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-button {
  background: #e0eaf5;
  color: #143650;
  padding: 0.85rem 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  min-height: 54px;
  display: flex;
  align-items: center;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-button h3 {
  margin: 0 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: inherit !important;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-button:not(.collapsed) {
  background: #d8e6f6;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-button:focus {
  box-shadow: none;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-body {
  padding: 0.85rem 1rem 0.95rem;
  color: #2a3845;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-PVC-sintasol"] .accordion-body p:last-child {
  margin-bottom: 0;
}

/* Mismo ajuste para acordeones editoriales en vinílicos autoadhesivos */
#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-item {
  border: 1px solid #d5e2ef;
  margin-bottom: 0.45rem;
  overflow: hidden;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-header {
  margin: 0;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-button {
  background: #e0eaf5;
  color: #143650;
  padding: 0.85rem 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  min-height: 54px;
  display: flex;
  align-items: center;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-button h3 {
  margin: 0 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: inherit !important;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-button:not(.collapsed) {
  background: #d8e6f6;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-button:focus {
  box-shadow: none;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-body {
  padding: 0.85rem 1rem 0.95rem;
  color: #2a3845;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoadhesivos"] .accordion-body p:last-child {
  margin-bottom: 0;
}

/* Mismo ajuste para acordeones editoriales en vinílicos autoportantes */
#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-item {
  border: 1px solid #d5e2ef;
  margin-bottom: 0.45rem;
  overflow: hidden;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-header {
  margin: 0;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-button {
  background: #e0eaf5;
  color: #143650;
  padding: 0.85rem 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  min-height: 54px;
  display: flex;
  align-items: center;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-button h3 {
  margin: 0 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: inherit !important;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-button:not(.collapsed) {
  background: #d8e6f6;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-button:focus {
  box-shadow: none;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-body {
  padding: 0.85rem 1rem 0.95rem;
  color: #2a3845;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-autoportantes"] .accordion-body p:last-child {
  margin-bottom: 0;
}

/* Mismo ajuste para acordeones editoriales en vinílicos tarima SPC */
#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-item {
  border: 1px solid #d5e2ef;
  margin-bottom: 0.45rem;
  overflow: hidden;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-header {
  margin: 0;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-button {
  background: #e0eaf5;
  color: #143650;
  padding: 0.85rem 1rem;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  min-height: 54px;
  display: flex;
  align-items: center;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-button h3 {
  margin: 0 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: inherit !important;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-button:not(.collapsed) {
  background: #d8e6f6;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-button:focus {
  box-shadow: none;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-body {
  padding: 0.85rem 1rem 0.95rem;
  color: #2a3845;
}

#seon.seon-unified[data-seon-slug="suelos-vinilicos-tarima-SPC"] .accordion-body p:last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  #seon.seon-unified .titseo {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    font-size: 1.03rem !important;
    padding: 9px 10px;
  }

  #seon.seon-unified .seon-title {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  /* Forzar full-bleed móvil incluso cuando la franja está dentro de container/row */
  #seon.seon-unified .container .titseo,
  #seon.seon-unified .row .titseo,
  #seon.seon-unified .container .seon-title,
  #seon.seon-unified .row .seon-title {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  /* Si hay estilos inline (p.ej. style="clear:both"), mantener full-width en móvil */
  #seon.seon-unified .titseo[style],
  #seon.seon-unified .seon-title[style] {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  #seon.seon-unified h2 {
    font-size: 1.16rem;
  }

  #seon.seon-unified h3 {
    font-size: 1.03rem;
    margin-top: 1rem;
    margin-bottom: 0.5rem;
  }

  #seon.seon-unified h4 {
    font-size: 0.98rem;
    margin-top: 0.95rem;
    margin-bottom: 0.45rem;
  }

  #seon.seon-unified p,
  #seon.seon-unified li {
    font-size: 0.97rem;
    line-height: 1.62;
  }

  #seon.seon-unified .container:not(.accordion):not(.seon-faq),
  #seon.seon-unified .row:not(.accordion):not(.seon-faq) {
    margin-bottom: 1.1rem;
  }
}
