/* ===================== HERO SECTION ===================== */

section.section-intro {
    position: relative;

    .intro-img {
        padding: 50px;
        height: 750px;

        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 16px;
        }
    }

    .intro-content {
        padding: 50px 125px 50px 50px;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        display: flex;
        flex-direction: row;
        justify-content: right;
        align-items: center;
        height: 750px;

        .intro-tekst {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 7px;

            .intro-tekst-content {
                font-family: Montserrat, serif, sans-serif;
                color: white;
                text-align: right;
                padding-right: 10px;

                h1 {
                    font-weight: 400;
                    letter-spacing: 1px;
                    font-size: 6rem;
                    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.45);
                }

                p {
                    font-weight: 200;
                    margin-right: 5px;
                    text-shadow: 0 1px 10px rgba(0, 0, 0, 0.4);
                }
            }

            .intro-line {
                margin-top: 10px;
                height: 150px;
                width: 3px;
                border-radius: 2px;
                background-color: white;
            }
        }
    }
}

/* ===================== VORES TILGANG ===================== */

section.about-us {
    margin-top: 200px;
    margin-bottom: 200px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    font-family: Montserrat, sans-serif;

    .about-us-header {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 5px;
        margin-bottom: 75px;

        h1 {
            font-weight: 500;
            text-transform: uppercase;
        }

        p {
            font-weight: 300;
            max-width: 600px;
            text-align: center;
            margin-bottom: -7px;
            color: rgba(0, 0, 0, 0.62);
        }
    }

    .about-us-wrapper {
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: center;

        .about-us-img {
            display: flex;
            justify-content: right;
            width: 30%;

            img {
                object-fit: cover;
                height: 500px;
                width: 100%;
                border-radius: 12px 0 0 12px;
            }
        }

        .about-us-tekst {
            display: flex;
            flex-direction: column;
            justify-content: center;
            width: 30%;
            background-color: rgba(220, 220, 220, 0.11);
            border-radius: 0 12px 12px 0;
            padding: 40px 35px;

            .about-us-description {
                margin-bottom: 30px;

                p {
                    font-family: Inter, sans-serif;
                    font-weight: 300;
                    font-size: 0.95rem;
                    line-height: 1.7;
                    color: rgba(0, 0, 0, 0.65);
                }
            }

            .about-us-icons {
                display: flex;
                flex-direction: column;
                gap: 25px;

                .about-us-item {
                    display: flex;
                    flex-direction: row;
                    gap: 15px;

                    .about-us-icon {
                        height: 50px;
                        width: 50px;
                        min-width: 50px;
                        background-color: rgba(0, 0, 0, 0.82);
                        display: flex;
                        justify-content: center;
                        align-items: center;
                        border-radius: 50%;
                        color: white;
                        font-size: 1.1rem;
                    }

                    .about-us-icon-tekst {
                        font-family: Inter, sans-serif;
                        display: flex;
                        flex-direction: column;
                        justify-content: center;
                        gap: 3px;

                        h3 {
                            font-weight: 500;
                            font-size: 0.95rem;
                            letter-spacing: 0.3px;
                        }

                        p {
                            font-weight: 300;
                            font-size: 0.85rem;
                            color: rgba(0, 0, 0, 0.55);
                            line-height: 1.5;
                        }
                    }
                }
            }
        }
    }
}

/* ===================== FEATURED SHOWCASE ===================== */

