/* 2025 Design - View Details Button */
.property-btn.view-details {
    background: linear-gradient(90deg, #1C9BEF, #1EC8A5) !important;
    border: none !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    transition: all 0.4s ease !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 56px !important;
    z-index: 10 !important;
    box-shadow: 0 4px 15px rgba(28, 155, 239, 0.3) !important;
}

.property-btn.view-details:hover {
    background: linear-gradient(90deg, #0EA5E9, #059669) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(28, 155, 239, 0.4) !important;
    filter: brightness(1.1) !important;
}

/* 2025 Design - Apply Now Button */
.property-btn.apply-now {
    background: linear-gradient(90deg, #1C9BEF, #1EC8A5) !important;
    border: none !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    transition: all 0.4s ease !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 56px !important;
    z-index: 10 !important;
    box-shadow: 0 4px 15px rgba(30, 200, 165, 0.3) !important;
}

.property-btn.apply-now:hover {
    background: linear-gradient(90deg, #0EA5E9, #059669) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(30, 200, 165, 0.4) !important;
    filter: brightness(1.1) !important;
}

.property-btn svg {
    width: 20px !important;
    height: 20px !important;
    margin-right: 8px !important;
}

/* Success and Error States */
.btn-success {
    background: #12B76A !important;
    color: white !important;
}

.btn-error {
    background: #F04438 !important;
    color: white !important;
}

/* 2025 Design - Default Button */
.property-btn {
    background: linear-gradient(90deg, #1C9BEF, #1EC8A5) !important;
    border: none !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    transition: all 0.4s ease !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 56px !important;
    z-index: 10 !important;
    box-shadow: 0 4px 15px rgba(28, 155, 239, 0.3) !important;
}

.property-btn:hover {
    background: linear-gradient(90deg, #0EA5E9, #059669) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(28, 155, 239, 0.4) !important;
    filter: brightness(1.1) !important;
}

/* 2025 Design - Custom Color Classes */
.bg-primary-blue { background-color: #1C9BEF !important; }
.bg-secondary-teal { background-color: #1EC8A5 !important; }
.bg-dark-navy { background-color: #0E1A27 !important; }
.bg-background-light { background-color: #F7FAFC !important; }
.bg-neutral-gray { background-color: #CBD5E1 !important; }
.bg-success-green { background-color: #12B76A !important; }
.bg-alert-red { background-color: #F04438 !important; }

.text-primary-blue { color: #1C9BEF !important; }
.text-secondary-teal { color: #1EC8A5 !important; }
.text-dark-navy { color: #0E1A27 !important; }
.text-neutral-gray { color: #CBD5E1 !important; }
.text-background-light { color: #F7FAFC !important; }

.border-primary-blue { border-color: #1C9BEF !important; }
.border-secondary-teal { border-color: #1EC8A5 !important; }
.border-neutral-gray { border-color: #CBD5E1 !important; }

.bg-gradient-to-br { background-image: linear-gradient(to bottom right, var(--tw-gradient-stops)) !important; }
.from-primary-blue { --tw-gradient-from: #1C9BEF !important; --tw-gradient-to: rgb(28 155 239 / 0) !important; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important; }
.via-secondary-teal { --tw-gradient-to: rgb(30 200 165 / 0) !important; --tw-gradient-stops: var(--tw-gradient-from), #1EC8A5, var(--tw-gradient-to) !important; }
.to-dark-navy { --tw-gradient-to: #0E1A27 !important; }

.bg-gradient-to-r { background-image: linear-gradient(to right, var(--tw-gradient-stops)) !important; }
.from-white { --tw-gradient-from: #ffffff !important; --tw-gradient-to: rgb(255 255 255 / 0) !important; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important; }
.to-background-light { --tw-gradient-to: #F7FAFC !important; }

.bg-clip-text { background-clip: text !important; -webkit-background-clip: text !important; }
.text-transparent { color: transparent !important; }

/* Opacity utilities */
.from-primary-blue\/90 { --tw-gradient-from: rgba(28, 155, 239, 0.9) !important; }
.via-secondary-teal\/80 { --tw-gradient-to: rgba(30, 200, 165, 0) !important; --tw-gradient-stops: var(--tw-gradient-from), rgba(30, 200, 165, 0.8), var(--tw-gradient-to) !important; }
.to-dark-navy\/95 { --tw-gradient-to: rgba(14, 26, 39, 0.95) !important; }

.text-white\/90 { color: rgba(255, 255, 255, 0.9) !important; }
.text-white\/80 { color: rgba(255, 255, 255, 0.8) !important; }
.text-dark-navy\/70 { color: rgba(14, 26, 39, 0.7) !important; }
.text-dark-navy\/60 { color: rgba(14, 26, 39, 0.6) !important; }
.text-dark-navy\/50 { color: rgba(14, 26, 39, 0.5) !important; }

/* Additional utility classes */
.min-h-screen { min-height: 100vh !important; }
.flex { display: flex !important; }
.items-center { align-items: center !important; }
.justify-center { justify-content: center !important; }
.gap-6 { gap: 1.5rem !important; }
.mb-12 { margin-bottom: 3rem !important; }
.mb-16 { margin-bottom: 4rem !important; }
.py-20 { padding-top: 5rem !important; padding-bottom: 5rem !important; }
.px-12 { padding-left: 3rem !important; padding-right: 3rem !important; }
.text-lg { font-size: 1.125rem !important; line-height: 1.75rem !important; }
.text-5xl { font-size: 3rem !important; line-height: 1 !important; }
.text-6xl { font-size: 3.75rem !important; line-height: 1 !important; }
.text-7xl { font-size: 4.5rem !important; line-height: 1 !important; }
.leading-relaxed { line-height: 1.625 !important; }
.max-w-4xl { max-width: 56rem !important; }
.max-w-3xl { max-width: 48rem !important; }
.rounded-2xl { border-radius: 1.5rem !important; }
.shadow-2xl { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important; }
.z-10 { z-index: 10 !important; }

@media (min-width: 640px) {
  .sm\:text-6xl { font-size: 3.75rem !important; line-height: 1 !important; }
  .sm\:text-5xl { font-size: 3rem !important; line-height: 1 !important; }
  .sm\:px-12 { padding-left: 3rem !important; padding-right: 3rem !important; }
  .sm\:flex-row { flex-direction: row !important; }
}

@media (min-width: 1024px) {
  .lg\:text-7xl { font-size: 4.5rem !important; line-height: 1 !important; }
}

/* 2025 Design - Additional Styles */

/* Hero Section Buttons */
.hero-btn-primary {
    background: linear-gradient(90deg, #1C9BEF, #1EC8A5) !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    transition: all 0.4s ease !important;
    box-shadow: 0 4px 15px rgba(28, 155, 239, 0.3) !important;
    border: none !important;
}

.hero-btn-primary:hover {
    background: linear-gradient(90deg, #0EA5E9, #059669) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(28, 155, 239, 0.4) !important;
    filter: brightness(1.1) !important;
}

.hero-btn-secondary {
    background: white !important;
    color: #0E1A27 !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    transition: all 0.4s ease !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    border: 2px solid rgba(255, 255, 255, 0.2) !important;
}

.hero-btn-secondary:hover {
    background: #F7FAFC !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15) !important;
}

.hero-btn-tertiary {
    background: transparent !important;
    color: #0E1A27 !important;
    font-weight: 500 !important;
    padding: 14px 28px !important;
    border-radius: 16px !important;
    transition: all 0.4s ease !important;
    border: 2px solid rgba(14, 26, 39, 0.6) !important;
    backdrop-filter: blur(10px) !important;
}

.hero-btn-tertiary:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    transform: translateY(-2px) !important;
    border-color: rgba(14, 26, 39, 0.8) !important;
    backdrop-filter: blur(15px) !important;
}

.hero-btn-red {
    background: linear-gradient(90deg, #DC2626, #B91C1C) !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 16px 32px !important;
    border-radius: 16px !important;
    transition: all 0.4s ease !important;
    box-shadow: 0 4px 15px rgba(220, 38, 38, 0.3) !important;
    border: none !important;
}

.hero-btn-red:hover {
    background: linear-gradient(90deg, #B91C1C, #991B1B) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(220, 38, 38, 0.4) !important;
    filter: brightness(1.1) !important;
}

/* Red navigation menu item for Schedule A Tour */
.nav-schedule-tour {
    background: linear-gradient(90deg, #DC2626, #B91C1C) !important;
    color: white !important;
    font-weight: 600 !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
    border: none !important;
    text-decoration: none !important;
}

.nav-schedule-tour:hover {
    background: linear-gradient(90deg, #B91C1C, #991B1B) !important;
    color: white !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 15px rgba(220, 38, 38, 0.3) !important;
    filter: brightness(1.1) !important;
}

/* Navigation Hover Effects */
.nav-link {
    position: relative !important;
    transition: all 0.3s ease !important;
}

.nav-link:hover {
    color: #1EC8A5 !important;
}

.nav-link::after {
    content: '' !important;
    position: absolute !important;
    width: 0 !important;
    height: 2px !important;
    bottom: -4px !important;
    left: 50% !important;
    background: linear-gradient(90deg, #1C9BEF, #1EC8A5) !important;
    transition: all 0.3s ease !important;
    transform: translateX(-50%) !important;
}

.nav-link:hover::after {
    width: 100% !important;
}

/* Fix for draft buttons in admin panel */
.property-btn.flex-1.opacity-50 {
    display: flex !important;
    background: #CBD5E1 !important;
    color: #64748B !important;
    border: 1px solid #E2E8F0 !important;
}

/* Glassmorphic Cards */
.glass-card {
    background: rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
}