*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    height: 100%;
}

.kontakt-page {
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    background-color: white;
    overflow: hidden;
}

.kontakt-back-arrow {
    position: fixed;
    top: 2rem;
    left: 2rem;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    background-color: rgba(26, 108, 54, 0.1);
    border-radius: 50%;
    transition: background-color 0.2s ease;
}

.kontakt-back-arrow:hover {
    background-color: rgba(26, 108, 54, 0.2);
}

/* Desktop title */
.kontakt-title-desktop {
    font-family: 'Inter';
    font-weight: 600;
    font-size: 3rem;
    color: #1A6C36;
    margin-bottom: 3rem;
}

/* Shared info styles */
.kontakt-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
}

.kontakt-item {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.kontakt-item img {
    width: 2.5rem;
    height: 2.5rem;
}

.kontakt-item span {
    font-family: 'Inter';
    font-weight: 400;
    font-size: 1.5rem;
    color: #322F2F;
}

/* Desktop flower - bottom left corner */
.kontakt-blomma {
    position: absolute;
    bottom: 0;
    left: 0;
    width: auto;
    height: 80%;
    max-height: 600px;
    transform: translate(-50%, 50%);
    object-fit: contain;
}

/* Desktop logo - bottom right */
.kontakt-logo-desktop {
    position: absolute;
    bottom: 2rem;
    right: 2rem;
    width: auto;
    height: 80px;
}

/* Hide mobile elements on desktop */
.kontakt-mobile-center {
    display: none;
}

.kontakt-image-desktop {
    position: absolute;
    bottom: 0;
    left: 0;
    object-fit: contain;
    transform: translateX(-25%);
}

/* ========================================
   MOBILE STYLES
   ======================================== */

@media (max-width: 768px) {
    /* Hide desktop elements */
    .kontakt-title-desktop,
    .kontakt-info-desktop,
    .kontakt-blomma,
    .kontakt-logo-desktop,
    .kontakt-image-desktop {
        display: none;
    }

    /* Show mobile layout */
    .kontakt-mobile-center {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100vh;
    }

    .kontakt-splash-container {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }

    .kontakt-mobile-content {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
    }

    /* Blomma image - centered on device, overflows horizontally */
    .kontakt-image {
        width: 180%;
        max-width: none;
        height: auto;
    }

    /* Splash - centered in the middle of blomma-image */
    .kontakt-splash {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 340px;
        height: auto;
        z-index: 10;
    }

    /* Content container - centered on top of splash */
    .kontakt-content-container {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        z-index: 20;
    }

    .kontakt-logo-mobile {
        width: 120px;
        height: auto;
    }

    .kontakt-info-mobile {
        align-items: center;
        gap: 1rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
    }

    .kontakt-info-mobile .kontakt-item {
        gap: 0.75rem;
    }

    .kontakt-info-mobile .kontakt-item img {
        width: 1.75rem;
        height: 1.75rem;
    }

    .kontakt-info-mobile .kontakt-item span {
        font-size: 1rem;
    }

    .kontakt-back-arrow {
        top: 1rem;
        left: 1rem;
        width: 2.5rem;
        height: 2.5rem;
    }
}
