
/* Hero */
.heroic { background: linear-gradient(135deg, #ff9900, #ff6600); color: #fff; text-align: center; padding: 4rem 1rem; }
.heroic h1 { font-size: 2.5rem; margin-bottom: 1rem; }

/* Section */
.section { max-width: 1200px; margin: auto; padding: 3rem 1rem; }
.grid { display: grid; grid-template-columns: 2fr 1fr; gap: 2rem; }
@media(max-width: 900px) { .grid { grid-template-columns: 1fr; } }

/* Card */
.card { background: #fff; border-radius: 12px; padding: 2rem; box-shadow: 0 4px 10px rgba(0,0,0,0.08); margin-bottom: 1.5rem; }
.card h2 { margin-bottom: 1rem; }

/* Form */
.form-group { margin-bottom: 1rem; }
.form-group label { display: block; margin-bottom: 0.3rem; font-weight: 500; }
.form-group input, .form-group textarea, .form-group select {
  width: 100%; padding: 0.75rem; border: 1px solid #ccc; border-radius: 8px;
}
textarea { min-height: 120px; }

/* Button */
.btn {
  background: #ff9900; color: #fff; border: none; padding: 0.8rem 1.5rem;
  border-radius: 8px; font-weight: bold; cursor: pointer;
  transition: background 0.3s;
}
.btn:hover { background: #e68a00; }

/* Info Items */
.info-item { margin: 0.8rem 0; display: flex; align-items: center; gap: 0.5rem; font-size: 1rem; }
.text-orange { color: #ff9900; }
.text-blue { color: #007bff; }
.text-green { color: #28a745; }
.text-purple { color: #6f42c1; }

/* Social Links */
.social-links { display: flex; gap: 1rem; margin-top: 1rem; }
.social-links a { font-size: 1.5rem; color: #fff; background: #333; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 8px; text-decoration: none; }
.social-links a:hover { opacity: 0.8; }

/* Map */
.map-placeholder { background: #f0f0f0; padding: 2rem; text-align: center; border-radius: 8px; }
.map-placeholder i { font-size: 2rem; color: #ff9900; display: block; margin-bottom: 0.5rem; }

/* Footer */
.footer { background: #222; color: #aaa; text-align: center; padding: 1.5rem; }

/* Sidebar Styles for Mobile */
.nav-links {
    display: flex;
    list-style: none;
    gap: 2rem;
    align-items: center;
}

/* Mobile - Sidebar */
@media (max-width: 768px) {
    .nav-links {
        position: fixed;
        top: 0;
        right: -100%;
        height: 100vh;
        width: 250px;
        background: var(--white);
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 4rem 2rem;
        gap: 1.5rem;
        box-shadow: -2px 0 10px rgba(0,0,0,0.15);
        transition: right 0.3s ease;
        z-index: 999;
    }

    .nav-links.show {
        right: 0;
    }

    .mobile-menu-btn {
        display: block;
        font-size: 2rem;
        z-index: 1000;
    }

    .nav-cta {
        flex-direction: column;
        width: 100%;
        gap: 0.5rem;
    }

    .nav-cta .btn {
        width: 100%;
        text-align: center;
    }
}
