/*
Theme Name: Enfold Child - Tropically Impaired Music
*/

/* =========================
   BASE
========================= */
body {
    font-family: Arial, sans-serif;
}

/* =========================
   TROPICAL BACKGROUND
========================= */
body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -999;

    background: linear-gradient(135deg,
        #ff9a76,
        #ffd28a,
        #ffe8a3,
        #6fd3ff,
        #3a8fd8
    );

    background-size: 400% 400%;
    animation: tropicalShift 25s ease infinite;
}

@keyframes tropicalShift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* REMOVE ENFOLD BACKGROUNDS */
#top,
#wrap_all,
#main,
.container_wrap,
section {
    background: transparent !important;
}

/* =========================
   HERO (ENLARGED + BALANCED)
========================= */
.tropical-full-hero {
    text-align: center;
    padding: 20px 0;
}

.tropical-full-hero img {
    width: 100%;
    max-width: 800px;
    border-radius: 12px;
}

.tropical-hero {
    text-align: center;
    color: #0b2a4a; /* navy blue */
    padding: 30px 20px;
}

.tropical-hero h1 {
    font-size: 64px;
    line-height: 1.1;
    margin-bottom: 15px;
}

.tropical-hero p {
    font-size: 20px;
    line-height: 1.7;
    max-width: 800px;
    margin: 0 auto;
}

/* =========================
   PLAYER CARD
========================= */
.tropical-player {
    max-width: 600px;
    margin: 60px auto;
    background: #fff;
    border-radius: 20px;
    padding: 30px;
    text-align: center;
}

/* GRID */
.tropical-player-grid {
    display: flex;
    align-items: center;
    gap: 20px;
}

/* ART */
.tropical-player-art {
    flex: 0 0 240px;
}

.tropical-player-art img {
    width: 100%;
    border-radius: 14px;
}

/* INFO */
.tropical-player-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* AUDIO */
.tropical-player-info audio {
    width: 100%;
    max-width: 260px;
    margin: 15px auto;
}

/* =========================
   BUTTON SYSTEM
========================= */
.tropical-btn,
.tropical-newsletter-form button,
.tropical-newsletter-form input[type="submit"] {
    border-radius: 30px !important;
    padding: 14px 26px !important;
    display: inline-block !important;
    text-decoration: none !important;
    border: none !important;
    cursor: pointer !important;
    color: #fff !important;
    font-weight: 600 !important;
    transition: all 0.25s ease !important;
}

/* ORANGE BUTTON */
.tropical-btn {
    margin-top: 10px;
    background: linear-gradient(45deg, #ff914d, #ff6a00) !important;
}

.tropical-btn:hover {
    transform: translateY(-3px) scale(1.03);
}

/* BLUE BUTTON */
.tropical-newsletter-form button,
.tropical-newsletter-form input[type="submit"] {
    background: linear-gradient(45deg, #2f80ff, #0057ff) !important;
}

.tropical-newsletter-form button:hover,
.tropical-newsletter-form input[type="submit"]:hover {
    transform: translateY(-3px) scale(1.03);
}

/* =========================
   NEWSLETTER CARD
========================= */
.tropical-newsletter-box {
    max-width: 600px;
    margin: 60px auto;
    background: #fff;
    padding: 40px;
    border-radius: 20px;
    text-align: center;
}

.tropical-newsletter-form input {
    padding: 14px;
    border-radius: 30px;
    border: 1px solid #ddd;
    width: 260px;
    margin: 10px 5px;
}

/* =========================
   MOBILE (FIXED SPACING)
========================= */
@media (max-width: 768px) {

    body {
        padding-left: 16px;
        padding-right: 16px;
    }

    .tropical-hero h1 {
        font-size: 40px;
    }

    .tropical-hero p {
        font-size: 18px;
    }

    .tropical-player,
    .tropical-newsletter-box {
        margin: 30px auto;
        padding: 22px;
        width: 100%;
        max-width: 100%;
    }

    .tropical-player-grid {
        flex-direction: column;
    }

    .tropical-player-art {
        width: 200px;
    }

    .tropical-full-hero img {
        max-width: 92%;
    }

    .tropical-player-info audio {
        max-width: 240px;
    }

    .tropical-newsletter-form input {
        width: 100%;
        max-width: 320px;
    }
}

/* =========================
   SOCKET
========================= */
#socket,
#socket p,
#socket a,
#socket span {
    font-size: 16px !important;
    line-height: 1.6;
}