* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --dark-bg: #000000;
    --text-light: #ffffff;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: var(--dark-bg);
    color: var(--text-light);
    line-height: 1.6;
    overflow-x: hidden;
}

.divider {
    margin: 15% auto;
    width: 90%;
    max-width: 1200px;
    text-align: center;

    h2 {
        font-size: clamp(1.5rem, 4vw + 1rem, 3rem);
    }

    img.icon {
        width: clamp(40px, 6vw, 80px);
    }

    h3 {
        font-size: clamp(1.75rem, 4vw + 0.5rem, 3rem);
        font-weight: bold;
    }

    p {
        font-size: clamp(1.25rem, 3vw + 0.5rem, 2.5rem);
    }
}

.hero-divider {
    h2 {
        font-size: clamp(1rem, 4vw + 1rem, 3rem);
    }
}

.separator {
    img {
        object-fit: cover;
        object-position: right;
        height: clamp(80px, 15vw, 150px);
        width: 100%;
    }
}

.contact {
    font-size: clamp(1.2rem, 3vw + 0.5rem, 2rem);
    width: 90%;
    max-width: 1200px;
    margin: auto;
    text-align: left;

    img.icon {
        width: clamp(30px, 4.8vw, 60px);
    }

    .inline {
        display: flex;
        align-items: center;
        gap: clamp(10px, 2vw, 20px);
        line-height: normal;
        flex-wrap: wrap;
        word-break: break-word;
    }

    .divider {
        h3 {
            font-size: clamp(1.5rem, 4vw + 1rem, 3rem);
        }
    }

    .h1 {
        font-size: clamp(1rem, 2.5vw + 0.5rem, 2rem);
    }

    .h2 {
        font-size: clamp(0.75rem, 2vw + 0.5rem, 1.5rem);
    }

    h3 {
        color: #CD612E;
    }
}

footer {
    margin-bottom: 10%;
}