:root { --brand-red: #0d5eaf; }
@layer base {
    body { @apply text-brand-dark antialiased; }
}
html {
  scroll-behavior: smooth;
}
.dropdown:hover .dropdown-menu { 
    @apply visible opacity-100 translate-y-0; 
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.group:hover select {
    color: #000;
}

@keyframes slow-zoom {
    0% { transform: scale(1); }
    100% { transform: scale(1.1); }
}
.animate-slow-zoom {
    animation: slow-zoom 20s infinite alternate linear;
}
    
@media (max-width: 640px) {
    .fixed.bottom-8.right-8 {
        bottom: 1.5rem;
        right: 1.5rem;
    }
    .w-16.h-16 {
        width: 3.5rem;
        height: 3.5rem;
        font-size: 1.5rem;
    }
}
    
.property-swiper { padding: 20px 0 60px 0 !important; }
.swiper-wrapper {
    transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.swiper-pagination-bullet-active {
    background: var(--brand-red) !important;
    width: 24px !important;
    border-radius: 4px !important;
}

.property-card {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.property-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

.iti { width: 100%; }
.iti__active { border-radius: 1rem; }
.iti__country-list { 
    border-radius: 1.5rem; 
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); 
    border: 1px solid #f3f4f6; 
    padding: 10px;
}