.model-carousel {
    background: linear-gradient(150deg, #f5f5f7 0%, #fff 58%, #eef6ff 100%);
    padding: clamp(3.5rem, 7vw, 6.5rem) 0;
}

.model-carousel__heading { align-items: end; display: flex; justify-content: space-between; gap: 1.5rem; margin-bottom: 1.75rem; }
.model-carousel__eyebrow { color: #6e6e73; font-size: .74rem; font-weight: 700; letter-spacing: .12em; margin: 0 0 .5rem; text-transform: uppercase; }
.model-carousel__heading h2 { color: #1d1d1f; font-size: clamp(2rem, 4vw, 3.6rem); letter-spacing: -.055em; line-height: .98; margin: 0; }
.model-carousel__all-link { color: #0066cc; font-size: .98rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.model-carousel__all-link:hover, .model-carousel__all-link:focus-visible { color: #004f9e; text-decoration: underline; }
.model-carousel__viewport { display: grid; gap: 1rem; grid-auto-columns: minmax(236px, 300px); grid-auto-flow: column; overflow-x: auto; overscroll-behavior-inline: contain; padding: .35rem .25rem 1.1rem; scroll-behavior: smooth; scroll-padding-inline: .25rem; scroll-snap-type: inline mandatory; scrollbar-color: #9ba9b7 transparent; }
.model-carousel__card { background: rgba(255, 255, 255, .92); border: 1px solid rgba(0, 0, 0, .07); border-radius: 1.4rem; min-height: 345px; overflow: hidden; scroll-snap-align: start; transition: box-shadow .2s ease, transform .2s ease; }
.model-carousel__card:hover { box-shadow: 0 18px 38px rgba(29, 29, 31, .12); transform: translateY(-4px); }
.model-carousel__product-link { color: #1d1d1f; display: grid; grid-template-rows: 205px auto auto auto; height: 100%; padding: 1.25rem; text-decoration: none; }
.model-carousel__product-link:focus-visible { border-radius: 1.4rem; outline: 3px solid #0066cc; outline-offset: 3px; }
.model-carousel__image-wrap { align-items: center; display: flex; justify-content: center; min-height: 0; }
.model-carousel__image-wrap img { height: 100%; max-height: 190px; max-width: 100%; object-fit: contain; width: 100%; }
.model-carousel__product-link h3 { font-size: 1.2rem; letter-spacing: -.025em; margin: .85rem 0 .2rem; }
.model-carousel__product-link p { color: #6e6e73; margin: 0; }
.model-carousel__product-link > span { align-self: end; color: #0066cc; font-weight: 700; margin-top: 1rem; }
.model-carousel__controls { display: flex; gap: .65rem; justify-content: flex-end; margin-top: .4rem; }
.model-carousel__controls button { align-items: center; background: #1d1d1f; border: 0; border-radius: 50%; color: #fff; display: inline-flex; font-size: 1.25rem; height: 2.65rem; justify-content: center; transition: background .2s ease, transform .2s ease; width: 2.65rem; }
.model-carousel__controls button:hover, .model-carousel__controls button:focus-visible { background: #0066cc; outline: 3px solid rgba(0, 102, 204, .25); outline-offset: 3px; transform: translateY(-2px); }
.model-carousel__controls button:disabled { cursor: not-allowed; opacity: .32; transform: none; }

@media (max-width: 767px) {
    .model-carousel__heading { align-items: start; flex-direction: column; gap: .85rem; }
    .model-carousel__viewport { grid-auto-columns: minmax(78vw, 290px); }
    .model-carousel__card { min-height: 325px; }
    .model-carousel__product-link { grid-template-rows: 185px auto auto auto; }
}
