.kl-set-section { margin: 20px 0 36px; }
.kl-set-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; padding: 0; margin: 0; list-style: none; }
.kl-set-grid > li { min-width: 0; }
.kl-set-card { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 3 / 1; isolation: isolate; overflow: hidden; border-radius: 14px; background: #26374b; text-decoration: none; }
.kl-set-card .kl-set-artwork { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% 45%; filter: none; z-index: -2; }
.kl-set-shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(15, 22, 32, .12), rgba(15, 22, 32, .42)); }
.kl-set-code { position: absolute; top: 10px; left: 12px; color: #fff; background: rgba(0, 0, 0, .55); border: 1px solid rgba(255, 255, 255, .3); padding: 1px 8px; border-radius: 6px; font-size: 12px; line-height: 21px; text-transform: none; }
.kl-set-title { display: flex; align-items: center; flex-direction: column; width: 76%; gap: 8px; padding-top: 10px; }
.kl-set-card .kl-set-logo { display: block; width: 100%; height: 65px; object-fit: contain; filter: drop-shadow(0 3px 3px rgba(0, 0, 0, .65)); }
.kl-set-name { display: block; color: #fff; font-size: clamp(17px, 1.4vw, 23px); font-weight: 700; line-height: 1.1; text-align: center; text-transform: none; text-shadow: 0 2px 3px #10151c; }
.kl-set-card:hover .kl-set-shade { background: linear-gradient(180deg, rgba(15, 22, 32, .06), rgba(15, 22, 32, .28)); }
.kl-set-card:focus-visible { outline: 3px solid #e60012; outline-offset: 4px; }
@media (min-width: 1200px) {
  #category .kl-set-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
  #category .kl-set-card { width: 100%; min-width: 0; min-height: 132px; }
  #category .kl-set-title { width: 80%; gap: 6px; padding-top: 18px; }
  #category .kl-set-card .kl-set-logo { height: 48px; }
  #category .kl-set-name { font-size: clamp(15px, 1vw, 19px); line-height: 1.15; }
}
/* Preserve the catalogue's lowercase set codes in the theme's navigation. */
@media (min-width: 768px) {
  #category.category-id-4 .kl-set-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
#category.category-id-4 .kl-set-card { width: 100%; min-width: 0; max-width: 100%; min-height: 144px; }

#header #sidevertical_menu #cpcategory-4 a,
:is(#category-11, #category-12, #category-13, #category-14, #category-15, #category-16, #category-17, #category-18, #category-19, #category-20, #cpcategory-11, #cpcategory-12, #cpcategory-13, #cpcategory-14, #cpcategory-15, #cpcategory-16, #cpcategory-17, #cpcategory-18, #cpcategory-19, #cpcategory-20) > a,
#category .block-category .h1,
#category .breadcrumb [itemprop="name"],
#category .block-categories a { text-transform: none; }
@media (max-width: 1199px) {
  .kl-set-card { aspect-ratio: 2.7 / 1; }
  .kl-set-card .kl-set-logo { height: 48px; }
}
@media (max-width: 600px) {
  .kl-set-grid { grid-template-columns: 1fr; gap: 14px; }
  .kl-set-card { aspect-ratio: 3 / 1; }
  .kl-set-card .kl-set-logo { height: 50px; }
}

/* Preserve the approved lowercase codes for the newly added sets. */
:is(#category-21, #category-22, #category-23, #category-24, #category-25, #category-26, #category-27, #category-28, #category-29, #category-30, #category-31, #category-32, #category-33, #category-34, #category-35, #category-36, #cpcategory-21, #cpcategory-22, #cpcategory-23, #cpcategory-24, #cpcategory-25, #cpcategory-26, #cpcategory-27, #cpcategory-28, #cpcategory-29, #cpcategory-30, #cpcategory-31, #cpcategory-32, #cpcategory-33, #cpcategory-34, #cpcategory-35, #cpcategory-36) > a { text-transform: none; }

/* Quiet, centered text links below the set artwork. */
.kl-set-grid .kl-set-card-list-link {
  display:block; width:fit-content; max-width:calc(100% - 16px);
  margin:7px auto 9px; padding:0; border:0; border-radius:0;
  background:transparent; color:#777; font-size:11px; line-height:1.5;
  font-weight:400; text-decoration:none; text-align:center;
}
.kl-set-grid .kl-set-card-list-link:hover { color:#444; text-decoration:underline; background:transparent; }
.kl-set-grid .kl-set-card-list-link:focus-visible { outline:2px solid #e60012; outline-offset:4px; }

/* MEGA set codes retain their original spelling. */
:is(#category-37, #cpcategory-37, #category-46, #cpcategory-46, #category-45, #cpcategory-45, #category-44, #cpcategory-44, #category-43, #cpcategory-43, #category-42, #cpcategory-42, #category-41, #cpcategory-41, #category-40, #cpcategory-40, #category-39, #cpcategory-39, #category-38, #cpcategory-38) > a { text-transform:none; }
