/* =========================
   FICHA (Shortcodes Ultimate)
   ========================= */

.su-note.negocio{
  border:1px solid rgba(15,23,42,.10) !important;
  background:linear-gradient(180deg,#ffffff,#f8fbff) !important;
  border-radius:18px !important;
  padding:5px;
  box-shadow:0 10px 24px rgba(2,6,23,.10) !important;
  transition:box-shadow .3s ease, transform .3s ease !important;
  overflow:visible !important;
}

.su-note.negocio:hover{
  box-shadow:0 14px 30px rgba(2,6,23,.14) !important;
}

.negocio .su-note-inner{
  background:transparent !important;
  border-radius:18px !important;
  box-shadow:none !important;
  border:none !important;
}

/* =========================
   TOP (rank visual por borde) — SOLO Top 1/2/3
   ========================= */

.su-note.negocio.tlc-top-card-1{
  border-color:#03045E !important;
  box-shadow:0 16px 42px rgba(0,0,0,.24) !important;
}

.su-note.negocio.tlc-top-card-2{
  border-color:#1155a6 !important;
}

.su-note.negocio.tlc-top-card-3{
  border-color:#2471a3 !important;
}

/* Titulares */
.negocio h2:before{
  display:none !important;
}

.negocio h2{
  margin-top:.5rem !important;
  margin-bottom:1rem !important;
  background:#03045E;
  padding:10px 20px;
  color:#fff;
  border-radius:16px;
  box-shadow:0 4px 12px rgba(0,0,0,.3);
}

/* Iconos */
.negocio i.sui,
.negocio .su-service-title{
  color:#03045E !important;
}

/* Botones */
.negocio .su-button-center a{
  background:#03045E !important;
}

.negocio .su-button{
  border:0;
}

.negocio .su-button a{
  background:#0096c7 !important;
  color:#fff !important;
  border-radius:16px;
  box-shadow:0 4px 12px rgba(0,0,0,.3);
}

.su-button.mybutton span i{
  color:#fff !important;
}


/* =========================
   TOP BADGES
   ========================= */

.tlc-top-badge{
  background:#ffffff !important;
  border:2px solid rgba(3,4,94,.22) !important;
  color:#03045E !important;
  box-shadow:0 6px 16px rgba(0,0,0,.10) !important;
  font-size:13px !important;
}

.tlc-top-badge.top-1{
  border-color:rgba(3,4,94,.30) !important;
  background:#f6fbff !important;
}

/* =========================
   Badge roseta + shape
   ========================= */

.bloque-info{
  position:relative;
  padding-right:0;
  overflow:visible;
}

.badge-roseta{
  position:absolute;
  top:0;
  right:-8px;
  width:110px;
  height:110px;
  border-radius:50%;
  background:
    url("https://ropalaboralinfo.com/wp-content/uploads/2026/04/casco.svg") no-repeat center 46%,
    rgba(255,255,255,.92);
  background-size:82%, cover;
  border:2px solid rgba(3,4,94,.10);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  pointer-events:none;
  z-index:2;
  overflow:hidden;
  box-shadow:
    0 8px 20px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.7);
}

.badge-roseta::before,
.badge-roseta::after{
  content:none !important;
}

.badge-roseta__cinta-der{
  display:none !important;
}

.badge-roseta__numero{
  position:absolute;
  top:53%;
  left:50%;
  transform:translate(-50%,-50%);
  font-weight:900;
  font-size:2rem !important;
  line-height:1;
  letter-spacing:.02em;
  margin:0;
  color:#fff;
  text-shadow:
    0 2px 5px rgba(0,0,0,.55),
    0 0 3px rgba(0,0,0,.35) !important;
  white-space:nowrap;
  display:block;
  z-index:2;
}

.bloque-info .su-service:nth-of-type(2){
  position:relative;
}

.bloque-info .su-service:nth-of-type(2)::before{
  content:"";
  float:right;
  display:block;
  width:120px;
  height:120px;
  shape-outside:circle(50% at 50% 50%);
  -webkit-shape-outside:circle(50% at 50% 50%);
  shape-margin:0;
}

@supports not (shape-outside:circle(50%)){
  .bloque-info .su-service:nth-of-type(2){
    padding-right:130px;
  }
}

.su-note.negocio .wp-block-columns.info-columns{
  align-items:flex-start !important;
  overflow:visible !important;
}

.su-note.negocio .wp-block-column{
  overflow:visible !important;
}

@media (max-width:520px){
  .badge-roseta{
    width:90px;
    height:90px;
    right:-6px;
    background:
      url("https://ropalaboralinfo.com/wp-content/uploads/2026/04/casco.svg") no-repeat center 46%,
      rgba(255,255,255,.92);
    background-size:80%, cover;
  }

  .bloque-info .su-service:nth-of-type(2)::before{
    width:95px;
    height:95px;
    shape-outside:circle(50% at 50% 50%);
    -webkit-shape-outside:circle(50% at 50% 50%);
  }

  @supports not (shape-outside:circle(50%)){
    .bloque-info .su-service:nth-of-type(2){
      padding-right:105px;
    }
  }

  .badge-roseta__numero{
    top:54%;
    font-size:1.6rem !important;
  }
}

