@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&display=swap');

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    min-height: 100vh;

    font-family: 'Quicksand', Arial, sans-serif;
    color: #5b4268;

    background:
        radial-gradient(
            circle at 10% 20%,
            rgba(255, 182, 218, 0.35) 0 45px,
            transparent 46px
        ),
        radial-gradient(
            circle at 90% 15%,
            rgba(205, 184, 255, 0.35) 0 55px,
            transparent 56px
        ),
        radial-gradient(
            circle at 80% 80%,
            rgba(255, 213, 235, 0.4) 0 40px,
            transparent 41px
        ),
        #fff8fc;
}

header {
    text-align: center;

    padding: 80px 20px 65px;

    background: linear-gradient(
        135deg,
        #ffd9eb,
        #f8d9ef,
        #e7dcff
    );

    border-bottom-left-radius: 50% 35px;
    border-bottom-right-radius: 50% 35px;

    box-shadow:
        0 8px 25px rgba(190, 130, 180, 0.15);
}

h1 {
    margin: 0;

    color: #d6539c;

    font-size: clamp(34px, 7vw, 52px);
    font-weight: 700;

    text-shadow:
        2px 3px 0 rgba(255, 255, 255, 0.7);
}

.header-heart {
    display: inline-block;

    margin: 0 15px;

    color: #ff4f9a;

    font-size: 0.8em;

    text-shadow:
        2px 3px 0 rgba(255, 255, 255, 0.7);
}

main {
    width: min(900px, 92%);

    margin: 50px auto;
    padding: 55px 35px;

    text-align: center;

    background: rgba(255, 255, 255, 0.9);

    border: 2px solid rgba(255, 190, 220, 0.5);
    border-radius: 30px;

    box-shadow:
        0 12px 35px rgba(190, 130, 180, 0.12);

    backdrop-filter: blur(8px);
}

h2 {
    margin: 0 0 55px;

    color: #c65398;

    font-size: 32px;
    font-weight: 700;
}

.social-links {
    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 60px;
}

.social-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    text-decoration: none !important;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.social-icon:link,
.social-icon:visited,
.social-icon:hover,
.social-icon:active {
    text-decoration: none !important;
}

/* My.Club */

.myclub {
    background: #000000;

    box-shadow:
        0 6px 14px rgba(150, 100, 150, 0.22);

    overflow: hidden;
}

.myclub img {
    width: 50px;
    height: auto;

    object-fit: contain;

    display: block;
}

/* X */

.x-logo {
    background: #000000;
    color: #ffffff;

    box-shadow:
        0 6px 14px rgba(0, 0, 0, 0.25);
}

.x-logo i {
    color: #ffffff !important;

    font-size: 49px;
    line-height: 1;

    display: block;
}

/* Instagram */

.instagram {
    background:
        linear-gradient(
            45deg,
            #feda75 0%,
            #fa7e1e 25%,
            #d62976 50%,
            #962fbf 75%,
            #4f5bd5 100%
        );

    color: #ffffff;

    box-shadow:
        0 6px 14px rgba(214, 41, 118, 0.28);
}

.instagram i {
    color: #ffffff !important;

    font-size: 49px;
    line-height: 1;

    display: block;
}

/* Hover */

.social-icon:hover {
    transform: scale(1.08);

    box-shadow:
        0 12px 24px rgba(150, 90, 160, 0.32);
}

.social-icon:active {
    transform: scale(1.02);
}

/* Footer */

footer {
    text-align: center;

    padding: 25px 20px 40px;

    color: #9b789f;

    font-size: 14px;
}

/* Mobile */

@media (max-width: 700px) {

    header {
        padding: 60px 20px 50px;
    }

    h1 {
        font-size: 36px;
    }

    .header-heart {
        margin: 0 8px;
        font-size: 0.75em;
    }

    main {
        width: 94%;

        margin: 30px auto;
        padding: 40px 20px;

        border-radius: 25px;
    }

    h2 {
        font-size: 28px;
        margin-bottom: 40px;
    }

    .social-links {
        gap: 35px;
    }

    .social-icon {
        width: 45px;
        height: 45px;

        border-radius: 11px;
    }

    .myclub img {
        width: 39px;
        height: auto;
    }

    .x-logo i,
    .instagram i {
        font-size: 38px;
    }
}