/*
Theme Name: RedPrivée
Version: 1.0
*/

/* RESET */
*{box-sizing:border-box;margin:0;padding:0;}

body{
  background:#0f1115;
  color:#fff;
  font-family:Arial,sans-serif;
}

/* Layout */
main{
  max-width:1200px;
  margin:0 auto;
  padding:20px;
  width:100%;
  position:relative;
  z-index:1;
}

.container{
  max-width:1200px;
  margin:0 auto;
  padding:20px;
}

.section-title{
  font-size:22px;
  font-weight:800;
  margin:18px 0 14px;
}

/* HEADER */
.header{
  background:#0b0f1a;
  padding:10px 0;
  position:relative;
  z-index:50;
}

.header-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.custom-logo{
  height:60px!important;
  width:auto!important;
  display:block;
}

.custom-logo-link{
  display:flex;
  align-items:center;
}

.logo-text{
  font-size:22px;
  font-weight:800;
}

/* NAV */
.main-nav{position:relative;z-index:60;}
.main-nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap:18px;
  align-items:center;
  flex-wrap:wrap;
}
.main-nav li{margin:0;padding:0;}
.main-nav a{
  color:#fff;
  text-decoration:none;
  font-weight:600;
  font-size:14px;
  opacity:.9;
}
.main-nav a:hover{opacity:1;color:#25D366;}

/* CTA menu: Publicar perfil */
.main-nav a[href*="publicar"]{
  background:#25D366;
  color:#0b0f1a !important;
  padding:10px 14px;
  border-radius:10px;
  font-weight:800;
  opacity:1;
}
.main-nav a[href*="publicar"]:hover{filter:brightness(1.05);}

/* HOME GRID (VIP + Últimas) */
.grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
  gap:20px;
  width:100%;
  position:relative;
  z-index:5;
}

.grid > a.card{
  background:#1a1d24;
  border-radius:12px;
  overflow:hidden;
  text-decoration:none;
  color:#fff;
  display:block;
  cursor:pointer;
  position:relative;
  z-index:10;
  transition:transform 120ms ease;
}

.grid > a.card:hover{transform:translateY(-2px);}

.grid > a.card img{
  width:100% !important;
  height:320px !important;
  object-fit:cover !important;
  display:block !important;
}

.name{
  padding:12px;
  font-weight:700;
}

/* GALERIA (single) */
.rp-gallery{
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
  gap:10px;
}

.rp-thumb-btn{
  padding:0;
  border:none;
  background:#000;
  border-radius:10px;
  overflow:hidden;
  cursor:pointer;
}

.rp-thumb{
  width:100%;
  height:140px;
  object-fit:cover;
  display:block;
}

/* LIGHTBOX */
.rp-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.85);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:9999;
  padding:20px;
}
.rp-lightbox.open{display:flex;}
.rp-lightbox img{
  max-width:95vw;
  max-height:90vh;
  border-radius:12px;
  display:block;
}
.rp-lb-close{
  position:absolute;
  top:14px;
  right:18px;
  width:44px;
  height:44px;
  border:none;
  border-radius:12px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:28px;
  cursor:pointer;
}

/* FOOTER */
footer{
  padding:30px 0;
  text-align:center;
  color:#777;
}

/* RESPONSIVE */
@media (max-width:768px){
  .grid > a.card img{height:250px !important;}
}
.site-footer{
  background:#0a0a0a;
  padding:40px 0;
  margin-top:80px;
}
.site-footer-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  color:#aaa;
}
.site-footer-links a{
  color:#888;
  margin-right:20px;
  text-decoration:none;
}
.site-footer-links a:last-child{margin-right:0;}
.site-footer-links a:hover{color:#25D366;}