/* Tailwind Custom Colors */
@tailwind base;
@tailwind components;
@tailwind utilities;

/* UNC Color Palette */
:root {
    --carolina-blue: #4B9CD3;
    --tar-heel-blue: #007FAE;
    --unc-blue: #13294B;
    --ramses-blue: #1F456E;
    --well-blue: #00A1DE;
}

/* Custom Color Classes */
.bg-carolina-blue-100 { background-color: #E1F0F8; }
.bg-carolina-blue-600 { background-color: var(--carolina-blue); }
.bg-carolina-blue-700 { background-color: #3A7AA6; }
.text-carolina-blue-400 { color: var(--carolina-blue); }
.text-carolina-blue-600 { color: var(--carolina-blue); }
.text-carolina-blue-700 { color: #3A7AA6; }

.bg-tar-heel-blue-50 { background-color: #F0F7FA; }
.bg-tar-heel-blue-100 { background-color: #C2E2EE; }
.text-tar-heel-blue-800 { color: var(--tar-heel-blue); }

.bg-unc-blue-100 { background-color: #D6DCE5; }
.text-unc-blue-800 { color: var(--unc-blue); }

/* Custom Styles */
body {
    font-family: 'Libre Franklin', sans-serif;
}

#vanta-bg {
    background: linear-gradient(135deg, var(--carolina-blue) 0%, var(--unc-blue) 100%);
}

/* Animation for property cards */
.property-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.property-card:hover {
    transform: translateY(-5px);
}
.property-card img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}
/* Contact Form Styles */
#contact-form input,
#contact-form textarea {
    transition: all 0.3s ease;
}

#contact-form input:focus,
#contact-form textarea:focus {
    background-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0 0 0 2px white;
}

#contact-form .border-red-500 {
    border-color: #EF4444;
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.5);
}

/* Custom button styles */
.btn-primary {
    @apply bg-carolina-blue-600 hover:bg-carolina-blue-700 text-white px-6 py-2 rounded-lg font-medium transition;
}

.btn-outline {
    @apply border border-carolina-blue-600 text-carolina-blue-600 hover:bg-carolina-blue-50 px-6 py-2 rounded-lg font-medium transition;
}
