/* Shared discovery block. Preserve the site's brand tokens and typefaces. */
.home-families {padding-block: 34px 28px;}
.home-families,#selection-title {scroll-margin-top: 120px;}
.home-families__label {margin: 0 0 16px; color: var(--muted); font-size: .88rem;}
.home-families__grid {display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 10px; list-style: none; padding: 0; margin: 0;}
.home-families__grid li {min-width: 0;}
.home-families a {display: flex; flex-direction: column; justify-content: center; gap: 6px; height: 100%; min-height: 94px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; color: var(--text); text-decoration: none; background: var(--bg-soft); transition: border-color .2s, background-color .2s;}
.home-families a:hover {border-color: var(--turquesa); background: color-mix(in srgb,var(--turquesa) 6%,var(--bg-soft));}
.home-families strong {font-size: .95rem; line-height: 1.3;}
.home-families span {font-size: .76rem; line-height: 1.4; color: var(--muted);}
.home-selection {padding-block: 48px 64px; min-width: 0;}
.home-selection .section-head {margin-bottom: 20px;}
.home-selection h2,.home-selection h3 {letter-spacing: normal;}
.home-selection .section-head p:not(.eyebrow) {max-width: 62ch;}
.home-selection__toolbar {display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 16px;}
.home-selection__hint {font-size: .83rem; color: var(--muted); margin: 0;}
.home-selection__controls {display: flex; gap: 8px; flex-shrink: 0;}
.home-selection__controls[hidden] {display: none;}
.home-selection__controls button {min-height: 44px; min-width: 44px; padding: 10px 16px; border-radius: 999px; border: 1px solid var(--line); background: var(--bg-soft); color: var(--text); font: 600 .82rem/1.3 var(--font-body); cursor: pointer;}
.home-selection__controls button:hover:not(:disabled) {border-color: var(--turquesa);}
.home-selection__controls button:disabled {opacity: .4; cursor: default;}
.home-selection__track {display: flex; gap: 22px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-padding-inline: 3px; padding: 6px 3px 22px; list-style: none; margin: 0; scrollbar-width: thin; scrollbar-color: var(--violeta) transparent;}
.home-selection__item {flex: 0 0 calc((100% - 44px)/3); min-width: 0; scroll-snap-align: start;}
.home-selection__card {display: flex; flex-direction: column; height: 100%; padding: 18px; border: 1px solid var(--line); border-radius: 24px; background: linear-gradient(145deg,color-mix(in srgb,var(--violeta) 10%,var(--bg-soft)),var(--bg-soft) 60%,color-mix(in srgb,var(--turquesa) 6%,var(--bg-soft)));}
.home-selection__visual {position: relative; aspect-ratio: 16/10; overflow: hidden; border-radius: 14px; margin: 0 0 20px; background: #0b0b12;}
.home-selection__visual img {position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain;}
.home-selection__visual--object img {padding: 16px; box-sizing: border-box;}
.home-selection__track.is-dragging {cursor: grabbing; scroll-snap-type: none; user-select: none;}
.home-selection__tag {color: var(--muted); font: 600 .7rem/1.4 var(--font-body); letter-spacing: .08em; text-transform: uppercase; margin: 0 0 10px;}
.home-selection h3 {font: 600 clamp(1.25rem,2vw,1.6rem)/1.18 var(--font-display); margin: 0 0 12px; text-wrap: balance;}
.home-selection__description {font-size: .9rem; line-height: 1.6; color: var(--muted); margin: 0 0 24px;}
.home-selection__card .btn {margin-top: auto; align-self: flex-start; font-size: .82rem; min-height: 44px;}
.home-families a:focus-visible,.home-selection a:focus-visible,.home-selection button:focus-visible,.home-selection__track:focus-visible {outline: 2px solid var(--turquesa); outline-offset: 4px;}
@media(max-width: 1000px) {
  .home-families__grid {grid-template-columns: repeat(3,minmax(0,1fr));}
  .home-selection__item {flex-basis: calc((100% - 22px)/2);}
}
@media(max-width: 600px) {
  .home-families {padding-block: 24px;}
  .home-families__grid {grid-template-columns: repeat(2,minmax(0,1fr));}
  .home-families a {min-height: 84px; padding: 14px;}
  .home-selection {padding-block: 32px 48px;}
  .home-selection__toolbar {align-items: flex-start; flex-direction: column; gap: 12px;}
  .home-selection__track {gap: 16px;}
  .home-selection__item {flex-basis: 88%;}
}
@media(prefers-reduced-motion: reduce) {.home-families a {transition: none;}}
