/* Shared presentation for the four dog/litter listing pages. */
.camadas-listado{--vv-brown:#5b3922;--vv-dark:#3d2f22;--vv-text:#514b45;--vv-green:#6b7d50;width:min(100%,1220px);margin-right:auto;margin-left:auto;box-sizing:border-box}
.camadas-listado .view-header .vv-cachorros-hero{margin-bottom:34px}
.camadas-listado .view-header .vv-cachorros-hero h1{color:var(--vv-dark);margin-bottom:20px}
.camadas-listado .views-view-responsive-grid{gap:28px!important;row-gap:32px!important;align-items:stretch}
.camadas-listado .view-content>h3{display:flex;align-items:center;gap:14px;margin:42px 0 18px;color:var(--vv-dark);font-family:Georgia,"Times New Roman",serif;font-size:clamp(27px,3vw,36px);line-height:1.1}
.camadas-listado .view-content>h3:after{flex:1;height:1px;content:"";background:linear-gradient(90deg,rgba(132,106,76,.38),transparent)}
.camadas-listado .views-view-responsive-grid__item{overflow:hidden;height:100%;padding:0;background:#fff;border:1px solid rgba(80,60,35,.12);border-radius:20px;box-shadow:0 12px 30px rgba(60,45,25,.09);text-align:center;transition:transform .22s ease,box-shadow .22s ease}
.camadas-listado .views-view-responsive-grid__item:hover{box-shadow:0 17px 38px rgba(60,45,25,.14);transform:translateY(-4px)}
.camadas-listado .views-view-responsive-grid__item-inner{display:flex;flex-direction:column;height:100%}
.camadas-listado .views-field-nothing{padding:24px 22px 0;font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.2;font-weight:700}
.camadas-listado .views-field-nothing a{color:var(--vv-dark);text-decoration:none}.camadas-listado .views-field-nothing a:hover{color:var(--vv-brown)}
.camadas-listado .vdlm-cruce{color:var(--vv-green);font-weight:400}
.camadas-listado .views-field-field-monta,.camadas-listado .views-field-field-parto{min-height:22px;margin:9px 0 0;padding:0 22px;color:#6d6a64;font-size:14px;line-height:1.5}
.camadas-listado .views-field-field-photo{margin:19px 0 0}.camadas-listado .views-field-field-photo a,.camadas-listado .views-field-field-photo img{display:block;width:100%}
.camadas-listado .views-field-field-photo img{height:auto;aspect-ratio:auto;margin:0!important;object-fit:contain;object-position:center;background:#f7f3eb}
.camadas-listado .views-field-field-cachorros{flex:1;margin:0;padding:18px 22px 22px;color:#65615b;background:rgba(247,239,227,.48);border-top:1px solid rgba(80,60,35,.08);font-size:14px;line-height:1.65}
.camadas-listado .views-field-field-cachorros a{color:var(--vv-brown);font-weight:600;text-decoration:none}.camadas-listado .views-field-field-cachorros a:hover{text-decoration:underline}
.camadas-programadas .views-view-responsive-grid__item{padding-bottom:0}
@media(max-width:700px){.camadas-listado{padding-right:11px;padding-left:11px}.camadas-listado .view-header .vv-cachorros-hero{padding:30px 16px 32px}.camadas-listado .views-view-responsive-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}.camadas-listado .views-field-nothing{padding:21px 17px 0;font-size:21px}.camadas-listado .views-field-field-cachorros{padding:16px 17px 19px}}

/* Cuatro tarjetas por fila y filas incompletas centradas. */
.camadas-listado .views-view-responsive-grid{display:flex!important;flex-wrap:wrap;justify-content:center;gap:24px 20px!important}
.camadas-listado .views-view-responsive-grid__item{flex:0 1 calc((100% - 60px)/4);width:calc((100% - 60px)/4);max-width:290px;min-width:0}
.camadas-listado .views-field-field-photo{overflow:hidden;margin:19px 14px 16px;border-radius:12px}
.camadas-listado .views-field-field-cachorros:has(.field-content:empty){display:none}
.camadas-listado .views-field-field-cachorros:not(:has(.field-content:empty)){margin-top:0}
@media(max-width:1000px){.camadas-listado .views-view-responsive-grid__item{flex-basis:calc((100% - 20px)/2);width:calc((100% - 20px)/2);max-width:430px}}
@media(max-width:700px){.camadas-listado .views-view-responsive-grid{gap:18px!important}.camadas-listado .views-view-responsive-grid__item{flex-basis:min(100%,430px);width:min(100%,430px);max-width:430px}.camadas-listado .views-field-field-photo{margin-right:11px;margin-left:11px}}

/* Keep available-puppy cards aligned while their portrait is pending. */
.view-cachorros-disponibles .node-type-ficha > .node-content > .layout:first-child > .layout__region--second:not(:has(.field--name-field-foto img)){
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:260px;
  box-sizing:border-box;
  border-radius:12px;
  color:#8a7a65;
  background:linear-gradient(145deg,#f4efe7,#e9e2d7);
  text-align:center;
}
.view-cachorros-disponibles .node-type-ficha > .node-content > .layout:first-child > .layout__region--second:not(:has(.field--name-field-foto img))::before{
  margin-bottom:12px;
  content:"🐾";
  font-size:32px;
  line-height:1;
  filter:grayscale(1);
  opacity:.72;
}
.view-cachorros-disponibles .node-type-ficha > .node-content > .layout:first-child > .layout__region--second:not(:has(.field--name-field-foto img))::after{
  content:"Foto pendiente";
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
html[lang="en"] .view-cachorros-disponibles .node-type-ficha > .node-content > .layout:first-child > .layout__region--second:not(:has(.field--name-field-foto img))::after{content:"Photo pending"}
html[lang="fr"] .view-cachorros-disponibles .node-type-ficha > .node-content > .layout:first-child > .layout__region--second:not(:has(.field--name-field-foto img))::after{content:"Photo à venir"}
@media(max-width:700px){.view-cachorros-disponibles .node-type-ficha > .node-content > .layout:first-child > .layout__region--second:not(:has(.field--name-field-foto img)){min-height:230px}}
