.cps-collection-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:18px;margin:22px 0 36px}
.cps-collection-card{display:flex;flex-direction:column;overflow:hidden;border-radius:16px;border:1px solid #e0e5ed;background:#fff;color:inherit;text-decoration:none;transition:box-shadow .2s,transform .2s}
.cps-collection-card:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(0,0,0,.09)}
.cps-collection-card__image{height:170px;background:#f1f3f8;display:flex;justify-content:center;align-items:center;color:#566078;font-weight:600;overflow:hidden}
.cps-collection-card__image img{width:100%;height:100%;object-fit:cover}
.cps-collection-card__body{padding:15px;display:grid;gap:6px}
.cps-collection-card__body strong{font-size:1.06rem}
.cps-collection-card__body small{color:#657084}
.cps-collection-cover{max-width:1100px;margin:0 auto 28px;max-height:310px;border-radius:18px;overflow:hidden;background:#f3f4f7}
.cps-collection-cover img{display:block;width:100%;max-height:310px;object-fit:cover}
.cps-collection-filters{display:flex;gap:10px;overflow-x:auto;padding:12px 0 20px;margin-bottom:8px;scrollbar-width:thin}
.cps-collection-filter{flex:0 0 auto;padding:9px 15px;border-radius:999px;border:1px solid #c9d1de;color:#263447;text-decoration:none;font-weight:650;font-size:.92rem;background:#fff}
.cps-collection-filter.is-active{background:#172b45;color:#fff;border-color:#172b45}
.cps-collection-filter:focus-visible,.cps-collection-card:focus-visible{outline:3px solid #de8232;outline-offset:2px}

/* CPS 1.20.38: portada de Ideas con colecciones de ancho uniforme. */
.cps-ideas-collections-only .cps-collection-directory{margin-top:18px}
.cps-ideas-collections-only .cps-collection-card{min-width:0}
.cps-ideas-collections-only .cps-collection-card__image{height:190px}
@media (max-width:550px){
  .cps-ideas-collections-only .cps-collection-directory{grid-template-columns:1fr}
  .cps-ideas-collections-only .cps-collection-card__image{height:190px}
}


/* CPS 1.20.40 — solo páginas internas de colección: fichas compactas y precios visibles. */
.cps-collection-products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin-top: 12px;
    align-items: stretch;
}
.cps-collection-tile {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #dfe5ec;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(19, 33, 57, .04);
    transition: box-shadow .18s ease, transform .18s ease;
}
.cps-collection-tile:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(19, 33, 57, .10);
}
.cps-collection-tile__media {
    display: block;
    position: relative;
    flex-shrink: 0;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #eef1f5;
}
.cps-collection-tile__media > img,
.cps-collection-tile__media > video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cps-collection-tile__placeholder {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
    padding: 12px;
    color: #526276;
    text-align: center;
    font-size: .8rem;
}
.cps-collection-tile__info {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
    padding: 12px 11px 13px;
}
.cps-collection-tile__title {
    display: -webkit-box;
    overflow: hidden;
    margin: 0;
    min-height: 2.6em;
    font-size: .89rem;
    font-weight: 700;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.cps-collection-tile__title a {
    text-decoration: none;
    color: #15233c;
}
.cps-collection-tile__title a:hover { text-decoration: underline; }
.cps-collection-tile__price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: 4px;
    row-gap: 1px;
    margin: auto 0 0;
    padding: 0;
    color: #dc591d;
    line-height: 1.3;
}
.cps-collection-tile__price-prefix,
.cps-collection-tile__currency {
    font-size: .72rem;
    font-weight: 600;
}
.cps-collection-tile__price strong {
    font-size: 1.05rem;
    font-weight: 800;
    white-space: nowrap;
}
.cps-collection-tile__price-inquiry {
    font-size: .8rem;
    font-weight: 700;
}
.cps-collection-tile__media .cps-video-play-button {
    min-height: 32px;
    padding: 7px 11px;
    font-size: .72rem;
    white-space: nowrap;
}
.cps-collection-tile__media .cps-video-play-button span {font-size: .76rem;}
.cps-collection-tile__media:focus-visible,
.cps-collection-tile__title a:focus-visible {
    outline: 3px solid #de8232;
    outline-offset: -3px;
}
@media (max-width: 1099px) {
    .cps-collection-products {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px;}
}
@media (max-width: 767px) {
    .cps-collection-products {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px;}
    .cps-collection-tile {border-radius: 11px;}
    .cps-collection-tile__info {gap: 6px; padding: 9px 8px 10px;}
    .cps-collection-tile__title {font-size: .79rem; line-height: 1.25; min-height: 2.5em;}
    .cps-collection-tile__price strong {font-size: .95rem;}
    .cps-collection-tile__price-prefix,
    .cps-collection-tile__currency {font-size: .66rem;}
    .cps-collection-tile__media .cps-video-play-button {min-height: 29px; padding: 6px 8px; font-size: .65rem; gap: 5px;}
}
