/* Focused home-page polish. Loaded after home.css so the existing markup stays intact. */
.home-page {
    --home-ink: #102a2a;
    --home-muted: #607575;
    --home-brand: #087f72;
    --home-brand-dark: #07594f;
    --home-accent: #f0b44d;
    color: var(--home-ink);
}

.home-page .home-hero {
    min-height: 590px;
    background: #f3f8f5;
}

.home-page .home-hero::before,
.home-page .home-hero::after,
.home-page .home-hero-decoration {
    display: none;
}

.home-page .home-hero-content {
    max-width: 1180px;
    padding: 76px 24px 88px;
}

.home-page .home-hero-badge {
    color: var(--home-brand-dark);
    background: #dff1eb;
    border: 1px solid #c4e5dc;
}

.home-page .home-hero-title {
    max-width: 760px;
    color: var(--home-ink);
    letter-spacing: 0;
    line-height: 1.08;
}

.home-page .home-hero-title .highlight {
    color: var(--home-brand);
}

.home-page .home-hero-description {
    max-width: 650px;
    color: var(--home-muted);
}

.home-page .home-search-card {
    max-width: 1050px;
    border: 1px solid #d9e7e2;
    border-radius: 14px;
    box-shadow: 0 18px 42px rgba(16, 42, 42, .12);
}

.home-page .home-search-tab.active,
.home-page .home-search-button,
.home-page .home-cta-box {
    background: var(--home-brand);
}

.home-page .home-search-tab.active {
    color: #fff;
}

.home-page .home-search-button:hover,
.home-page .home-cta-box {
    background: var(--home-brand-dark);
}

.home-page .section-heading {
    color: var(--home-ink);
    letter-spacing: 0;
}

.home-page .section-subheading,
.home-page .property-card-location,
.home-page .property-card-meta-item {
    color: var(--home-muted);
}

.home-page .property-type-grid,
.home-page .property-grid,
.home-page .location-grid {
    gap: 20px;
}

.home-page .property-type-card,
.home-page .property-card,
.home-page .location-card {
    border: 1px solid #dce9e5;
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(16, 42, 42, .06);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.home-page .property-type-card:hover,
.home-page .property-card:hover,
.home-page .location-card:hover {
    border-color: #9acfc3;
    box-shadow: 0 14px 30px rgba(16, 42, 42, .11);
    transform: translateY(-4px);
}

.home-page .property-type-icon,
.home-page .location-card-icon {
    background: #e7f5f0;
}

.home-page .property-card-image {
    background: #e7f5f0;
}

.home-page .property-card-badge {
    background: var(--home-brand);
}

.home-page .property-card-price {
    color: var(--home-brand-dark);
}

.home-page .property-card-button,
.home-page .section-link {
    color: var(--home-brand);
}

.home-page .home-cta-box {
    border-radius: 14px;
    background: var(--home-brand-dark);
}

@media (max-width: 760px) {
    .home-page .home-hero-content {
        padding: 52px 16px 64px;
    }

    .home-page .home-hero-title {
        font-size: 42px;
    }

    .home-page .home-search-card {
        border-radius: 10px;
    }
}