/* PC: reducir hueco bajo el badge en "Dirección" */
@media (min-width:1024px){
  .bloque-info .su-service:nth-of-type(2)::before{
    width:118px;
    height:118px;
    margin:-4px 0 -10px 10px;
    shape-outside:circle(50% at 50% 50%);
    -webkit-shape-outside:circle(50% at 50% 50%);
    shape-margin:2px;
    background:linear-gradient(transparent,transparent);
  }

  .bloque-info .su-service:nth-of-type(2){
    margin-top:6px !important;
    margin-bottom:-12px !important;
  }

  .bloque-info .su-service:nth-of-type(2) .su-service-content,
  .bloque-info .su-service:nth-of-type(2) .su-service-content > p{
    margin:2px 0 !important;
    line-height:1.25 !important;
  }

  @supports not (shape-outside:circle(50% at 50% 50%)){
    .bloque-info .su-service:nth-of-type(2){
      padding-right:126px !important;
    }
  }
}

/* =========================
   Iconos: estrellas + ubicación
   ========================= */

.negocio .su-service i.fa.fa-star,
.negocio .su-service i.fa-star,
.negocio .su-service i.fas.fa-star,
.negocio .su-service i.fa-solid.fa-star,
.negocio .su-service i.sui.sui-star,
.negocio .su-service i.sui.icon-star{
  color:var(--star-color) !important;
}

.negocio .su-service i.fa.fa-map-marker,
.negocio .su-service i.fa-map-marker,
.negocio .su-service i.fas.fa-map-marker,
.negocio .su-service i.fa-map-marker-alt,
.negocio .su-service i.fa-location-dot,
.negocio .su-service i.sui.sui-map-marker,
.negocio .su-service i.sui.icon-map-marker,
.negocio .su-service i.sui.sui-location,
.negocio .su-service i.sui.icon-location{
  color:var(--location-color) !important;
}

.negocio .su-service i.fa.fa-phone,
.negocio .su-service i.fa-phone,
.negocio .su-service i.sui.sui-phone,
.negocio .su-service i.sui.icon-phone{
  color:#2471a3 !important;
}

.negocio .su-service i.fa.fa-clock-o,
.negocio .su-service i.fa-clock-o,
.negocio .su-service i.sui.sui-clock-o,
.negocio .su-service i.sui.icon-clock-o{
  color:#2471a3 !important;
}

.negocio .su-service i.fa.fa-info-circle,
.negocio .su-service i.fa-info-circle,
.negocio .su-service i.sui.sui-info-circle,
.negocio .su-service i.sui.icon-info-circle{
  color:#2471a3 !important;
}


/* =========================================================
   LISTADOS (city listing real)
   ========================================================= */

body.is-city-listing .su-note.negocio{
  padding:8px !important;
}

body.is-city-listing .su-note.negocio .su-note-inner{
  padding:12px !important;
}

/* Mantener roseta visible */
body.is-city-listing .su-note.negocio .bloque-info{
  position:relative !important;
  overflow:visible !important;
}

body.is-city-listing .su-note.negocio .badge-roseta{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  z-index:50 !important;
}

/* Tabs fuera en listados */
body.is-city-listing .su-note.negocio .su-tabs-nav{
  display:none !important;
}

body.is-city-listing .su-note.negocio .su-tabs-pane{
  border-radius:16px !important;
}



/* =========================================================
   BADGE CONFIANZA
   ========================================================= */

.tlc-badge-confianza{
  background:#FFFFFF;
  border:1px solid rgba(3,4,94,.14);
  border-left:6px solid #03045E;
  border-radius:14px;
  padding:12px 14px;
  margin:16px 0 18px 0;
  font-size:14px;
  line-height:1.55;
  box-shadow:0 10px 22px rgba(0,0,0,.06);
  color:#111;
}

.tlc-badge-confianza__top{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
}

.tlc-badge-confianza__title{
  font-weight:900;
  color:#03045E;
  letter-spacing:.2px;
}

.tlc-badge-confianza__meta{
  font-size:12px;
  font-weight:900;
  color:#03045E;
  background:rgba(3,4,94,.06);
  border:1px solid rgba(3,4,94,.14);
  border-radius:999px;
  padding:6px 10px;
  white-space:nowrap;
}

.tlc-badge-confianza__body{
  margin-top:8px;
}

.tlc-badge-confianza__body strong{
  color:#03045E;
  font-weight:900;
}



/* RLI 5.9.2: layout de tarjetas sin estilos inline repetidos */
.su-note.negocio .wp-block-columns.info-columns{
  display:flex;
  gap:20px;
  align-items:flex-start;
  flex-wrap:wrap;
}

.su-note.negocio .rli-card-media{
  flex:0 0 320px;
  max-width:320px;
}

.su-note.negocio .rli-card-details{
  flex:1 1 320px;
  min-width:260px;
}

.su-note.negocio .rli-card-image{
  margin:0;
}

.su-note.negocio .rli-card-img{
  max-width:100%;
  height:auto;
}

.su-note.negocio .rli-card-info{
  width:100%;
}
