/* CSS UNIFICADO: KINESIOLOGAS / ESCORTS
   Base de estilos del PHP + modern + luxury + marcos.
   El acabado de marcos definitivo es PROPUESTA 1.
*/



/* ===== ESTILOS QUE ESTABAN DENTRO DEL PHP ===== */



/* --- Bloque inline original 1 --- */

body{
  margin:0;
  background-color:#000;
  background-image:url('/elem/imagenes/bga.webp');
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
  background-attachment:fixed;
  color:#eee;
  font-family:Arial,sans-serif;
}
.wrapper{max-width:1110px;margin:0 auto;padding:0 10px}
.banner-top img,.banner-categoria img{width:100%;display:block}
.titulo-categoria{text-align:center;margin:20px 0;color:#f9d01b}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px}
@media(max-width:1024px){.grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:768px){.grid{grid-template-columns:repeat(2,1fr)}}
.card{background:#111;border-radius:12px;overflow:hidden}

/* Permitir que la cinta NUEVA sobresalga sin quedar recortada.
   La foto sigue recortándose dentro de .media-box. */
.card:has(.ribbon-right){
  overflow:visible;
}

.card > a > img{
  width:100%;
  aspect-ratio:3/5;
  object-fit:cover;
  border:1px solid #fff;
  margin:0px;
  display:block;
 
}


.card .info{padding:8px;text-align:center}
.card a{color:#fff;text-decoration:none}
.btn{display:block;margin-top:6px;background:#d2a328;color:#000;padding:6px;border-radius:20px;font-weight:bold}
.msg-vacio{grid-column:1/-1;text-align:center;color:#777;padding:20px}

html, body {
  overflow-x: hidden;
}

/* ===============================
   DELUXE INTERNACIONALES
=============================== */

.categoria-deluxe_internacionales .card{
  background:#000;
  border:4px solid #d4af37;
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 2px #000 inset,
    0 0 25px rgba(212,175,55,.35);
}



.categoria-deluxe_internacionales .card.nueva::before{
  content:"NUEVA";
  position:absolute;
  top:14px;
  right:-38px;
  background:#d00000;
  color:#fff;
  padding:6px 40px;
  transform:rotate(45deg);
  font-size:12px;
  font-weight:700;
  z-index:5;
  box-shadow:0 2px 8px rgba(0,0,0,.6);
}
.categoria-deluxe_internacionales .info div:first-child{
  color:#f5d77a;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-deluxe_internacionales .info div:last-child{
  color:#fff;
  font-size:13px;
}
.categoria-deluxe_internacionales .btn{
  background:linear-gradient(135deg,#f9d01b,#b8860b);
  color:#000;
  box-shadow:0 0 10px rgba(212,175,55,.6);
}
.categoria-deluxe_internacionales .card:hover{
  transform:translateY(-4px);
  box-shadow:
    0 0 0 2px #000 inset,
    0 0 40px rgba(212,175,55,.6);
}

/* ===============================
   DELUXE NACIONALES
=============================== */

.categoria-deluxe_nacionales .card{
  background:#000;
  border:3px solid #c9a24a; /* dorado más sobrio */
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 2px #000 inset,
    0 0 18px rgba(201,162,74,.30);
}

.categoria-deluxe_nacionales .card.nueva::before{
  content:"NUEVA";
  position:absolute;
  top:14px;
  right:-38px;
  background:#c10000;
  color:#fff;
  padding:6px 40px;
  transform:rotate(45deg);
  font-size:12px;
  font-weight:700;
  z-index:5;
  box-shadow:0 2px 8px rgba(0,0,0,.6);
}
.categoria-deluxe_nacionales .info div:first-child{
  color:#f3d37c;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-deluxe_nacionales .info div:last-child{
  color:#ddd;
  font-size:13px;
}
.categoria-deluxe_nacionales .btn{
  background:linear-gradient(135deg,#e8c15a,#b8962e);
  color:#000;
  box-shadow:0 0 8px rgba(201,162,74,.5);
}
.categoria-deluxe_nacionales .card:hover{
  transform:translateY(-3px);
  box-shadow:
    0 0 0 2px #000 inset,
    0 0 30px rgba(201,162,74,.45);
}

/* ===============================
   AMOROSAS PREMIUM
=============================== */

.categoria-amorosas_premium .card{
  background:#0f0f0f;
  border:2px solid #8e8e8e; /* gris elegante */
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 14px rgba(180,180,180,.25);
}

.categoria-amorosas_premium .info div:first-child{
  color:#e0e0e0;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-amorosas_premium .info div:last-child{
  color:#FFFFFF;
  font-size:13px;
}
.categoria-amorosas_premium .btn{
  background:linear-gradient(135deg,#cfcfcf,#9c9c9c);
  color:#000;
  box-shadow:0 0 6px rgba(180,180,180,.4);
}
.categoria-amorosas_premium .card:hover{
  transform:translateY(-2px);
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 22px rgba(180,180,180,.45);
}

/* ===============================
   AMOROSAS TOP
=============================== */

.categoria-amorosas_top .card{
  background:#0a0f1a;
  border:2px solid #1e6bff; /* azul top */
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 16px rgba(30,107,255,.35);
}

.categoria-amorosas_top .info div:first-child{
  color:#FFFFFF;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-amorosas_top .info div:last-child{
  color:#FFFFFF;
  font-size:13px;
}
.categoria-amorosas_top .btn{
  background:linear-gradient(135deg,#4f8bff,#1e6bff);
  color:#fff;
  box-shadow:0 0 8px rgba(30,107,255,.6);
}
.categoria-amorosas_top .card:hover{
  transform:translateY(-3px);
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 30px rgba(30,107,255,.6);
}

/* ===============================
   EXTRANJERAS VIP (ESTILO DELUXE)
=============================== */

.categoria-extranjeras_vip .card{
  background:#000;
  border:4px solid #d4af37;
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 2px #000 inset,
    0 0 25px rgba(212,175,55,.35);
}

.categoria-extranjeras_vip .info div:first-child{
  color:#f5d77a;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-extranjeras_vip .btn{
  background:linear-gradient(135deg,#f9d01b,#b8860b);
  color:#000;
  box-shadow:0 0 10px rgba(212,175,55,.6);
}

.categoria-extranjeras_vip .card:hover{
  transform:translateY(-4px);
  box-shadow:
    0 0 0 2px #000 inset,
    0 0 40px rgba(212,175,55,.6);
}
/* ===============================
   SEÑORAS VIP
=============================== */

.categoria-senoras_vip .card{
  background:#120a00;
  border:2px solid #ff8c00;
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 18px rgba(255,140,0,.45);
}

.categoria-senoras_vip .info div:first-child{
  color:#FFFFFF;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-senoras_vip .btn{
  background:linear-gradient(135deg,#ffb347,#ff8c00);
  color:#000;
  box-shadow:0 0 8px rgba(255,140,0,.6);
}

.categoria-senoras_vip .card:hover{
  transform:translateY(-3px);
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 30px rgba(255,140,0,.6);
}
/* ===============================
   SEÑORAS
=============================== */

.categoria-senoras .card{
  background:#140000;
  border:2px solid #cc0000;
  padding:3px;
  position:relative;
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 16px rgba(204,0,0,.45);
}

.categoria-senoras .info div:first-child{
  color:#FFFFFF;
  font-weight:700;
  text-transform:uppercase;
}

.categoria-senoras .btn{
  background:linear-gradient(135deg,#ff4d4d,#cc0000);
  color:#fff;
  box-shadow:0 0 8px rgba(204,0,0,.6);
}

.categoria-senoras .card:hover{
  transform:translateY(-3px);
  box-shadow:
    0 0 0 1px #000 inset,
    0 0 30px rgba(204,0,0,.6);
}
.card{
  background-clip: padding-box;
}
.categoria-deluxe_internacionales .card,
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card{
  position:relative;
  padding:3px;
  background:
    linear-gradient(#000,#000) padding-box,
    linear-gradient(
      180deg,
  #CF9E41 0%,
  #d4af37 25%,
  #7a5a00 45%,
  #000 75%
    ) border-box;
  border:3px solid transparent;
  box-shadow:0 0 25px rgba(212,175,55,.35);
}
.categoria-amorosas_premium .card{
  position:relative;
  padding:3px;
  background:
    linear-gradient(#0f0f0f,#0f0f0f) padding-box,
    linear-gradient(
      180deg,
      #8b8b8b 0%,
      #9e9e9e 25%,
      #444 45%,
      #000 75%
    ) border-box;
  border:2px solid transparent;
  box-shadow:0 0 18px rgba(180,180,180,.25);
}
.categoria-amorosas_top .card{
  position:relative;
  padding:3px;
  background:
    linear-gradient(#0a0f1a,#0a0f1a) padding-box,
    linear-gradient(
      180deg,
      #537cc4 0%,
      #1e6bff 25%,
      #0a1a3a 50%,
      #000 75%
    ) border-box;
  border:2px solid transparent;
  box-shadow:0 0 22px rgba(30,107,255,.45);
}
.categoria-senoras_vip .card{
  position:relative;
  padding:3px;
  background:
    linear-gradient(#120a00,#120a00) padding-box,
    linear-gradient(
      180deg,
      #ffb347 0%,
      #ff8c00 45%,
      #7a3f00 75%,
      #000 100%
    ) border-box;
  border:2px solid transparent;
  box-shadow:0 0 20px rgba(255,140,0,.45);
}
.categoria-senoras .card{
  position:relative;
  padding:3px;
  background:
    linear-gradient(#140000,#140000) padding-box,
    linear-gradient(
      180deg,
      #ff4d4d 0%,
      #cc0000 45%,
      #660000 75%,
      #000 100%
    ) border-box;
  border:2px solid transparent;
  box-shadow:0 0 20px rgba(204,0,0,.45);
}

.card img{
  display:block;
  width:100%;
  border:1px solid #fff;   /* marco blanco */
  box-sizing:border-box;
}

.card .btn{
  display:none;
}

/* ===== BORDES RECTOS PARA MARCOS DE COLORES ===== */

.categoria-deluxe_internacionales .card,
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card,
.categoria-amorosas_premium .card,
.categoria-amorosas_top .card,
.categoria-senoras_vip .card,
.categoria-senoras .card{
  border-radius:0 !important;
}

/* ===== QUITAR RESPLANDOR DE LAS CARDS ===== */

.categoria-deluxe_internacionales .card,
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card,
.categoria-amorosas_premium .card,
.categoria-amorosas_top .card,
.categoria-senoras_vip .card,
.categoria-senoras .card{
  box-shadow:none !important;
}

.titulo-categoria{
  display:none;
}

/* ===== ICONOS EN DATOS ===== */

..info{
  padding:6px 8px;
  text-align:center;
}

.info .nombre,
.info .ubicacion{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
}

.icon-verificada{
  width:16px;
}

.icon-loc{
  width:10px;
}
/* ===== FIX ICONOS VERIFICADO Y UBICACION ===== */

.info{
  padding:6px 8px;
  text-align:center;
}

.info .nombre,
.info .ubicacion{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  line-height:1.2;
}

/* ICONO VERIFICADO */
.icon-verificada{
  width:16px;
  height:16px;
  display:inline-block;
  vertical-align:middle;
}

/* ICONO UBICACION */
.icon-loc{
  width:10px;
  height:10px;
  display:inline-block;
  vertical-align:middle;
}

/* EVITAR QUE IMG HEREDEN TAMAÑOS RAROS */
.info img{
  max-width:none;
  margin:0;
}

/* ===== ICONOS INFO ===== */

.info img{
  width:auto;
  height:auto;
  border:none;
  margin:0;
  aspect-ratio:auto;
}

.icon-verificada{
  width:16px;
  height:16px;
  display:inline-block;
}

.icon-loc{
  width:11px;
  height:11px;
  margin-right:4px;
}
/* ===== FORZAR TAMAÑO ICONO UBICACION ===== */

.info .ubicacion .icon-loc{
  width:18px !important;
  height:18px !important;
  min-width:18px !important;
  max-width:18px !important;
  display:inline-block !important;
}



/* ===== AFINADO ELEGANTE DATOS ===== */

.card .info{
  font-family: Arial, Helvetica, sans-serif;
  padding:6px 8px 8px;
  text-align:center;
}

/* NOMBRE */
.card .info .nombre{
  font-size:13.5px;
  font-weight:600;        /* antes muy grueso */
  letter-spacing:.5px;    /* más aire */
  color:#EDC02D;
}

/* UBICACION */
.card .info .ubicacion{
  margin-top:3px;
  font-size:12.5px;
  font-weight:500;
  letter-spacing:.3px;
  color:#d0d0d0;
}

/* ===== CONTENEDOR DE IMAGEN ===== */


/* IMAGEN */
.media-box{
  position:relative;
  width:100%;
  aspect-ratio:3/5;   /* 👈 MISMO RATIO QUE ANTES */
  overflow:hidden;    /* 👈 recorte limpio */
}

/* imagen dentro del ratio */
.media-box img{
  width:100%;
  height:100%;
  object-fit:cover;   /* 👈 evita deformación */
  display:block;
}

/* ICONOS LATERALES DESDE ABAJO */
.overlay-iconos{
  position:absolute;
  right:8px;
  bottom:10px;        /* 👈 punto de inicio abajo */
  display:flex;
  flex-direction:column;
  gap:6px;
  z-index:5;
  pointer-events:none;
}

.overlay-iconos img{
  width:34px;
  height:auto;
}

/* BADGE VERIFICADA */
.badge-verificada{
  position:absolute;
  bottom:8px;
  left:8px;
  z-index:6;
  pointer-events:none;
}

.badge-verificada img{
  width:110px;
  height:auto;
}

@keyframes vibrar {
  0% { transform: rotate(0deg); }
  10% { transform: rotate(10deg); }
  20% { transform: rotate(-10deg); }
  30% { transform: rotate(10deg); }
  40% { transform: rotate(-10deg); }
  50% { transform: rotate(0deg); }
  100% { transform: rotate(0deg); }
}

.animar-whatsapp {
  animation: vibrar 1s infinite;
  transform-origin: center center;
}


/* ===== QUITAR BORDES BLANCOS A ICONOS ===== */
.overlay-iconos img,
.badge-verificada img{
  border: none !important;
  outline: none !important;
}

/* ===== AJUSTE MOBILE: MENOS SEPARACIÓN ===== */
@media (max-width:768px){

  .grid{
    gap:6px;        /* antes 8px */
    padding:6px;    /* antes 8px */
  }

  /* reducir un poco el aire del marco */
  .categoria-deluxe_nacionales .card,
  .categoria-deluxe_internacionales .card,
  .categoria-extranjeras_vip .card,
  .categoria-amorosas_premium .card,
  .categoria-amorosas_top .card,
  .categoria-senoras_vip .card,
  .categoria-senoras .card{
    padding:1px;    /* antes 6px */
  }

}

/* ===== AJUSTE BADGE VERIFICADA EN MÓVIL ===== */
@media (max-width:768px){

  .badge-verificada{
    left:3px;      /* antes 8px */
    bottom:3px;    /* opcional: un pelín más abajo */
  }

}

/* ===== AJUSTE ICONOS EN MÓVIL ===== */
@media (max-width:768px){

  .overlay-iconos{
    right:4px;   /* antes 8px → más a la derecha */
    bottom:4px;  /* opcional: ajusta un poco desde abajo */
  }

}


/* ===== EFECTO VIDEO (LATIDO + ONDA) ===== */

.ico-video{
  position:relative;
  display:inline-flex;
  z-index:1;
}

/* ONDA */
.ico-video::before{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:100%;
  height:100%;
  border-radius:50%;
  background: rgba(0,60,150,0.55); /* azul oscuro adaptado */
  transform:translate(-50%,-50%) scale(1);
  animation:ondaVideo 2s ease-out infinite;
  z-index:-1;
}

/* ICONO CON LATIDO */
.ico-video img{
  position:relative;
  z-index:2;
  animation:latidoVideo 2s infinite;
}

/* ===== KEYFRAMES ADAPTADOS ===== */

@keyframes latidoVideo{
  0%, 100%{
    transform:scale(1);
  }
  50%{
    transform:scale(1.07); /* igual que tu HTML antiguo */
  }
}

@keyframes ondaVideo{
  0%{
    transform:translate(-50%,-50%) scale(1);
    opacity:0.8;
  }
  100%{
    transform:translate(-50%,-50%) scale(2.5);
    opacity:0;
  }
}


/* ===== CINTA NUEVA: DOBLECES FUERA DE LA FOTO, DENTRO DE LA TARJETA ===== */
/* La tarjeta recorta cualquier parte que intente salir del marco exterior. */
.card{
  position:relative;
  overflow:hidden;
}

/* NUEVA se posiciona respecto de .card, no de .media-box.
   Así los dobleces transparentes no quedan cortados por overflow:hidden de la foto. */
.ribbon-right{
  position:absolute;
  top:-7px;
  right:-5px;
  z-index:20;
  pointer-events:none;
  line-height:0;
}

.ribbon-right img{
  display:block;
  width:90px;
  height:auto;
  max-width:none;
  border:none !important;
}

@media (max-width:768px){
  .ribbon-right{
    top:-7px;
    right:-5px;
  }
  .ribbon-right img{
    width:70px;
  }
}

/* ===== CINTA VIP (IMAGEN DIAGONAL REAL) ===== */
.ribbon-left{
  position:absolute;
  top:-3px;          /* 👈 la saca del contenedor */
  left:-3px;         /* 👈 clave para evitar el cuadrado */
  z-index:9;
  pointer-events:none;
}

/* imagen VIP */
.ribbon-left img{
  display:block;
  width:70px;         /* 👈 más pequeña = no invade */
  height:auto;
  border:none;
}

@media (max-width:768px){
  .ribbon-left{
    top:-3px;
    left:-3px;
  }
  .ribbon-left img{
    width:55px;
  }
}

/* ===== BLOQUE ENTRE DELUXE INTERNACIONAL Y PREMIUM ===== */

.scroll-deluxe {
    width: 100%;
    height: 35px;
    margin: 8px auto;
    background: #000;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.scroll-deluxe marquee {
    width: 100%;
}

.scroll-deluxe span {
    color: #fff;
    font-size: 16px;
    font-family: Arial, sans-serif;
}

.banner-intermedio {
    width: 100%;
    max-width: 785px;
    margin: 10px auto 5px;
    text-align: center;
}

.banner-intermedio img {
    width: 100%;
    height: auto;
    display: block;
}

.fecha-intermedia {
    width: 100%;
    margin: 5px auto 15px;
    color: #fff;
    font-family: Verdana, Arial, sans-serif;
    font-size: 13px;
    text-align: left;
}

/* ===== BLOQUE ENTRE AMOROSAS PREMIUM Y TOP ===== */

.scroll-premium {
    width: 100%;
    height: 35px;
    margin: 8px auto;
    background: #000;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.scroll-premium marquee {
    width: 100%;
}

.scroll-premium span {
    color: #fff;
    font-size: 16px;
    font-family: Arial, sans-serif;
}

.linea-color-premium {
    width: 100%;
    margin: 8px auto;
}

.linea-color-premium img {
    display: block;
    width: 100%;
    height: 1px;
}

.banner-premium-top {
    width: 100%;
    max-width: 785px;
    margin: 10px auto;
    text-align: center;
}

.banner-premium-top img {
    display: block;
    width: 100%;
    height: auto;
}

/* ===== DESCRIPCIÓN EXTRANJERAS VIP ===== */

.descripcion-extranjeras {
    width: 100%;
    max-width: 755px;
    margin: 10px auto 20px;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.6;
    text-align: justify;
    padding: 0 10px;
    box-sizing: border-box;
}

/* ===== DESCRIPCIÓN SEÑORAS VIP ===== */

.descripcion-senoras-vip {
    width: 100%;
    max-width: 770px;
    margin: 10px auto 20px;
    padding: 0 10px;
    box-sizing: border-box;
    color: #fff;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.6;
    text-align: justify;
}

.banner-destacados {
    width: 100%;
    max-width: 755px;
    margin: 10px auto;
    text-align: center;
    background: #000;
}

.banner-destacados img {
    display: block;
    width: 100%;
    height: auto;
}

.separador-destacados {
    width: 100%;
    max-width: 755px;
    height: 5px;
    margin: 0 auto;
    background: #000;
}

/* =========================================
   CONTENEDOR DE ANUNCIOS
========================================= */

.bloque-anuncios {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
    max-width: 1100px;
    margin: 5px auto 25px;
    padding: 0 15px;
    box-sizing: border-box;
}

/* =========================================
   ESTILO DE CADA ANUNCIO
========================================= */

.anuncio-card {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    box-sizing: border-box;

    background: #151515;
    border: 1px solid #303030;
    border-radius: 12px;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);

    text-decoration: none;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

/* =========================================
   IMÁGENES DE LOS ANUNCIOS
========================================= */

.anuncio-card img {
    display: block;
    width: 100%;
    max-width: 400px;
    height: auto;
    object-fit: contain;
}

/* =========================================
   EFECTO AL PASAR EL CURSOR
========================================= */

.anuncio-card:hover {
    transform: translateY(-4px);
}

/* Videos */
.anuncio-videos:hover {
    border-color: #e63946;

    box-shadow:
        0 0 8px rgba(230, 57, 70, 0.25),
        0 0 16px rgba(230, 57, 70, 0.35);
}

/* Sexcam */
.anuncio-cam:hover {
    border-color: #a855f7;

    box-shadow:
        0 0 8px rgba(168, 85, 247, 0.25),
        0 0 16px rgba(168, 85, 247, 0.35);
}

/* Enlaces */
.anuncio-links:hover {
    border-color: #f0b429;

    box-shadow:
        0 0 8px rgba(240, 180, 41, 0.25),
        0 0 16px rgba(240, 180, 41, 0.35);
}

/* =========================================
   ACCESIBILIDAD
========================================= */

.anuncio-card:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 4px;
}

/* =========================================
   TABLETS
========================================= */

@media (max-width: 900px) {
    .bloque-anuncios {
        gap: 12px;
        padding: 0 12px;
    }

    .anuncio-card {
        border-radius: 9px;
    }
}

/* =========================================
   CELULARES: TRES ANUNCIOS EN UNA FILA
========================================= */

@media (max-width: 600px) {

    .bloque-anuncios {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px;
        width: 100%;
        max-width: 100%;
        margin: 15px auto;
        padding: 0 5px;
        box-sizing: border-box;
    }

    .anuncio-card {
        width: 100%;
        max-width: none;
        min-width: 0;
        margin: 0;
        border-radius: 5px;
    }

    .anuncio-card img {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
    }

    .anuncio-card:hover {
        transform: none;
    }

 }

/* =========================================
   REDUCIR ANIMACIONES SI SE PREFIERE
========================================= */

@media (prefers-reduced-motion: reduce) {

    .anuncio-card {
        transition: none;
    }

    .anuncio-card:hover {
        transform: none;
    }
}
/* ===== KINESIOLOGAS EN OTRAS CIUDADES ===== */

#menux {
    width: 100%;
    max-width: 785px;
    margin: 10px auto 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

#menux .botm {
    display: inline-block;
}

#menux .botm a {
    display: block;
    padding: 8px 16px;
    background: #222;
    border: 1px solid #82E0AA;
    border-radius: 5px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    transition: background .3s, color .3s;
}

#menux .botm a:hover {
    background: #82E0AA;
    color: #000;
}

/* ===== TÍTULO KINESIÓLOGAS EN OTRAS CIUDADES ===== */

.legacy-box table {
    width: 100% !important;
    max-width: 785px;
    margin: 10px auto !important;
}

.legacy-box .Estilo68 {
    width: 100%;
    text-align: center !important;
    display: block;
}

.legacy-box .PUBLICIDAD {
    display: inline-block;
    text-align: center;
}

/* Ajustes para móviles */
@media (max-width: 600px) {
    #menux {
        gap: 6px;
        padding: 0 8px;
        box-sizing: border-box;
    }

    #menux .botm a {
        padding: 7px 12px;
        font-size: 13px;
    }

    .legacy-box table {
        max-width: 100%;
    }
}

/* ===== TÍTULO BOTONES DE PÁGINAS ===== */

.titulo-botones-paginas {
    width: 100%;
    max-width: 785px;
    margin: 5px auto 10px;
    text-align: center;
}

.titulo-botones-paginas span {
    color: #BF5EE6;
    font-size: 18px;
    font-weight: bold;
}

@media (max-width:600px) {
    .titulo-botones-paginas span {
        font-size: 16px;
    }
}




/* --- Bloque inline original 2 --- */

@keyframes girar {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.cta-anunciante{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:15px;
  margin:20px 0;
  flex-wrap:wrap;
}

.btn-publicar{
  background:linear-gradient(180deg,#ff4fa3,#e10078);
  color:#000000;
  padding:14px 22px;
  border-radius:12px;
  font-weight:900;
  text-decoration:none;
  font-size:18px;
  box-shadow:0 8px 20px rgba(225,0,120,.5);
}

.btn-login-top{
  background:#222;
  color:#fff;
  padding:14px 22px;
  border-radius:12px;
  font-weight:700;
  text-decoration:none;
  border:1px solid #444;
  font-size:18px;
}

.btn-publicar{
  color:#000000 !important;
}

.btn-login-top{
  color:#fff !important;
}

@media (max-width: 600px){

  .cta-anunciante{
    gap:10px;
    margin:15px 0;
  }

  .btn-publicar,
  .btn-login-top{
    padding:10px 14px;
    font-size:14px;
    border-radius:10px;
  }

}

.btn-legal {
  display: inline-block;
  padding: 6px 10px;
  margin: 3px;
  background: #111;
  color:#fff !important;
  border-radius: 6px;
  text-decoration: none;
  font-size: 13px;
}

.btn-legal:hover {
  background: #333;
}

.cta-wrapper{
  text-align:center;
  margin-top:15px;
}

.cta-text{
  color:#ffc6da;
 font-size:14px;
  margin-bottom:12px;
  font-weight:700;
  letter-spacing:.4px;
}

/* ===== ESPACIADO DEL FOOTER ===== */

.site-footer p {
    line-height: 1.7;
    margin: 0 0 18px;
}

.site-footer .footer-warning {
    margin-bottom: 20px;
}

.site-footer .footer-seo {
    line-height: 1.5;
    margin: 25px 0 18px;
}




/* --- Bloque inline original 3 --- */

/* AUMENTAR LETRAS DE LOS TEXTOS DESPLAZABLES */
.scroll-premium marquee span,
.scroll-deluxe marquee span {
    font-size: 18px !important;
    line-height: 1.4 !important;
}




/* --- Bloque inline original 4 --- */

/* QUITAR MARCO EXTERIOR DEL BLOQUE SUPERIOR */
section.legacy-box {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
}




/* ===== KINESIOLOGAS-ESCORTS-MODERN.CSS ===== */
/* ==========================================================
   REDISEÑO VISUAL MODERNO - KINESIOLOGAS / ESCORTS
   Archivo independiente: no modifica PHP ni la lógica actual.
   Conserva los colores de marco propios de cada categoría.
   ========================================================== */

:root {
  --modern-bg: #090a0d;
  --modern-panel: #111318;
  --modern-panel-soft: #171a20;
  --modern-text: #f3f4f6;
  --modern-muted: #aeb4bf;
  --modern-gold: #d7b45a;
  --modern-line: rgba(255,255,255,.10);
  --modern-radius: 14px;
}

html {
  scroll-behavior: smooth;
  background: var(--modern-bg);
}

body {
  background-color: var(--modern-bg) !important;
  background-image:
    radial-gradient(ellipse at 50% 0%, rgba(105,79,31,.16), transparent 48%),
    linear-gradient(180deg, #0b0c10 0%, #08090c 55%, #0d0e12 100%) !important;
  background-attachment: scroll !important;
  color: var(--modern-text);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
}

.wrapper {
  width: min(100% - 24px, 1180px) !important;
  max-width: 1180px !important;
  padding: 0 !important;
  margin: 0 auto !important;
}

/* Cabecera y navegación */
.site-header {
  background: rgba(8,9,12,.96) !important;
  border-bottom: 1px solid rgba(215,180,90,.28) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.28);
}

.main-menu {
  background: #101116 !important;
  border-bottom: 1px solid var(--modern-line);
}

.main-menu a {
  transition: color .2s ease, background .2s ease;
}

.main-menu a:hover {
  color: #f1d58e !important;
  background: rgba(215,180,90,.08) !important;
}

/* Botones de registro e ingreso */
.cta-wrapper {
  margin: 22px auto 26px !important;
  padding: 0 12px;
}

.cta-text {
  color: #e5d8b6 !important;
  line-height: 1.55;
}

.cta-anunciante {
  gap: 12px !important;
}

.btn-publicar,
.btn-login-top {
  min-width: 180px;
  border-radius: 9px !important;
  padding: 12px 20px !important;
  box-shadow: 0 5px 18px rgba(0,0,0,.28) !important;
  transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.btn-publicar:hover,
.btn-login-top:hover {
  transform: translateY(-2px);
  filter: brightness(1.08);
}

.btn-login-top {
  background: linear-gradient(135deg,#252832,#15171d) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
}

/* Bloques superiores y redes */
.legacy-box {
  width: min(100% - 24px, 1180px);
  margin: 0 auto;
  padding: 18px 16px;
  background: rgba(17,19,24,.72);
  border: 1px solid var(--modern-line);
  border-radius: 16px;
  box-sizing: border-box;
}

.networks,
.social-section,
.sponsors,
.destacados,
.web-live,
.promo-section,
.promo-video {
  max-width: 1120px !important;
}

.networks-title,
.sponsors-subtitle,
.cabecera-subtitulo {
  color: var(--modern-muted) !important;
}

.redes-modernas a {
  border-radius: 10px !important;
  background: linear-gradient(145deg,#1b1e25,#111318) !important;
}

.big-buttons {
  margin: 24px auto !important;
}

/* Botones de ciudades */
#menux {
  margin: 14px auto 22px !important;
  gap: 9px !important;
}

#menux .botm a {
  border: 1px solid rgba(130,224,170,.42) !important;
  border-radius: 8px !important;
  background: linear-gradient(145deg,#1b2422,#111816) !important;
  padding: 9px 17px !important;
}

#menux .botm a:hover {
  background: #82e0aa !important;
  color: #07110b !important;
  transform: translateY(-1px);
}

/* Banners principales y de categoría */
.banner-top,
.banner-categoria {
  overflow: hidden;
  border-radius: 13px;
  background: #111318;
  box-shadow: 0 8px 24px rgba(0,0,0,.24);
}

.banner-top {
  margin: 18px 0 22px;
}

.banner-categoria {
  margin: 30px 0 12px;
  border: 1px solid rgba(255,255,255,.10);
}

.banner-top img,
.banner-categoria img {
  width: 100%;
  height: auto;
  display: block;
}

/* Separadores y textos que anteceden a las categorías */
.wrapper > div[style*="background:#000"] {
  background: linear-gradient(90deg,transparent,rgba(215,180,90,.12),transparent) !important;
  border-top: 1px solid rgba(215,180,90,.18);
  border-bottom: 1px solid rgba(215,180,90,.18);
  border-radius: 8px;
}

.Estilo110 {
  color: #ead7a7 !important;
  letter-spacing: .7px;
  font-weight: 700;
}

/* Galerías: misma estructura de cuatro columnas y dos en móvil */
.grid {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 14px !important;
  padding: 12px 4px 18px !important;
  align-items: start;
}

.card {
  min-width: 0;
  background: #101217 !important;
  border-radius: var(--modern-radius) !important;
  overflow: hidden;
  box-shadow: 0 7px 22px rgba(0,0,0,.34);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

/* Mantener el marco y el color definidos por cada categoría */
.categoria-deluxe_internacionales .card,
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card,
.categoria-amorosas_premium .card,
.categoria-amorosas_top .card,
.categoria-senoras_vip .card,
.categoria-senoras .card {
  border-radius: 12px !important;
  box-shadow: 0 7px 22px rgba(0,0,0,.34) !important;
}

.card:hover {
  transform: translateY(-4px);
  box-shadow: 0 13px 30px rgba(0,0,0,.48) !important;
  filter: brightness(1.035);
}

.card > a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.media-box {
  background: #08090c;
  overflow: hidden;
}

.media-box > img {
  transition: transform .35s ease;
}

.card:hover .media-box > img {
  transform: scale(1.025);
}

.card .info {
  min-height: 55px;
  padding: 10px 7px 11px !important;
  background: linear-gradient(180deg,#171a20,#101217) !important;
  text-align: center;
}

.card .info .nombre {
  color: #EDC02D !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .35px !important;
  line-height: 1.35 !important;
}

.card .info .ubicacion {
  color: #b9bec8 !important;
  font-size: 11.5px !important;
  font-weight: 500 !important;
  margin-top: 5px !important;
}

.card .info .icon-verificada {
  width: 15px !important;
  height: 15px !important;
}

/* Tarjetas publicitarias conservan sus imágenes y enlaces */
.grid .publicidad-card {
  border: 1px solid rgba(215,180,90,.55) !important;
  border-radius: 12px !important;
  background: #111318 !important;
  box-shadow: 0 7px 20px rgba(0,0,0,.30);
}

.grid .publicidad-card h3 {
  color: #ead7a7 !important;
}

.grid .publicidad-card .info {
  min-height: 0;
}

/* Bloques intermedios */
.scroll-deluxe,
.scroll-premium {
  min-height: 38px;
  height: auto;
  border: 1px solid rgba(215,180,90,.20);
  border-radius: 8px;
  background: linear-gradient(90deg,#111318,#1a1b20,#111318) !important;
  margin: 14px auto !important;
  padding: 7px 10px;
  box-sizing: border-box;
}

.scroll-deluxe span,
.scroll-premium span {
  color: #e7d7b2 !important;
  font-size: 12px;
  letter-spacing: .25px;
}

.descripcion-extranjeras,
.descripcion-senoras-vip {
  color: #d1d4da !important;
  line-height: 1.75 !important;
  background: rgba(17,19,24,.72);
  border: 1px solid var(--modern-line);
  border-radius: 10px;
  padding: 15px !important;
}

.fecha-intermedia {
  color: #b9bec8 !important;
  text-align: center !important;
}

/* Publicidad y pie de página */
.bloque-anuncios {
  gap: 14px !important;
}

.anuncio-card {
  border-radius: 11px !important;
  background: #14171d !important;
  border-color: rgba(255,255,255,.12) !important;
}

.site-footer {
  background: linear-gradient(145deg,#171a20,#0e1014) !important;
  border: 1px solid var(--modern-line);
  border-radius: 14px;
  color: #c2c6ce !important;
}

.social-title,
.promo-video-title {
  background: linear-gradient(90deg,#171a20,#29251b,#171a20) !important;
  border: 1px solid rgba(215,180,90,.22);
  border-radius: 8px;
}

/* Ajustes de tablet */
@media (max-width: 900px) {
  .grid {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 11px !important;
  }

  .legacy-box {
    padding: 14px 10px;
  }
}

/* Ajustes de celular: dos perfiles por fila */
@media (max-width: 600px) {
  .wrapper {
    width: calc(100% - 14px) !important;
  }

  .legacy-box {
    width: calc(100% - 14px);
    padding: 12px 7px;
    border-radius: 11px;
  }

  .grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px !important;
    padding: 8px 2px 14px !important;
  }

  .card,
  .categoria-deluxe_internacionales .card,
  .categoria-deluxe_nacionales .card,
  .categoria-extranjeras_vip .card,
  .categoria-amorosas_premium .card,
  .categoria-amorosas_top .card,
  .categoria-senoras_vip .card,
  .categoria-senoras .card {
    border-radius: 9px !important;
  }

  .card .info {
    min-height: 49px;
    padding: 8px 4px 9px !important;
  }

  .card .info .nombre {
    font-size: 11.5px !important;
    letter-spacing: .15px !important;
  }

  .card .info .ubicacion {
    font-size: 10.5px !important;
    margin-top: 4px !important;
  }

  .banner-top,
  .banner-categoria {
    border-radius: 8px;
  }

  .banner-categoria {
    margin: 22px 0 8px;
  }

  .cta-wrapper {
    margin: 16px auto 20px !important;
  }

  .btn-publicar,
  .btn-login-top {
    min-width: 0;
  }

  .scroll-deluxe,
  .scroll-premium {
    margin: 10px auto !important;
  }

  .site-footer {
    margin: 24px 8px !important;
    padding: 18px 12px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .card,
  .media-box > img,
  .btn-publicar,
  .btn-login-top,
  #menux .botm a { transition: none !important; }
  .card:hover,
  .btn-publicar:hover,
  .btn-login-top:hover,
  #menux .botm a:hover { transform: none !important; }
}

/* DESTACADOS DELUXE A TODO EL ANCHO EN MÓVILES */
@media (max-width: 600px) {

    .legacy-box .destacados {
        width: 100vw !important;
        max-width: none !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        padding: 0 !important;
        box-sizing: border-box;
    }

    .legacy-box .destacado-item img {
        width: 100% !important;
        max-width: none !important;
        display: block;
    }

}

/* SPONSORS A TODO EL ANCHO EN MÓVILES */
@media (max-width: 600px) {

    .legacy-box .sponsors {
        width: 100vw !important;
        max-width: none !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        padding: 0 !important;
        box-sizing: border-box;
    }

    .legacy-box .sponsor-item img {
        width: 100% !important;
        max-width: none !important;
        display: block;
    }

}

/* SEXO WEBCAM Y TELEGRAM A TODO EL ANCHO EN MÓVILES */
@media (max-width: 600px) {

    .promo-section {
        width: 100vw !important;
        max-width: none !important;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box;
    }

    .promo-section .promo-banner {
        display: block;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .promo-section .promo-banner img {
        display: block;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
    }
}

/* REDUCIR SUBTÍTULO DE CABECERA EN MÓVILES */
@media (max-width: 600px) {
    .cabecera-subtitulo {
        font-size: 10px !important;
        line-height: 1.4 !important;
    }
}

/* AJUSTE DE BOTONES DE REGISTRO EN MÓVILES */
@media (max-width: 600px) {

    .btn-publicar,
    .btn-login-top {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        vertical-align: middle;
        line-height: 1.2 !important;
        text-align: center !important;
        box-sizing: border-box;
        color: #fff !important;
    }

    .btn-publicar {
        font-weight: 700 !important;
    }
}

.btn-publicar,
.btn-login-top {
    color: #000000 !important;
}

.btn-publicar *,
.btn-login-top * {
    color: #ffffff !important;
}


/* ===== KINESIOLOGAS-ESCORTS-LUXURY-V2.CSS ===== */
/* =============================================================
   KINESIOLOGAS / ESCORTS - LUXURY MODERN V2
   Capa visual adicional. No modifica PHP, JS, enlaces ni datos.
   Mantiene los marcos y colores originales de cada categoría.
   Cargar DESPUÉS de kinesiologas-escorts-modern.css
   ============================================================= */

:root {
  --lux-bg: #07080b;
  --lux-panel: #111216;
  --lux-panel-2: #18191e;
  --lux-gold: #d6b56d;
  --lux-gold-light: #f1dca5;
  --lux-white: #f7f4ed;
  --lux-muted: #a9a6a0;
}

html { background: var(--lux-bg) !important; }
body {
  color: var(--lux-white) !important;
  background:
    radial-gradient(ellipse at 50% -8%, rgba(190,145,62,.22), transparent 38%),
    radial-gradient(ellipse at 0% 35%, rgba(80,64,38,.10), transparent 32%),
    linear-gradient(180deg,#090a0d 0%,#050609 58%,#0b0c10 100%) !important;
  background-attachment: scroll !important;
}

.wrapper {
  max-width: 1110px !important;
  width: calc(100% - 20px) !important;
  margin: 0 auto !important;
  padding: 0 10px !important;
}

/* Cabecera: acabado oscuro y línea metálica */
.site-header {
  background: linear-gradient(180deg,rgba(5,6,8,.99),rgba(14,14,17,.97)) !important;
  border-bottom: 1px solid rgba(214,181,109,.48) !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.55), 0 1px 0 rgba(255,255,255,.035) inset !important;
}
.main-menu {
  background: linear-gradient(90deg,#0b0c0f,#1a1711 50%,#0b0c0f) !important;
  border-top: 1px solid rgba(255,255,255,.045) !important;
  border-bottom: 1px solid rgba(214,181,109,.25) !important;
}
.main-menu a {
  color: #e9e4d8 !important;
  font-weight: 700 !important;
  letter-spacing: .45px !important;
  transition: color .2s ease, text-shadow .2s ease, background .2s ease !important;
}
.main-menu a:hover {
  color: var(--lux-gold-light) !important;
  text-shadow: 0 0 15px rgba(214,181,109,.38) !important;
  background: rgba(214,181,109,.09) !important;
}

/* Publicar / ingresar: botones protagonistas */
.cta-wrapper {
  margin: 27px auto 30px !important;
  padding: 20px 16px !important;
  max-width: 900px !important;
  border: 1px solid rgba(214,181,109,.27) !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg,rgba(30,26,18,.88),rgba(12,13,16,.96) 55%,rgba(27,22,15,.82)) !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.055) !important;
}
.cta-text { color: #e8dcc0 !important; }
.btn-publicar,
.btn-login-top {
  min-height: 46px !important;
  border-radius: 9px !important;
  font-weight: 800 !important;
  letter-spacing: .55px !important;
  text-transform: uppercase !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.btn-publicar {
  background: linear-gradient(135deg,#f0d99d 0%,#c49a4b 48%,#8e682c 100%) !important;
  color: #000000 !important;
  border: 1px solid #f1dca5 !important;
}
.btn-login-top {
  background: linear-gradient(135deg,#292a2f,#111216) !important;
   color: #ffffff !important;
  border: 1px solid rgba(214,181,109,.55) !important;
}
.btn-publicar:hover,.btn-login-top:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 13px 28px rgba(0,0,0,.55),0 0 18px rgba(214,181,109,.18) !important;
}

/* Módulos y redes */
.legacy-box,
.networks,
.social-section,
.sponsors,
.destacados,
.web-live,
.promo-section,
.promo-video {
  border-color: rgba(214,181,109,.19) !important;
}
.legacy-box {
  background: linear-gradient(145deg,rgba(22,23,27,.94),rgba(10,11,14,.92)) !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.networks-title,.sponsors-subtitle,.cabecera-subtitulo {
  color: var(--lux-gold-light) !important;
  letter-spacing: 1.1px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}
.redes-modernas a {
  border: 1px solid rgba(214,181,109,.25) !important;
  background: linear-gradient(145deg,#242229,#111216) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.3) !important;
}
.redes-modernas a:hover {
  border-color: rgba(241,220,165,.75) !important;
  box-shadow: 0 0 20px rgba(214,181,109,.18) !important;
}

/* Navegación por ciudades */
#menux { gap: 10px !important; margin: 20px auto 26px !important; }
#menux .botm a {
  border: 1px solid rgba(214,181,109,.42) !important;
  border-radius: 7px !important;
  color: #eee4ce !important;
  background: linear-gradient(145deg,#29251d,#111216) !important;
  box-shadow: 0 5px 14px rgba(0,0,0,.28) !important;
  font-weight: 700 !important;
  letter-spacing: .3px !important;
}
#menux .botm a:hover {
  color: #17120a !important;
  background: linear-gradient(135deg,#f1dca5,#c49a4b) !important;
  border-color: #f1dca5 !important;
}

/* Banners con marco fino y profundidad */
.banner-top,.banner-categoria {
  border: 1px solid rgba(214,181,109,.34) !important;
  border-radius: 13px !important;
  background: #101115 !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.025) inset !important;
}
.banner-top { margin: 22px 0 30px !important; }
.banner-categoria { margin: 38px 0 15px !important; }

/* Encabezados/separadores de secciones */
.wrapper > div[style*="background:#000"] {
  position: relative !important;
  margin-top: 30px !important;
  margin-bottom: 18px !important;
  padding: 13px 12px !important;
  background: linear-gradient(90deg,transparent,rgba(214,181,109,.19) 18%,rgba(214,181,109,.10) 50%,rgba(214,181,109,.19) 82%,transparent) !important;
  border-top: 1px solid rgba(214,181,109,.42) !important;
  border-bottom: 1px solid rgba(214,181,109,.42) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.22) !important;
}
.Estilo110 {
  color: var(--lux-gold-light) !important;
  font-weight: 900 !important;
  letter-spacing: 1.25px !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 14px rgba(214,181,109,.24) !important;
}

/* Galería: mayor presencia visual, sin cambiar proporción de fotos */
.grid {
  gap: 17px !important;
  padding: 16px 5px 24px !important;
}
.card {
  background: #0d0e12 !important;
  border-radius: 11px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.52),0 1px 0 rgba(255,255,255,.07) inset !important;
  transition: transform .25s ease,box-shadow .25s ease,filter .25s ease !important;
}
/* No se toca border-color ni border-width: se conservan los marcos por categoría. */
.card:hover {
  transform: translateY(-5px) !important;
  filter: brightness(1.055) !important;
  box-shadow: 0 20px 38px rgba(0,0,0,.64),0 0 19px rgba(214,181,109,.12) !important;
}
.card .media-box { background: #050608 !important; }
.card .media-box > img { display: block; }
.card .info {
  position: relative !important;
  padding: 12px 7px 13px !important;
  background: linear-gradient(180deg,#202127 0%,#111216 100%) !important;
  border-top: 1px solid rgba(255,255,255,.07) !important;
}
.card .info .nombre {
  color: #EDC02D !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: .35px !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.5) !important;
}
.card .info .ubicacion {
  color: #c7b991 !important;
  font-size: 11.5px !important;
  letter-spacing: .25px !important;
}

/* Cintas e iconos: legibilidad sobre las fotografías */
.ribbon-left,.ribbon-right { filter: drop-shadow(0 2px 5px rgba(0,0,0,.65)); }
.badge-verificada { filter: drop-shadow(0 2px 5px rgba(0,0,0,.65)); }
.overlay-iconos {
  filter: drop-shadow(0 2px 5px rgba(0,0,0,.8));
}

/* Publicidad integrada con las tarjetas */
.grid .publicidad-card {
  border-radius: 10px !important;
  background: linear-gradient(180deg,#201c14,#101115) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.48),0 0 0 1px rgba(214,181,109,.12) inset !important;
  overflow: hidden !important;
}
.grid .publicidad-card h3 {
  color: var(--lux-gold-light) !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
}

/* Barras informativas y textos */
.scroll-deluxe,.scroll-premium {
  border: 1px solid rgba(214,181,109,.34) !important;
  border-radius: 7px !important;
  background: linear-gradient(90deg,#111216,#272117 50%,#111216) !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.3) !important;
}
.scroll-deluxe span,.scroll-premium span { color: #f0dfb6 !important; }
.descripcion-extranjeras,.descripcion-senoras-vip {
  color: #dedbd3 !important;
  background: linear-gradient(145deg,rgba(26,27,31,.94),rgba(12,13,16,.94)) !important;
  border: 1px solid rgba(214,181,109,.20) !important;
  box-shadow: 0 9px 24px rgba(0,0,0,.24) !important;
}
.fecha-intermedia { color: #c8b98f !important; }

/* Video, destacados y pie */
.social-title,.promo-video-title {
  color: var(--lux-gold-light) !important;
  background: linear-gradient(90deg,#111216,#302719 50%,#111216) !important;
  border: 1px solid rgba(214,181,109,.42) !important;
  border-radius: 8px !important;
  font-weight: 800 !important;
  letter-spacing: .7px !important;
}
.site-footer {
  background: linear-gradient(145deg,#1b1a18,#0b0c0f) !important;
  border: 1px solid rgba(214,181,109,.28) !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.42) !important;
}

@media (max-width: 900px) {
  .grid { gap: 12px !important; }
}
@media (max-width: 600px) {
  .wrapper { width: calc(100% - 14px) !important; }
  .grid { gap: 8px !important; padding: 10px 2px 17px !important; }
  .cta-wrapper { margin: 17px auto 22px !important; padding: 15px 10px !important; }
  .btn-publicar,.btn-login-top { min-height: 42px !important; padding: 10px 12px !important; font-size: 12px !important; }
  .banner-top { margin: 15px 0 22px !important; }
  .banner-categoria { margin: 27px 0 10px !important; }
  .wrapper > div[style*="background:#000"] { margin-top: 22px !important; padding: 10px 6px !important; }
  .card .info { padding: 9px 4px 10px !important; }
  .card .info .nombre { font-size: 11.5px !important; }
  .card .info .ubicacion { font-size: 10px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .card,.btn-publicar,.btn-login-top { transition: none !important; }
  .card:hover,.btn-publicar:hover,.btn-login-top:hover { transform: none !important; }
}


/* ===== MARCOS SUAVES (CAPA PREVIA) ===== */

/* =============================================================
   MARCOS SUAVES POR CATEGORIA
   Se conserva como capa previa; la propuesta de acento superior
   que aparece al final establece el acabado definitivo.
   ============================================================= */
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card {
  border: 2px solid #9b855d !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.categoria-deluxe_internacionales .card {
  border: 2px solid #b09a70 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.categoria-amorosas_premium .card {
  border: 2px solid #777b80 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.categoria-amorosas_top .card {
  border: 2px solid #58728f !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.categoria-senoras_vip .card {
  border: 2px solid #a87952 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.categoria-senoras .card {
  border: 2px solid #874f55 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.categoria-deluxe_internacionales .card .media-box > img,
.categoria-deluxe_nacionales .card .media-box > img,
.categoria-extranjeras_vip .card .media-box > img,
.categoria-amorosas_premium .card .media-box > img,
.categoria-amorosas_top .card .media-box > img,
.categoria-senoras_vip .card .media-box > img,
.categoria-senoras .card .media-box > img {
  border: 0 !important;
}
.item-media img[src*="anuncia-n1.jpg"],
.item-media img[src*="alquiler12.jpg"] {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
.isotope-item:has(img[src*="anuncia-n1.jpg"]) .vertical-item,
.isotope-item:has(img[src*="anuncia-n1.jpg"]) .item-media,
.isotope-item:has(img[src*="anuncia-n1.jpg"]) .item-media img,
.isotope-item:has(img[src*="alquiler12.jpg"]) .vertical-item,
.isotope-item:has(img[src*="alquiler12.jpg"]) .item-media,
.isotope-item:has(img[src*="alquiler12.jpg"]) .item-media img {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}
.isotope-item:has(img[src*="anuncia-n1.jpg"]) .vertical-item::before,
.isotope-item:has(img[src*="anuncia-n1.jpg"]) .vertical-item::after,
.isotope-item:has(img[src*="alquiler12.jpg"]) .vertical-item::before,
.isotope-item:has(img[src*="alquiler12.jpg"]) .vertical-item::after {
  border: none !important;
  box-shadow: none !important;
  background: none !important;
}
.publicidad-card img {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}



/* ===== MARCOS OPCION 1: ACENTO SUPERIOR (CAPA FINAL) ===== */

/* =========================================================
   MARCOS - PROPUESTA 1: NEGRO CON ACENTO DE COLOR SUPERIOR
   Acabado final por categoría.
   ========================================================= */
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card,
.categoria-deluxe_internacionales .card,
.categoria-amorosas_premium .card,
.categoria-amorosas_top .card,
.categoria-senoras_vip .card,
.categoria-senoras .card {
  --marco-rgb: 180, 154, 101;
  border: 4.5px solid transparent !important;
  box-sizing: border-box !important;
  background:
    linear-gradient(#080808, #080808) padding-box,
    linear-gradient(
      to bottom,
      rgba(var(--marco-rgb), .95) 0%,
      rgba(var(--marco-rgb), .55) 24%,
      rgba(var(--marco-rgb), .20) 58%,
      #050505 100%
    ) border-box !important;
  box-shadow: none !important;
}
.categoria-deluxe_nacionales .card,
.categoria-extranjeras_vip .card { --marco-rgb: 180, 154, 101; }
.categoria-deluxe_internacionales .card { --marco-rgb: 192, 170, 125; }
.categoria-amorosas_premium .card { --marco-rgb: 146, 151, 156; }
.categoria-amorosas_top .card { --marco-rgb: 113, 139, 168; }
.categoria-senoras_vip .card { --marco-rgb: 177, 132, 94; }
.categoria-senoras .card { --marco-rgb: 152, 91, 98; }

.categoria-deluxe_nacionales .card .media-box > img,
.categoria-extranjeras_vip .card .media-box > img,
.categoria-deluxe_internacionales .card .media-box > img,
.categoria-amorosas_premium .card .media-box > img,
.categoria-amorosas_top .card .media-box > img,
.categoria-senoras_vip .card .media-box > img,
.categoria-senoras .card .media-box > img {
  border: 0 !important;
}

/* Ajustes confirmados de la página */
.btn-publicar,
.btn-login-top {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
section.legacy-box {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
.scroll-premium marquee span,
.scroll-deluxe marquee span {
  font-size: 18px !important;
  line-height: 1.4 !important;
}

/* Ubicación de sponsors: icono y texto juntos */
.sponsor-info .sponsor-location {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: 100%;
    gap: 7px;
    white-space: nowrap;
    position: static !important;
    margin: 5px auto 0 !important;
}

.sponsor-info .sponsor-location img {
    position: static !important;
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    object-fit: contain;
    flex-shrink: 0;
    margin: 0 !important;
}

.sponsor-info {
    text-align: center;
}

/* ===== AJUSTE FINAL DE NOMBRES Y UBICACIONES EN MÓVIL ===== */

@media (max-width: 768px) {

    /* Nombres de perfiles */
    .card .info .nombre {
        font-size: 15px !important;
        font-weight: 600;
    }

    /* Ubicaciones */
    .card .info .ubicacion {
        font-size: 14px !important;
        color: #ffffff !important;
        font-weight: 500;
    }

    /* Icono de ubicación */
    .card .info .ubicacion .icon-loc {
        width: 21px !important;
        height: 21px !important;
        min-width: 21px !important;
        max-width: 21px !important;
    }
}

/* SOLO TEXTO NEGRO EN PUBLICAR ANUNCIO */
.btn-publicar {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}

/* AJUSTE DE TEXTOS EN PC */
@media (min-width: 769px) {

    .card .info .nombre {
        font-size: 15px !important;
    }

    .card .info .ubicacion {
        font-size: 15px !important;
        color: #ffffff !important;
    }

}

/* TAMAÑO DEL CHECK DE VERIFICACIÓN */
.card .info .icon-verificada {
    width: 19px !important;
    height: 19px !important;
}

/* BLOQUEAR SELECCIÓN DE TEXTO Y ARRASTRE DE IMÁGENES */
body {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}

img {
    -webkit-user-drag: none !important;
    user-drag: none !important;
    pointer-events: none;
}

/* ===== AJUSTE DEFINITIVO CINTA NUEVA SOBRE EL MARCO ===== */

.card:has(.ribbon-right) {
    position: relative;
    overflow: visible !important;
}

.ribbon-right {
    position: absolute;
    top: -5px !important;
    right: -5px !important;
    z-index: 50 !important;
    pointer-events: none;
    line-height: 0;
}

.ribbon-right img {
    display: block;
    width: 90px;
    height: auto;
    max-width: none;
    border: none !important;
}

@media (max-width: 768px) {
    .ribbon-right img {
        width: 70px;
    }
}

/* La fotografía conserva su recorte */
.media-box {
    overflow: hidden;
}