.diamond-carousel-container { width: 100%; position: relative; margin: 40px 0; display: flex; align-items: center; }
.d-carousel-window { width: 100%; overflow: hidden; border-radius: 12px; padding: 10px 0; }
.d-track { display: flex; transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1); gap: 20px; }
.carousel-item { min-width: calc((100% - 40px) / 3); max-height: 180px; transition: transform 0.3s ease; display: flex; justify-content: center; }
.carousel-item img { width: 100%; height: auto; max-height: 180px; object-fit: contain; display: block; border-radius: 8px; border: 1px solid #eee; background: #fff; box-shadow: 0 2px 5px rgba(0,0,0,0.05); }
.carousel-item:hover { transform: translateY(-5px); }
.nav-btn { position: absolute; top: 50%; transform: translateY(-50%); background: #000; color: #fff; border: none; width: 40px; height: 40px; border-radius: 50%; cursor: pointer; z-index: 10; font-size: 18px; opacity: 0.3; transition: 0.3s; display: flex; align-items: center; justify-content: center; }
.nav-btn:hover { opacity: 1; background: var(--p); }
.nav-btn.prev { left: 5px; }
.nav-btn.next { right: 5px; }
@media (max-width: 1024px) { .carousel-item { min-width: calc((100% - 20px) / 2); } }
@media (max-width: 600px) { .carousel-item { min-width: 90%; } .nav-btn { display: none; } .d-carousel-window { overflow-x: auto; scroll-snap-type: x mandatory; padding: 10px 20px; } .carousel-item { scroll-snap-align: center; } }
.map-wrap iframe, .video-wrap iframe { border: none !important; }
@media (max-width: 600px) { .map-wrap { height: 300px !important; } }
@media (max-width: 500px) {
    .compare-container {
        grid-template-columns: 1fr !important; /* Stack them on top of each other on small phones */
    }
}