/* 全局重置 */
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; background: #fafafa; color: #333; line-height: 1.6; }
.container { max-width: 1280px; margin: 0 auto; padding: 0 20px; }
a { text-decoration: none; }
img { max-width: 100%; height: auto; }

/* 响应式调整 */
@media (max-width: 768px) {
    #courtyard-grid { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important; }
    .filter-bar { flex-direction: column; align-items: stretch !important; }
    .filter-bar select, .filter-bar input, .filter-bar button { width: 100% !important; }
    .hero-section h1 { font-size: 2em !important; }
}

/* 卡片悬浮效果 */
.courtyard-card:hover { transform: translateY(-6px); box-shadow: 0 12px 35px rgba(0,0,0,0.12); border-color: #a5d6a7; }

/* 加载动画 */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
.courtyard-card { animation: fadeInUp 0.4s ease-out; }