* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: sans-serif;
}

.btn-container {
    height: 100vh;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2em;
}

/* SUBSCRIBE BUTTON */
.subscribe-button {
    width: 10rem;
    padding: 1.25em 0;

    background-color: rgb(210, 44, 44); /* red background */
    color: white; /* white text */

    letter-spacing: 1px;
    font-weight: bold;

    border: none; /* no border */
    outline: none; /* no outline which have focus */
    border-radius: 40px; /* slightly rounded corners */

    cursor: pointer; /* pointer cursor on hover */
    transition:
        /* smooth fade effect on hover/active */
        background-color 0.25s,
        font-weight 0.25s,
        opacity 0.25s;
}

.is-subscribed {
    background-color: #262626;
    font-weight: bold;
    transition: text 0.25s;
}

.subscribe-button:hover {
    opacity: 0.85; /* slightly transparent on hover */
}

.subscribe-button:active {
    opacity: 0.75; /* more transparent when clicked */
}

/* ---------------------------------------------- */

/* JOIN BUTTON */
.join-button {
    /* Adding Padding instead of using height and width */
    padding: 1.25em 2.125em;

    background-color: white; /* white background */
    color: rgb(41, 118, 220); /* blue text */
    letter-spacing: 1px;
    border-color: rgb(41, 118, 220); /* blue border */
    border-style: solid;
    border-width: 1px;
    border-radius: 4px;
    outline: none; /* no outline which have focus */
    cursor: pointer;
    transition:
        background-color 0.375s,
        color 0.375s; /* smooth bg and text color transition */
}

.join-button:hover {
    background-color: rgb(6, 95, 212); /* bg turns blue on hover */
    color: white; /* text turns white */
}

.join-button:active {
    opacity: 0.5; /* transparency effect on click */
}

/* ---------------------------------------------- */

/* TWEET BUTTON */
.tweet-button {
    /* Adding Padding instead of using height and width */
    padding: 1.25em 2.125em;

    background-color: rgb(2, 155, 255); /* Twitter blue */
    color: white;
    letter-spacing: 1px;
    font-size: 15px;
    font-weight: bold; /* bold text */
    border: none;
    outline: none; /* no outline which have focus */
    border-radius: 9999px; /* The Pill Logic */
    cursor: pointer;

    transition: box-shadow 0.375s ease-in-out; /* smooth shadow on hover */
}

.tweet-button:hover {
    box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.15); /* subtle shadow effect */
}
