body{
    font-family:'Patrick Hand', cursive;

    background:
    repeating-linear-gradient(
        90deg,
        #e7edf8 0px,
        #e7edf8 60px,
        #d8e4f5 60px,
        #d8e4f5 120px
    );

    margin:0;
    padding:20px;

    color:#333;
}

/* =========================
   CONTAINER PRINCIPAL
========================= */
.container{
    max-width:1000px;
    margin:auto;

    background:rgba(255,255,255,.92);

    padding:25px;

    border:8px dashed #ff7d7d;
    border-radius:30px;

    box-shadow:0 10px 25px rgba(0,0,0,.15);
}

/* =========================
   LOGO
========================= */
.logo{
    text-align:center;
    margin-bottom:20px;
}

.logo span{
    font-size:3.5rem;
    font-family:'Special Elite', monospace;
}

/* =========================
   MENU
========================= */
.menu{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:20px;

    margin-bottom:20px;
}

.menu a{
    text-decoration:none;
    color:#d94848;
    font-weight:bold;
}

.menu a:hover{
    transform:translateY(-3px) rotate(-2deg);
}

/* =========================
   BANNER
========================= */
.banner{
    width:100%;
    display:flex;
    justify-content:center;

    margin:15px 0 25px 0;
}

.banner img{
    width:100%;

    max-width:1000px;

    display:block;

    border-radius:20px;

    border:5px dashed #ff7d7d;

    box-shadow:0 10px 20px rgba(0,0,0,.15);

    object-fit:cover;
}

/* =========================
   TITULOS
========================= */
.section-title{
    text-align:center;

    margin:20px 0;

    font-family:'Special Elite', monospace;

    color:#d94848;
}

/* =========================
   GRID GENERAL (CARDS)
========================= */
.music-grid{
    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));

    gap:20px;
}

/* =========================
   CARDS
========================= */
.music-card{
    background:#fffaf3;

    padding:20px;

    border-radius:20px;

    border:3px solid #eadfd3;

    box-shadow:0 6px 15px rgba(0,0,0,.08);

    transition:.3s;
}

.music-card:hover{
    transform:translateY(-5px) rotate(-1deg);
    background:#fff4f4;
}

.music-card h3{
    font-family:'Special Elite', monospace;

    color:#d94848;

    margin-bottom:10px;
}

/* =========================
   IMAGEN + TEXTO (LADO A LADO)
========================= */
.flex-card{
    display:flex;

    align-items:center;

    gap:15px;
}

.side-img{
    width:90px;
    height:90px;

    object-fit:cover;

    border-radius:12px;

    border:3px dashed #ff9dbb;

    box-shadow:0 6px 12px rgba(0,0,0,.12);

    transition:.3s;
}

.side-img:hover{
    transform:scale(1.05) rotate(-2deg);
}

.side-text{
    flex:1;
}

/* =========================
   SONG / VIDEO PLAYER
========================= */
.song-player{
    margin-top:40px;

    background:#ffd6e7;

    padding:25px;

    border-radius:25px;

    text-align:center;

    border:3px dashed #ff9dbb;

    box-shadow:0 8px 18px rgba(0,0,0,.10);
}

.song-player iframe{
    border-radius:15px;
    margin-top:10px;
}

/* =========================
   PLAYLIST FALSA
========================= */
.playlist-box{
    margin-top:40px;

    background:#fff3bf;

    padding:25px;

    border-radius:25px;

    text-align:center;

    border:3px dashed #f2d6a5;
}

.fake-player{
    margin:10px auto;

    padding:15px;

    background:white;

    border-radius:15px;

    font-family:'Special Elite', monospace;

    width:fit-content;
}

/* =========================
   GALERÍA DE ARTE
========================= */
.art-grid{
    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));

    gap:20px;

    margin-top:25px;
    margin-bottom:40px;
}

.art-img{
    width:100%;

    height:auto;

    border-radius:15px;

    border:4px dashed #ff9dbb;

    box-shadow:0 8px 15px rgba(0,0,0,.12);

    transition:.3s;

    object-fit:cover;
}

.art-img:hover{
    transform:scale(1.05) rotate(-2deg);
}

/* =========================
   RESPONSIVE
========================= */
@media(max-width:768px){

    .music-grid{
        grid-template-columns:1fr;
    }

    .flex-card{
        flex-direction:column;
        text-align:center;
    }

    .side-img{
        width:120px;
        height:120px;
    }

    .logo span{
        font-size:2.5rem;
    }
}