* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    min-height: 100%;
    background: #000000;
}

body {
    font-family: Arial, sans-serif;
    color: #ffffff;
    overflow-x: hidden;
}

.site-header {
    width: 100%;
    height: 88px;

    display: flex;
    justify-content: center;
    align-items: center;

    background: #000000;
    border-bottom: 1px solid #1f1f1f;
}

.site-logo {
    height: 68px;
    width: auto;
    display: block;
}

.landing-main {
    width: 100%;
    max-width: 1400px;

    margin: 0 auto;
    padding: 24px 15px 40px;

    display: flex;
    flex-direction: column;
    align-items: center;

    background: #000000;
}

.banner-area {
    width: 100%;

    display: flex;
    justify-content: center;
    align-items: center;
}

.banner-image {
    width: 100%;
    max-width: 960px;
    height: auto;

    display: block;

    border-radius: 10px;
    box-shadow: 0 18px 45px rgba(255, 200, 80, 0.08);
}

.contact-buttons {
    width: 100%;
    max-width: 960px;

    margin-top: 12px;

    display: flex;
    flex-direction: row;
    gap: 12px;
}

.contact-btn {
    flex: 1;

    height: 58px;

    display: flex;
    justify-content: center;
    align-items: center;

    border-radius: 10px;

    text-decoration: none;
    font-size: 17px;
    font-weight: 700;

    transition: transform 0.2s ease, opacity 0.2s ease;
}

.contact-btn:hover {
    transform: translateY(-2px);
    opacity: 0.95;
}

.telegram-btn {
    order: 1;
    background: #229ED9;
    color: #ffffff;
}

.kakao-btn {
    order: 2;
    background: #FEE500;
    color: #191919;
}

@media (max-width: 768px) {

    html,
    body {
        width: 100%;
        min-height: 100vh;
        background: #000000;
    }

    .site-header {
        height: 74px;
        border-bottom: none;
    }

    .site-logo {
        height: 58px;
    }

    .landing-main {
        width: 100%;
        min-height: calc(100vh - 74px);

        padding: 8px 14px 24px;

        display: flex;
        flex-direction: column;
        align-items: center;

        background: #000000;
    }

    .banner-area {
        width: 100%;
    }

    .banner-image {
        width: 100%;
        max-width: 100%;
        border-radius: 8px;
    }

    .contact-buttons {
        width: 100%;
        max-width: 100%;

        margin-top: 12px;

        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .contact-btn {
        width: 100%;
        height: 42px;

        flex: none;

        font-size: 15px;
        font-weight: 700;
        border-radius: 999px;
    }

    .telegram-btn {
        order: 1;
    }

    .kakao-btn {
        order: 2;
    }
}

@media (max-width: 480px) {

    .site-header {
        height: 70px;
    }

    .site-logo {
        height: 54px;
    }

    .landing-main {
        min-height: calc(100vh - 70px);
        padding: 8px 12px 22px;
    }

    .contact-buttons {
        margin-top: 10px;
        gap: 9px;
    }

    .contact-btn {
        height: 40px;
        font-size: 14px;
    }
}