﻿/* Layout background & overlay */
.home-layout-bg {
    background: url('/images/hero-bg.jpg') center/cover fixed no-repeat, #222;
    color: #f8f9fa;
    min-height: 100vh;
}

.home-layout-overlay {
    backdrop-filter: none; /* adjust if you want a global blur */
}

/* HERO */
.hero-section {
    background: radial-gradient(1200px 600px at 10% -10%, #1b6ef3 0%, transparent 60%), radial-gradient(900px 450px at 110% 10%, #6f42c1 0%, transparent 60%), linear-gradient(180deg, #0e0f12 0%, #0b0c10 100%);
    color: #fff;
}

    .hero-section .card,
    .hero-section .form-control,
    .hero-section .btn {
        border-radius: .75rem;
    }

/* HOW IT WORKS */
#how-it-works {
    background: #f7f8fb;
    color: #111;
    border-top: 1px solid rgba(0,0,0,.06);
    border-bottom: 1px solid rgba(0,0,0,.06);
}

    #how-it-works h2, #how-it-works h5 {
        color: #111;
    }

    #how-it-works p {
        color: #2a2f36;
    }

/* FEATURES */
#features {
    background: #ffffff !important;
}

    #features h2, #features h5, #features p, #features li,
    #features .col-md-4, #features .text-center,
    #features i, #features .bi {
        color: #111 !important;
    }

    #features a {
        color: var(--bs-primary) !important;
    }

/* PRICING separator (optional) */
/* #pricing { border-top: 1px solid rgba(0,0,0,.06); } */

/* Auth card look */
.auth-card {
    max-width: 480px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 1rem;
    backdrop-filter: saturate(140%) blur(6px);
}

/* Small UI polish */
.btn-toggle {
    background: var(--bs-gray-200);
    color: var(--bs-gray-800);
}

    .btn-toggle.active {
        background: var(--bs-primary);
        color: #fff;
    }

.input-group > .btn {
    border-top-right-radius: .5rem;
    border-bottom-right-radius: .5rem;
}

/* Ensure labels are visible in the white card */
.form-label {
    color: #212529;
    font-weight: 500;
}

/* Elliptical image */
.ellipse-clip {
    width: min(720px, 100%);
    aspect-ratio: 16 / 14;
    clip-path: ellipse(50% 38% at 50% 50%);
    overflow: hidden;
    border-radius: 24px;
    box-shadow: 0 12px 40px rgba(0,0,0,.35);
    background: #000;
}

    .ellipse-clip img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: 50% 0%;
        transform: scale(1.03);
        display: block;
    }

/* Feedback banner */
.feedback-banner {
    color: #fff;
    background: linear-gradient(135deg, rgba(27,110,243,.95), rgba(111,66,193,.95));
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
    box-shadow: 0 12px 30px rgba(0,0,0,.25);
    transition: transform .2s ease, box-shadow .2s ease;
}

    .feedback-banner:hover {
        transform: translateY(-2px);
        box-shadow: 0 16px 40px rgba(0,0,0,.28);
    }

    .feedback-banner i {
        font-size: 2rem;
        line-height: 1;
        opacity: .95;
    }

    .feedback-banner .btn {
        box-shadow: 0 6px 18px rgba(0,0,0,.2);
        white-space: nowrap;
    }


/* Section background + spacing */
.who-its-for-section {
    position: relative;
    padding-top: 4rem; /* py-6 equivalent */
    padding-bottom: 4rem;
    background: radial-gradient(1200px 600px at 10% -10%, rgba(56, 189, 248, 0.25), transparent 60%), radial-gradient(1200px 600px at 90% 110%, rgba(99, 102, 241, 0.25), transparent 60%), linear-gradient(180deg, #0b1220 0%, #0b1324 100%);
    overflow: hidden;
}

    /* Subtle grid glow */
    .who-its-for-section::before {
        content: "";
        position: absolute;
        inset: 0;
        background-image: linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
        background-size: 24px 24px, 24px 24px;
        mask-image: radial-gradient(800px 400px at 50% 0%, black 60%, transparent 100%);
        pointer-events: none;
    }

/* Cards (glassmorphism) */
.who-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.04));
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 1rem;
    padding: 1.25rem;
    color: #fff;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.25);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

    .who-card i {
        font-size: 2rem; /* ~display-6 */
        line-height: 1;
        margin-bottom: .5rem;
        opacity: .95;
    }

.who-title {
    font-weight: 700;
    margin-top: .25rem;
    margin-bottom: .125rem;
    font-size: 1rem;
}

.who-sub {
    font-size: .85rem;
    color: rgba(255,255,255,0.65);
}

/* Hover/Focus interactions */
.who-card:hover,
.who-card:focus-within {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.35);
    border-color: rgba(99,102,241,0.6);
}

/* Badge contrast tweak on dark bg (Bootstrap 5.3 utilities used in markup) */
.bg-primary-subtle {
    background-color: rgba(99, 102, 241, 0.15) !important;
}

.text-primary-emphasis {
    color: #c7c9ff !important;
}

/* Utilities if je project geen py-6 heeft */
.py-6 {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
}

/* Responsive spacing fine-tunes */
@media (min-width: 992px) {
    .who-card {
        padding: 1.5rem;
    }
}
