/* Shared, optional presentation. Every rule is gated by an explicitly configured field. */
.cca-v2 [data-cca-appearance] { min-width: 0; }
.cca-v2 [data-ap-background-color] { --cca-v2-surface: var(--cca-ap-background-color); background-color: var(--cca-ap-background-color) !important; }
.cca-v2 [data-ap-background-color] .cca-v2__cta-bar { --cca-v2-surface: var(--cca-ap-background-color); background-color: var(--cca-ap-background-color) !important; }
.cca-v2 [data-ap-bar-background] .cca-v2__cta-bar { --cca-v2-surface: var(--cca-ap-bar-background); background-color: var(--cca-ap-bar-background) !important; }
.cca-v2 [data-ap-text-color] { --cca-v2-ink: var(--cca-ap-text-color); color: var(--cca-ap-text-color) !important; }
.cca-v2 [data-ap-text-color] :is(p, .cca-v2__body, .cca-v2__small, .cca-v2__list-item, .cca-v2__cgrid-text, .cca-v2__cgrid-year, .cca-v2__cgrid-group-names, .cca-v2__cgrid-role-name, .cca-v2__sponsor-name, .cca-v2__benefit-title, .cca-v2__post-card-placeholder, .cca-v2__accordion-panel) { color: var(--cca-ap-text-color) !important; }
.cca-v2 [data-ap-text-color] :is(.cca-v2__cta-bar, .cca-v2__hero-content, .cca-v2__post-card-link, .cca-v2__promotion-link, .cca-v2__cgrid-panel, .cca-v2__file-sheet-toggle, .cca-v2__file-sheet-action) { color: var(--cca-ap-text-color) !important; }
.cca-v2 [data-ap-heading-color] :is(h2:not(.cca-v2__label), h3, h4, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__subheadline, .cca-v2__title, .cca-v2__cgrid-name, .cca-v2__cgrid-subtitle, .cca-v2__cgrid-period, .cca-v2__accordion-title, .cca-v2__product-sheet-price, .cca-v2__benefit-icon) { color: var(--cca-ap-heading-color) !important; }
.cca-v2 [data-ap-muted-color] :is(.cca-v2__post-card-excerpt, .cca-v2__benefit-description, .cca-v2__index-description, .cca-v2__cgrid-text, .cca-v2__cgrid-year, .cca-v2__accordion-panel, time, .cca-v2__small, .cca-v2__product-sheet-note, .cca-v2__product-sheet-text, .cca-v2__file-sheet-label) { color: var(--cca-ap-muted-color) !important; }
.cca-v2 [data-ap-label-color] :is(.cca-v2__label, .cca-v2__tag, .cca-v2__index-number, .cca-v2__product-sheet-status) { color: var(--cca-ap-label-color) !important; }
.cca-v2 [data-ap-link-color] a:not(:is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback, .cca-v2__file-sheet-open, .cca-v2__product-sheet-thumb)) { color: var(--cca-ap-link-color) !important; }
.cca-v2 [data-ap-surface-color] :is(.cca-v2__product-sheet-main, .cca-v2__product-sheet-thumb, .cca-v2__product-sheet-status, .cca-v2__cgrid-panel, .cca-v2__cgrid-logo > a, .cca-v2__cgrid-logo > span, .cca-v2__benefit-title, .cca-v2__benefit-icon, .cca-v2__tag, .cca-v2__text-columns-dots, .cca-v2__simple-controls) { background-color: var(--cca-ap-surface-color) !important; }
/* Aparte de la regla anterior: su :is() trae un selector con hijo directo y subiría la especificidad por encima de los colores de botón. */
.cca-v2 [data-ap-surface-color] :is(.cca-v2__file-sheet-toggle, .cca-v2__file-sheet-action) { background-color: var(--cca-ap-surface-color) !important; }
.cca-v2 [data-ap-line-color] { --cca-v2-grid-line: var(--cca-ap-line-color); --cca-v2-list-line: var(--cca-ap-line-color); --cca-v2-line: var(--cca-ap-line-color); --cca-v2-index-line: var(--cca-ap-line-color); --cca-v2-acc-line: var(--cca-ap-line-color); }
.cca-v2 [data-ap-line-color] :is(.cca-v2__tag--award, .cca-v2__file-sheet-award-card, .cca-v2__product-sheet-buy, .cca-v2__product-sheet-row, .cca-v2__file-sheet-row, .cca-v2__index-item, .cca-v2__list-item, .cca-v2__accordion-item, .cca-v2__institutional, .cca-v2__cgrid-row, .cca-v2__cgrid-rows, .cca-v2__accordion-grid, .cca-v2__text-section, .cca-v2__text-section .cca-v2__container) { border-color: var(--cca-ap-line-color) !important; }
.cca-v2 [data-ap-button-background] :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback), .cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback)[data-ap-button-background] { background: var(--cca-ap-button-background) !important; }
.cca-v2 [data-ap-button-color] :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback), .cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback)[data-ap-button-color] { color: var(--cca-ap-button-color) !important; }
.cca-v2 [data-ap-button-border] :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback), .cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback)[data-ap-button-border] { border-color: var(--cca-ap-button-border) !important; }
.cca-v2 [data-ap-button-hover-background] :is(a, button):hover :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback), .cca-v2 [data-ap-button-hover-background] :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback):hover, .cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback)[data-ap-button-hover-background]:hover { background: var(--cca-ap-button-hover-background) !important; }
.cca-v2 [data-ap-button-hover-color] :is(a, button):hover :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback), .cca-v2 [data-ap-button-hover-color] :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback):hover, .cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback)[data-ap-button-hover-color]:hover { color: var(--cca-ap-button-hover-color) !important; }
.cca-v2 [data-ap-heading-family] :is(h2:not(:is(.cca-v2__label, .cca-v2__product-sheet-heading)), h3, h4, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__subheadline, .cca-v2__title, .cca-v2__cgrid-name, .cca-v2__cgrid-subtitle, .cca-v2__cgrid-period, .cca-v2__accordion-title, .cca-v2__product-sheet-price) { font-family: var(--cca-ap-heading-family) !important; }
.cca-v2 [data-ap-text-family] :is(p:not(:is(.cca-v2__label, .cca-v2__index-number, .cca-v2__index-title, .cca-v2__title, .cca-v2__subheadline, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__product-sheet-price)), .cca-v2__body, .cca-v2__small, .cca-v2__cgrid-text, .cca-v2__cgrid-year, .cca-v2__list-item:not(.cca-v2__headline-3):not(.cca-v2__title), .cca-v2__button), .cca-v2 .cca-v2__button[data-ap-text-family] { font-family: var(--cca-ap-text-family) !important; }
.cca-v2 [data-ap-heading-size] :is(h2:not(:is(.cca-v2__label, .cca-v2__product-sheet-heading)), h3, h4, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__subheadline, .cca-v2__title, .cca-v2__cgrid-name, .cca-v2__cgrid-subtitle, .cca-v2__cgrid-period, .cca-v2__accordion-title, .cca-v2__product-sheet-price) { font-size: var(--cca-ap-heading-size) !important; }
.cca-v2 [data-ap-text-size] :is(p:not(:is(.cca-v2__label, .cca-v2__index-number, .cca-v2__index-title, .cca-v2__title, .cca-v2__subheadline, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__product-sheet-price)), .cca-v2__body, .cca-v2__small, .cca-v2__cgrid-text, .cca-v2__cgrid-year, .cca-v2__file-sheet-value) { font-size: var(--cca-ap-text-size) !important; }
.cca-v2 [data-ap-text-align] :is(h2, h3, h4, p, .cca-v2__body, .cca-v2__title, .cca-v2__post-card-copy, .cca-v2__cgrid-summary, .cca-v2__list-item, .cca-v2__cta-title) { text-align: var(--cca-ap-text-align) !important; }
.cca-v2 [data-ap-text-align] .cca-v2__hero-body { align-items: var(--cca-ap-items-align); }
.cca-v2 [data-ap-text-align] :is(.cca-v2__promotion-link, .cca-v2__promotion-copy) { align-items: var(--cca-ap-items-align); }
.cca-v2 [data-ap-text-align] .cca-v2__promotion-copy { width: 100%; }
.cca-v2 [data-ap-text-align] .cca-v2__promotion-copy > :is(h3, p) { width: 100%; }
.cca-v2 [data-ap-text-align] .cca-v2__post-card-meta { justify-content: var(--cca-ap-items-align); }
.cca-v2 [data-ap-text-align] :is(.cca-v2__text-columns-title-row, .cca-v2__section-heading, .cca-v2__cta-actions) { justify-content: var(--cca-ap-items-align); }
/* Keep the headline's button offset in flow when the editor replaces the original size. */
.cca-v2 [data-ap-muted-color] .cca-v2__card-description { color: var(--cca-ap-muted-color) !important; }
.cca-v2 [data-ap-label-color] :is(.cca-v2__card-label, .cca-v2__card-status) { color: var(--cca-ap-label-color) !important; }
.cca-v2 [data-ap-surface-color] :is(.cca-v2__carousel-media, .cca-v2__card-status) { background-color: var(--cca-ap-surface-color) !important; }
.cca-v2 [data-ap-button-background] :is(.cca-v2__card-save, .cca-v2__carousel-dot, .cca-v2__file-sheet-action) { background: var(--cca-ap-button-background) !important; }
.cca-v2 [data-ap-button-color] :is(.cca-v2__card-save, .cca-v2__carousel-dot, .cca-v2__file-sheet-action) { color: var(--cca-ap-button-color) !important; }
.cca-v2 [data-ap-button-border] :is(.cca-v2__card-save, .cca-v2__carousel-dot, .cca-v2__file-sheet-action) { border-color: var(--cca-ap-button-border) !important; }
.cca-v2 [data-ap-button-hover-background] :is(.cca-v2__card-save, .cca-v2__carousel-dot, .cca-v2__file-sheet-action):hover { background: var(--cca-ap-button-hover-background) !important; }
.cca-v2 [data-ap-button-hover-color] :is(.cca-v2__card-save, .cca-v2__carousel-dot, .cca-v2__file-sheet-action):hover { color: var(--cca-ap-button-hover-color) !important; }
.cca-v2 [data-ap-heading-size] .cca-v2__text-columns-title-row { --title-size: var(--cca-ap-heading-size); }
.cca-v2 [data-ap-heading-size] .cca-v2__text-columns-title-row > .cca-v2__button { transform: none; margin-top: calc(var(--title-size) * var(--x-offset)); }
.cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback)[data-ap-text-size] { font-size: var(--cca-ap-text-size) !important; }
.cca-v2 [data-ap-media] { position: relative; isolation: isolate; }
.cca-v2 .cca-v2__appearance-media { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; border-radius: inherit; }
.cca-v2 .cca-v2__appearance-media::after { content: ""; position: absolute; inset: 0; background: var(--cca-ap-overlay, transparent); }
.cca-v2 .cca-v2__appearance-media :is(picture, img, video) { display: block; width: 100%; height: 100%; }
.cca-v2 .cca-v2__appearance-media :is(img, video) { object-fit: cover; object-position: var(--cca-ap-bg-position, center); }
.cca-v2 .cca-v2__appearance-media video { position: absolute; inset: 0; }
.cca-v2 .cca-v2__appearance-media video[hidden] { display: none; }
.cca-v2 .cca-v2__appearance-playback { display: block; position: relative; z-index: 4; min-height: 44px; margin: 12px 12px 16px auto; padding: 8px 14px; border: 1px solid #000; border-radius: 999px; color: #000; background: #fff; font-family: var(--cca-v2-font-mono); font-size: 12px; cursor: pointer; }
.cca-v2 .cca-v2__appearance-playback[hidden] { display: none; }
.cca-v2 .cca-v2__appearance-playback:focus-visible { outline: 3px solid #000; outline-offset: 3px; }
.cca-v2 .cca-v2__hero[data-ap-media] .cca-v2__hero-content { background: transparent; }
.cca-v2 [data-ap-media] .cca-v2__cta-bar { background: transparent !important; }
.cca-v2 .cca-v2__hero[data-ap-media] .cca-v2__hero-slide--full .cca-v2__hero-content::after { background: none; }
.cca-v2 .cca-v2__hero[data-ap-media] .cca-v2__hero-text-background { display: none; }
@media (max-width: 767px) {
  .cca-v2 :is([data-ap-heading-size], [data-ap-heading-mobile-size]) .cca-v2__text-columns-title-row > .cca-v2__button { transform: none; margin-top: 0; }
  .cca-v2 :is(.cca-v2__button, .cca-v2__sponsors-toggle, .cca-v2__appearance-playback):is([data-ap-text-size], [data-ap-text-mobile-size]) { font-size: var(--cca-ap-text-mobile-size) !important; }
  .cca-v2 :is([data-ap-heading-size], [data-ap-heading-mobile-size]) :is(h2:not(:is(.cca-v2__label, .cca-v2__product-sheet-heading)), h3, h4, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__subheadline, .cca-v2__title, .cca-v2__cgrid-name, .cca-v2__cgrid-subtitle, .cca-v2__cgrid-period, .cca-v2__accordion-title, .cca-v2__product-sheet-price) { font-size: var(--cca-ap-heading-mobile-size) !important; }
  .cca-v2 :is([data-ap-text-size], [data-ap-text-mobile-size]) :is(p:not(:is(.cca-v2__label, .cca-v2__index-number, .cca-v2__index-title, .cca-v2__title, .cca-v2__subheadline, .cca-v2__headline-1, .cca-v2__headline-2, .cca-v2__headline-3, .cca-v2__product-sheet-price)), .cca-v2__body, .cca-v2__small, .cca-v2__cgrid-text, .cca-v2__cgrid-year, .cca-v2__file-sheet-value) { font-size: var(--cca-ap-text-mobile-size) !important; }
}
/* Ficha archivo: las etiquetas de categoría llevan un borde del mismo color que su fondo. */
.cca-v2 [data-ap-surface-color] .cca-v2__file-sheet-categories .cca-v2__tag { border-color: var(--cca-ap-surface-color) !important; }
