/* estilo-clube.css */

/* RESET E ESTRUTURA BASE */
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: 'Open Sans', sans-serif; background-color: #f4f7f9; color: #333; }

#wrap { max-width: 1100px; margin: 0 auto; background: #fff; box-shadow: 0 0 20px rgba(0,0,0,0.1); }

/* HEADER */
#header { width: 100%; border-bottom: 5px solid #24A8FF; }
.header-img { width: 100%; height: auto; display: block; }

/* MENU HORIZONTAL */
#nav-main { background: #F90; }
#nav-main ul { display: flex; list-style: none; justify-content: center; flex-wrap: wrap; }
#nav-main ul li a { display: block; padding: 15px 25px; color: #fff; text-decoration: none; font-weight: bold; text-transform: uppercase; font-size: 13px; transition: 0.3s; }
#nav-main ul li a:hover { background: #09F; }

/* LAYOUT DUAS COLUNAS */
.container-main { display: flex; padding: 20px; min-height: 600px; }

/* SIDEBAR (ESQUERDA) */
#sidebar { width: 260px; flex-shrink: 0; padding-right: 20px; border-right: 1px solid #eee; }
#sidebar h2 { font-size: 18px; color: #09F; margin-bottom: 15px; border-bottom: 2px solid #F90; padding-bottom: 5px; margin-top: 20px; }
#sidebar ul { list-style: none; }
#sidebar ul li a { display: block; padding: 10px 12px; margin-bottom: 5px; background: #f9f9f9; color: #555; text-decoration: none; font-size: 13px; border-radius: 4px; transition: 0.2s; }
#sidebar ul li a:hover { background: #09F; color: #fff; padding-left: 18px; }

/* SUBMENU PISCINA TÉRMICA */
.has-submenu { position: relative; }
.submenu-toggle { display: flex !important; justify-content: space-between; align-items: center; font-weight: bold; background: #eee !important; cursor: pointer; }
.submenu { display: none; list-style: none; padding-left: 15px !important; margin: 5px 0; background: #fff; border-left: 3px solid #F90; }
.has-submenu.active .submenu { display: block; }
.has-submenu.active .seta { transform: rotate(180deg); }
.seta { font-size: 10px; transition: 0.3s; }

/* CONTEÚDO PRINCIPAL (DIREITA) */
#content { flex-grow: 1; padding-left: 20px; }
.photo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; }
        
.album-card { background: #fff; border-radius: 8px; overflow: hidden; border: 1px solid #eee; transition: 0.3s; }
.album-card:hover { transform: translateY(-5px); box-shadow: 0 10px 15px rgba(0,0,0,0.1); }
.album-card img { width: 100%; height: 180px; object-fit: cover; display: block; }
.album-info { padding: 15px; text-align: center; }
.album-info h3 { font-size: 15px; color: #333; }
.album-card a { text-decoration: none; }

/* FOOTER */
#footer { background: #24A8FF; color: #fff; text-align: center; padding: 30px; margin-top: 40px; border-top: 5px solid #07F; }

/* WHATSAPP */
.whatsapp-fixo { position: fixed; bottom: 25px; right: 25px; z-index: 9999; transition: 0.3s; }
.whatsapp-fixo img { width: 60px; height: 60px; }


/* Seleção mais específica para garantir prioridade */
#content .galeria-fotos {
    display: flex !important;       /* Força o modo Flex */
    flex-direction: row;            /* Garante direção horizontal */
    flex-wrap: wrap;                /* Permite descer se não couber */
    gap: 15px;
    margin: 20px 0;
    width: 100%;
}

#content .galeria-fotos img {
    /* calc(50% - 15px) pode ser muito grande se a sidebar ocupar muito espaço */
    /* Vamos tentar uma largura fixa menor para testar o alinhamento lado a lado */
    width: 280px; 
    height: 200px;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

/* Ajuste na Responsividade */
@media (max-width: 768px) {
    #content .galeria-fotos {
        justify-content: center;
    }
    #content .galeria-fotos img {
        width: 100%; /* Ocupa tudo no celular */
        height: auto;
    }
}