section.featured-section {
    margin-bottom: 200px;
    padding: 0 80px;
    font-family: Montserrat, sans-serif;

    .featured-header {
        text-align: center;
        margin-bottom: 60px;

        p {
            font-weight: 300;
            color: rgba(0, 0, 0, 0.5);
            margin-bottom: 8px;
            letter-spacing: 0.5px;
        }

        h2 {
            font-weight: 500;
            font-size: 2rem;
            text-transform: uppercase;
        }
    }

    .featured-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;

        .featured-card {
            position: relative;
            border-radius: 14px;
            overflow: hidden;
            height: 450px;
            display: block;
            cursor: pointer;

            .featured-card-img {
                width: 100%;
                height: 100%;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                    transition: transform 0.5s ease;
                }
            }

            .featured-card-overlay {
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                padding: 35px;
                background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
                color: white;
                display: flex;
                flex-direction: column;
                justify-content: flex-end;

                .featured-tag {
                    font-size: 0.75rem;
                    font-weight: 400;
                    letter-spacing: 1.5px;
                    text-transform: uppercase;
                    opacity: 0.7;
                    margin-bottom: 8px;
                }

                h3 {
                    font-weight: 500;
                    font-size: 1.5rem;
                    margin-bottom: 8px;
                    letter-spacing: 0.3px;
                }

                p {
                    font-family: Inter, sans-serif;
                    font-weight: 300;
                    font-size: 0.9rem;
                    line-height: 1.6;
                    opacity: 0.75;
                    max-width: 400px;
                }
            }

            &:hover .featured-card-img img {
                transform: scale(1.04);
            }
        }
    }

    .featured-link {
        text-align: center;
        margin-top: 45px;

        a {
            font-family: Inter, sans-serif;
            font-weight: 400;
            font-size: 0.95rem;
            letter-spacing: 0.5px;
            color: rgba(0, 0, 0, 0.6);
            transition: color 0.3s ease;
            display: inline-flex;
            align-items: center;
            gap: 8px;

            i {
                font-size: 0.85rem;
                transition: transform 0.3s ease;
            }

            &:hover {
                color: #111;

                i {
                    transform: translateX(4px);
                }
            }
        }
    }
}

/* ===================== RESPONSIVE ===================== */

@media (max-width: 1024px) {
    section.section-intro {
        .intro-img {
            padding: 30px;
            height: 600px;
        }

        .intro-content {
            padding: 30px;
            height: 600px;

            .intro-tekst .intro-tekst-content h1 {
                font-size: 4.5rem;
            }
        }
    }

    section.featured-section {
        margin-bottom: 120px;
        padding: 0 40px;

        .featured-grid {
            gap: 20px;

            .featured-card {
                height: 380px;
            }
        }
    }

    section.about-us {
        margin-top: 120px;
        margin-bottom: 120px;

        .about-us-wrapper {
            .about-us-img {
                width: 35%;
            }

            .about-us-tekst {
                width: 35%;
            }
        }
    }
}

@media (max-width: 768px) {
    section.section-intro {
        .intro-img {
            padding: 15px;
            height: 500px;
        }

        .intro-content {
            padding: 30px;
            height: 500px;
            flex-direction: column;
            justify-content: center;
            gap: 40px;

            .intro-tekst {
                .intro-line {
                    height: 100px;
                }

                .intro-tekst-content h1 {
                    font-size: 3.5rem;
                }
            }

            .intro-wedo-content {
                flex-direction: row;
                gap: 20px;

                .wedo-item {
                    flex-direction: column;
                    align-items: center;

                    .wedo-icon {
                        height: 45px;
                        width: 45px;
                        font-size: 1.2rem;
                    }

                    .wedo-tekst p {
                        font-size: 0.85rem;
                    }
                }
            }
        }
    }

    section.featured-section {
        margin-bottom: 80px;
        padding: 0 20px;

        .featured-header {
            margin-bottom: 35px;

            h2 {
                font-size: 1.6rem;
            }
        }

        .featured-grid {
            grid-template-columns: 1fr;
            gap: 20px;

            .featured-card {
                height: 320px;

                .featured-card-overlay {
                    padding: 25px;

                    h3 {
                        font-size: 1.2rem;
                    }

                    p {
                        font-size: 0.85rem;
                    }
                }
            }
        }
    }

    section.about-us {
        margin-top: 80px;
        margin-bottom: 80px;

        .about-us-header {
            margin-bottom: 40px;
            padding: 0 20px;

            p {
                width: auto;
            }

            h1 {
                font-size: 1.4rem;
            }
        }

        .about-us-wrapper {
            flex-direction: column;
            align-items: center;
            padding: 0 20px;

            .about-us-img {
                width: 100%;

                img {
                    height: 300px;
                    border-radius: 12px 12px 0 0;
                }
            }

            .about-us-tekst {
                width: 100%;
                border-radius: 0 0 12px 12px;
                padding: 30px 25px;
            }
        }
    }
}

@media (max-width: 480px) {
    section.section-intro {
        .intro-img {
            height: 400px;
        }

        .intro-content {
            height: 400px;
            padding: 20px;
            gap: 25px;

            .intro-tekst .intro-tekst-content {
                h1 {
                    font-size: 2.5rem;
                }

                p {
                    font-size: 0.85rem;
                }
            }

            .intro-tekst .intro-line {
                height: 70px;
            }

            .intro-wedo-content {
                gap: 12px;
            }
        }
    }
}
