/* Bootstrap CSS est importé via app.js */

body {
    background-color: white;
}
.partners img { object-fit: contain; }

/* Header tweaks over Bootstrap */
header .btn { font-weight: 700; }

/* Spacing helpers */
.section-title { margin-bottom: 1rem; }

/* Item cards marketplace style */
.card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15) !important;
}

.card-img-top {
    background-color: #f8f9fa;
}

/* Home logo sizing */
.home-logo {
    width: 100%;
    max-width: 500px;
    height: auto;
}


/* Responsive layout helpers */
.container {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 16px;
}

/* Header */
.site-header {
    position: sticky;
    top: 0;
    background: #0b0b0c;
    color: #fff;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    z-index: 10;
}
.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 64px;
}
.brand { display: flex; align-items: center; gap: 10px; }
.logo-circle {
    width: 36px; height: 36px; border-radius: 50%;
    display: grid; place-items: center;
    background: linear-gradient(135deg, #00e1ff, #6b5bd5);
    color: #0b0b0c; font-weight: 800;
}
.brand-name { font-weight: 600; letter-spacing: 0.2px; }
.nav { display: flex; gap: 18px; align-items: center; }
.nav a { color: #ddd; text-decoration: none; font-size: 14px; }
.nav a:hover { color: #fff; }
.nav-toggle { display: none; background: none; border: 0; color: #fff; font-size: 22px; }

/* Buttons */
.btn { display: inline-block; padding: 10px 16px; border-radius: 10px; text-decoration: none; font-weight: 600; }
.btn-primary { background: #6b5bd5; color: #fff; }
.btn-primary:hover { background: #5849c0; }
.btn-secondary { background: #1f1f22; color: #fff; }
.btn-secondary:hover { background: #2a2a2f; }

/* Hero */
.hero { background: radial-gradient(80% 100% at 50% 0%, #121216, #0b0b0c); color: #e9e9ee; padding: 64px 0; }
.hero-inner { display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; align-items: center; }
.hero-copy h1 { font-size: 40px; line-height: 1.1; margin: 0 0 12px; }
.hero-copy p { color: #b7b7c2; margin: 0 0 20px; }
.cta-group { display: flex; gap: 12px; flex-wrap: wrap; }
.hero-visual .visual-card {
    background: #12121a; border: 1px solid #23232b; border-radius: 16px; padding: 16px;
    box-shadow: 0 6px 24px rgba(0,0,0,0.3);
}
.visual-title { font-size: 14px; color: #b5b5c0; margin-bottom: 8px; }
.visual-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.visual-list li { display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 10px; background: #0f0f14; border: 1px solid #1f1f28; }
.dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
.dot-green { background: #19d47f; }
.dot-amber { background: #ffb020; }
.dot-red { background: #ff5d5d; }

/* Features */
.features { background: #0f0f12; color: #ddd; padding: 56px 0; border-top: 1px solid #17171c; border-bottom: 1px solid #17171c; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.feature { background: #12121a; border: 1px solid #23232b; border-radius: 14px; padding: 20px; }
.icon-circle { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: #1b1b22; margin-bottom: 10px; }
.feature h3 { margin: 6px 0 6px; }
.feature p { margin: 0; color: #b8b8c3; }

/* How */
.how { background: #0b0b0c; color: #ddd; padding: 56px 0; }
.two-col { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 24px; align-items: start; }
.how-card { background: #12121a; border: 1px solid #23232b; border-radius: 14px; padding: 16px; }
.how-line { display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 10px; background: #0f0f14; border: 1px solid #1f1f28; margin-bottom: 10px; }
.step { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: #6b5bd5; color: #fff; font-size: 12px; }

/* Contact */
.contact { background: linear-gradient(180deg, #0b0b0c, #0f0f14); color: #eee; padding: 64px 0; text-align: center; }
.contact-inner { display: grid; gap: 12px; }

/* Footer */
.site-footer { background: #0b0b0c; color: #9b9ba7; padding: 20px 0; }
.footer-inner { display: flex; justify-content: space-between; align-items: center; }
.site-footer a { color: #bfbfd0; text-decoration: none; }
.site-footer a:hover { color: #fff; }

/* Login logo responsive */
.login-logo {
    max-width: 560px !important;
}

@media (max-width: 768px) {
    .login-logo {
        max-width: 100% !important;
        padding: 0 1rem;
    }
}

@media (max-width: 576px) {
    .login-logo {
        max-width: 100% !important;
        padding: 0 1.5rem;
    }
}

/* Responsive */
@media (max-width: 900px) {
    .hero-inner { grid-template-columns: 1fr; }
    .two-col { grid-template-columns: 1fr; }
    .grid-3 { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
    .nav { display: none; }
    .nav-toggle { display: inline-block; }
    .hero-copy h1 { font-size: 32px; }
    .footer-inner { flex-direction: column; gap: 10px; }
}
