﻿.container{
    margin-top: -1rem;
    width: 100%;
    height: 100%;
    max-width: none
}

.homePageContainer {
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin: auto;
}

.heroSection {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    background-color: var(--color-bg);
    padding: 128px 32px 128px 32px
}

.numberOfSpots {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1rem;
    background-color: var(--accent-muted);
    border-radius: 9999px;
    color: var(--color-accent);
    font-weight: 500;
    font-size: 0.875rem;
    border: 1px solid var(--accent-border);
    margin-bottom: 32px;
}

    .numberOfSpots svg {
        width: 1rem; 
        height: 1rem; 
        margin-right: 0.5rem; 
        stroke: currentColor; 
    }

.mainTitle {
    text-align: center;
}

    .mainTitle > h1 {
        font-size: 4.5rem;
        font-weight: 700;
        color: var(--foreground, #111); 
        margin-bottom: 1.5rem; 
        animation: slide-up 0.6s ease-out;
    }

    .mainTitle > h1 > span {
        display: block;
        background: none;
        color: #236f4a;
    }

.mainDescription {
    max-width: 48rem;
    margin: 0 auto 3rem auto;
    font-size: 1.25rem;
    line-height: 1.75rem;
    color: #6b7280;
    text-align: center;
}

.mainCallToAction{
    display:flex;
    gap:20px;
}

@media (max-width: 768px) {
    .mainCallToAction {
        flex-direction: column;
        align-items: center; /* optional, keeps buttons centered */
        gap: 12px; /* smaller gap looks nicer vertically */
    }
}

    .exploreButton {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        height: 56px;
        padding: 0 40px;
        font-size: 1.125rem;
        font-weight: 600;
        border-radius: 0.5rem;
        background-color: var(--color-primary);
        color: var(--color-surface);
        box-shadow: 0 10px 15px rgba(0,0,0,0.1);
        border: none;
        transition: all 0.3s ease;
    }

        .exploreButton:hover {
            transform: scale(1.05);
            box-shadow: 0 12px 20px var(--color-primary-dark);
        }

        .exploreButton:active {
            transform: scale(0.95);
        }

    .organisationButton {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        height: 56px; /* h-14 */
        padding: 0 40px; /* px-10 */
        font-size: 1.125rem; /* text-lg */
        font-weight: 500; /* font-medium */
        border-radius: 0.5rem; /* rounded-lg */
        border: 2px solid var(--color-primary); /* border-primary replaced */
        background-color: var(--color-surface); /* bg-surface */
        color: var(--color-primary); /* text-primary replaced */
        box-shadow: 0 4px 6px rgba(0,0,0,0.1); /* shadow-smooth */
        transition: all 0.3s ease;
    }

        .organisationButton:hover {
            background-color: var(--color-primary); /* hover:bg-primary replaced */
            color: var(--color-surface); /* hover:text-primary-foreground replaced */
            transform: scale(1.05);
            box-shadow: 0 8px 15px rgba(0,0,0,0.15); /* hover:shadow-hover */
        }



    .mainStatistics {
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        gap: 20px;
        max-width: 1024px;
        margin-top: 3rem;
        width: 90%;
        align-items: center;
    }

    @media (min-width: 768px) {
        .mainStatistics {
            flex-direction: row;
        }
    }

    .statCard {
        text-align: center;
        padding: 1.5rem;
        background-color: rgba(255,255,255,0.6);
        backdrop-filter: blur(6px);
        border-radius: 1rem;
        border: 1px solid #ddd;
        box-shadow: 0 4px 6px rgba(0,0,0,0.1);
        transition: all 0.3s ease;
        min-width: 191px;
        max-width: 300px;
        width: 100%;
    }

        .statCard:hover {
            box-shadow: 0 8px 12px rgba(0,0,0,0.15);
        }

    .statIcon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        border-radius: .75rem;
        margin-bottom: 1rem;
    }

        .statIcon.mapPin {
            background-color: rgba(36,111,74,0.1); /* primary/10 */
            color: #246f4a;
        }

        .statIcon.users {
            background-color: rgba(100,100,200,0.1); /* secondary/10 */
            color: #6470c8;
        }

        .statIcon.briefcase {
            background-color: rgba(255,165,0,0.1); /* accent/10 */
            color: #ffa500;
        }

    .statNumber {
        font-size: 1.875rem; /* text-3xl */
        font-weight: bold;
        margin-bottom: 0.5rem;
        color: #111;
    }

    .statLabel {
        color: #666;
    }






    .studySpotsSection {
        width: 100%;
        height: 100%;
        padding-left: 2rem;
        padding-right: 2rem;
        display: none;
    }

    .secondaryTitle {
        font-size: 2rem;
        font-weight: 700;
        color: #111;
        margin-bottom: 1rem;
        text-align: center;
        line-height: 1.2;
        padding-top: 4rem;
        margin-bottom: 3rem;
    }

    @media (min-width: 768px) {
        .secondaryTitle {
            font-size: 2.5rem;
        }
    }

    .secondaryDescription {
        font-size: 1.25rem;
        color: #555;
        max-width: 50rem;
        margin: 0 auto;
        line-height: 1.6;
        text-align: center;
        margin-bottom: 2rem;
        max-width: 42rem;
    }

    .bestStudySpots {
        width: 100%;
        background-color: green;
    }