/*
Theme Name: Impero Romano Child V42.35 Foto secondo CAC Nausicaa
Template: allevamento-impero-romano-v17-fullscreen
Description: Mantiene la homepage V18 e applica automaticamente la grafica Villa Livia a tutte le pagine interne.
Version: 42.35
*/


/* V28 - immagini interne responsive, anche contro gli style inline dell'editor */
@media (max-width: 768px){
  body .villa-content img,
  body .villa-content img.alignleft,
  body .villa-content img.alignright,
  body .villa-content img.aligncenter,
  body .villa-content p img,
  body .villa-content div img {
    float:none !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    margin:18px auto 22px !important;
  }
  body .villa-content div[style]{
    overflow:visible !important;
  }
}


/* impero-child-menu-mobile-v401 - solo menu pagine interne */
@media (max-width:900px){
 .impero-child-menu{
   display:grid!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:6px!important;
   padding:8px!important;
 }
 .impero-child-menu a{
   display:flex!important;
   align-items:center!important;
   justify-content:center!important;
   min-height:42px!important;
   text-align:center!important;
   border:1px solid #c79a43!important;
   border-radius:5px!important;
   padding:8px 5px!important;
   font-size:12px!important;
   line-height:1.15!important;
   background:#700016!important;
   color:#f6df9f!important;
 }
}


/* V40.2 - menu interno mobile: correzione definitiva */
@media (max-width:900px){
  .impero-child-menu,
  .impero-child-menu ul,
  .impero-page-nav,
  .v19-page-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }

  .impero-child-menu a,
  .impero-page-nav a,
  .v19-page-nav a{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    text-align:center!important;
    padding:8px 5px!important;
    border:1px solid #c79a43!important;
    border-radius:5px!important;
    line-height:1.15!important;
  }
}


/* V40.4 - correzione menu reale pagine interne */
@media (max-width:900px){

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

.villa-nav a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    padding:10px 5px !important;
    border:1px solid #c79a43 !important;
    border-radius:5px !important;
    line-height:1.2 !important;
}

}


/* V40.5 - link menu villa-nav mobile */
@media(max-width:900px){

.villa-nav{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
}

.villa-nav a{
    width:50% !important;
    box-sizing:border-box !important;
    text-align:center !important;
    padding:10px 5px !important;
}

}


/* V40.6 - villa nav mobile grid definitivo */
@media(max-width:900px){

body .villa-page .villa-nav{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    align-items:stretch !important;
    justify-content:initial !important;
    gap:6px !important;
}

body .villa-page .villa-nav a{
    width:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

}


/* V40.7 - villa nav mobile definitivo */
@media(max-width:900px){
 body .villa-page .villa-nav{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
 }
 body .villa-page .villa-nav a{
    width:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
 }
}


/* V40.8 - villa nav forza colonne */
@media (max-width:900px){

body .villa-page nav.villa-nav{
    display:grid !important;
    grid-template-columns:repeat(2, 1fr) !important;
    grid-auto-flow:row !important;
    width:100% !important;
}

body .villa-page nav.villa-nav a{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    flex:none !important;
}

}


/* V40.9 - villa nav markup override */
@media (max-width:900px){

body .villa-page .villa-nav{
    display:flex !important;
    flex-wrap:wrap !important;
    flex-direction:row !important;
    align-items:stretch !important;
}

body .villa-page .villa-nav > a{
    flex:0 0 50% !important;
    width:50% !important;
    max-width:50% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
}

}


/* ============================================================
   V42 - PAGINA LE NOSTRE FEMMINE
   Solo contenuto interno: header Villa Livia, menu e footer restano
   quelli standard di page.php del child theme.
   ============================================================ */
.femmine-intro{
  max-width:900px;
  margin:0 auto 34px;
  text-align:center;
}
.femmine-intro p{margin:0}
.femmine-ornamento{
  color:#c79a43;
  letter-spacing:.35em;
  text-align:center;
  margin:10px 0 16px;
  font-size:20px;
}
.femmine-lista{
  display:grid;
  gap:34px;
}
.femmina-card{
  background:#fffaf0;
  border:1px solid #c79a43;
  box-shadow:0 0 0 5px #fff8e8,0 0 0 6px rgba(199,154,67,.65);
  overflow:hidden;
}
.femmina-card-header{
  background:linear-gradient(#7b1118,#590b0f);
  border-bottom:3px solid #c79a43;
  color:#f7e1a4;
  text-align:center;
  padding:16px 20px 14px;
}
.villa-content .femmina-card-header h2{
  color:#f7e1a4;
  margin:0;
  font-size:30px;
  line-height:1.2;
}
.femmina-sottotitolo{
  margin-top:5px;
  font-size:14px;
  letter-spacing:.04em;
}
.femmina-card-body{
  display:grid;
  grid-template-columns:minmax(230px,34%) 1fr;
  gap:28px;
  padding:26px;
}
.femmina-photo-placeholder{
  min-height:330px;
  border:1px solid #c79a43;
  background:linear-gradient(135deg,#eee0c2,#fff8e8);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#816b49;
  font-style:italic;
  padding:0;
  position:relative;
  overflow:hidden;
}
.femmina-photo-placeholder:before,
.femmina-photo-placeholder:after{
  content:"❦";
  position:absolute;
  color:#c79a43;
  font-size:25px;
}
.femmina-photo-placeholder:before{top:9px;left:11px}
.femmina-photo-placeholder:after{right:11px;bottom:9px;transform:rotate(180deg)}
.femmina-photo{
  width:100%;
  height:100%;
  min-height:330px;
  object-fit:cover;
  margin:0!important;
  display:block;
}
.femmina-dati{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 22px;
  margin-bottom:18px;
}
.femmina-dato{
  border-bottom:1px solid rgba(199,154,67,.35);
  padding:7px 0 9px;
  line-height:1.45;
}
.femmina-dato strong{
  display:block;
  color:#700016;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.villa-content .femmina-sezione h3{
  color:#700016;
  border-bottom:1px solid #c79a43;
  padding-bottom:5px;
  margin:20px 0 10px;
  font-size:22px;
}
.femmina-pedigree{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 16px;
}
.femmina-pedigree > div{
  background:#f2e6cf;
  border-left:3px solid #c79a43;
  padding:9px 12px;
  line-height:1.45;
}
.femmina-carriera{
  background:#f4e9d4;
  border:1px solid rgba(199,154,67,.65);
  padding:13px 15px;
}
.femmina-carriera p{margin:0 0 7px}
.femmina-carriera ul{margin:6px 0 8px 20px}
.femmina-cac{
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:9px;
  font-size:14px;
  color:#735f40;
}
.femmina-cac span.punto{
  display:inline-block;
  width:36px;
  height:10px;
  border:1px solid #c79a43;
  border-radius:8px;
}
.femmina-cac span.punto.ok{background:#c79a43}
@media(max-width:800px){
  .femmina-card-body{grid-template-columns:1fr;padding:18px}
  .femmina-dati,.femmina-pedigree{grid-template-columns:1fr}
  .femmina-photo-placeholder{min-height:280px}
  .femmina-photo{min-height:280px}
  .villa-content .femmina-card-header h2{font-size:25px}
}


/* ============================================================
   V42.7 - CORREZIONE FOTO PAGINA FEMMINE
   - Ksyusha: foto con altezza controllata e colonna dati stabile
   - Nec Plus Ultra: immagine intera visibile, senza ritaglio
   - Kalina: mantiene l'impostazione precedente
   ============================================================ */

.femmina-card-body{
  grid-template-columns:320px minmax(0,1fr) !important;
  align-items:start !important;
}

.femmina-card-body > div:last-child{
  min-width:0 !important;
}

.femmina-photo-placeholder{
  width:100% !important;
  height:360px !important;
  min-height:360px !important;
  align-self:start !important;
}

.femmina-photo{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  margin:0 !important;
  display:block !important;
}

/* Ksyusha: mantiene il taglio fotografico ma senza alterare il layout */
#xyusha .femmina-photo{
  object-fit:cover !important;
  object-position:center center !important;
}

/* Nec Plus Ultra: mostra tutta la fotografia nel riquadro */
#nec-plus-ultra .femmina-photo{
  object-fit:contain !important;
  object-position:center center !important;
  background:#f3e7d1 !important;
}

/* Kalina resta come prima */
#kalina .femmina-photo{
  object-fit:cover !important;
  object-position:center center !important;
}

@media(max-width:800px){
  .femmina-card-body{
    grid-template-columns:1fr !important;
  }
  .femmina-photo-placeholder{
    height:auto !important;
    min-height:0 !important;
  }
  .femmina-photo{
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
  }
}


/* V42.8 - struttura definitiva femmine */
.femmina-card-body-v428{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  gap:28px !important;
  padding:26px !important;
}
.femmina-photo-col-v428{
  flex:0 0 300px !important;
  width:300px !important;
  max-width:300px !important;
}
.femmina-info-col-v428{
  flex:1 1 auto !important;
  min-width:0 !important;
  width:auto !important;
}
.femmina-photo-box-v428{
  width:300px !important;
  height:360px !important;
  border:1px solid #c79a43 !important;
  background:#f3e7d1 !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.femmina-photo-box-v428 img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  max-width:none !important;
}
#xyusha .femmina-photo-box-v428 img{
  object-fit:cover !important;
  object-position:center center !important;
}
#nec-plus-ultra .femmina-photo-box-v428 img{
  object-fit:contain !important;
  object-position:center center !important;
}
#kalina .femmina-photo-box-v428 img{
  object-fit:cover !important;
  object-position:center center !important;
}
@media(max-width:800px){
  .femmina-card-body-v428{
    flex-direction:column !important;
  }
  .femmina-photo-col-v428,
  .femmina-photo-box-v428{
    width:100% !important;
    max-width:100% !important;
  }
  .femmina-photo-box-v428{
    height:auto !important;
  }
  .femmina-photo-box-v428 img{
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
  }
}


/* V42.11 - PAGINA SALUTE: immagini più piccole solo su desktop */
@media (min-width: 801px){
  .villa-content-salute img{
    width:auto !important;
    max-width:68% !important;
    height:auto !important;
    display:block !important;
    margin:24px auto 28px !important;
  }
}


/* V42.12 - PAGINA SALUTE: immagini circa metà larghezza su desktop */
@media (min-width: 801px){
  .villa-content-salute img{
    width:auto !important;
    max-width:50% !important;
    height:auto !important;
    display:block !important;
    margin:24px auto 28px !important;
  }
}


/* V42.13 - PAGINA SALUTE: immagini desktop al 34% */
@media (min-width: 801px){
  .villa-content-salute img{
    width:auto !important;
    max-width:34% !important;
    height:auto !important;
    display:block !important;
    margin:24px auto 28px !important;
  }
}

/* V42.25 - prossimo appuntamento in mostra */
.impero-prossima-mostra{
  max-width:920px;
  margin:0 auto 32px;
  padding:22px 24px;
  background:#fbf4e7;
  border:1px solid rgba(185,140,39,.65);
  border-left:5px solid #6f101b;
  box-shadow:0 8px 22px rgba(67,38,22,.08);
}
.impero-prossima-mostra h2{
  margin:0 0 10px;
  color:#6f101b;
}
.impero-prossima-mostra p{
  margin:0;
}

/* V42.28: foto originali, ritaglio ottico solo via CSS */
body.page .impero-v4228-stato{font-weight:700;color:#76121f;}

/* V42.32 - nuovo risultato Expo, foto originale non ritoccata */
.impero-risultato-nausicaa-2026{
  max-width:920px;margin:0 auto 34px;padding:clamp(20px,4vw,38px);
  background:#fbf4e7;border:1px solid #b59046;border-top:5px solid #76121f;
  box-shadow:0 8px 22px rgba(67,38,22,.09);text-align:center;
  font-family:Georgia,'Times New Roman',serif;
}
.impero-risultato-nausicaa-2026 h2{color:#76121f;margin:0 0 20px;line-height:1.3;}
.impero-risultato-nausicaa-2026 figure{margin:0 auto 20px;max-width:450px;}
.impero-risultato-nausicaa-2026 img{
  display:block;width:100%;height:auto;border:8px solid #fffaf0;
  box-shadow:0 0 0 1px #b59046,0 6px 20px rgba(0,0,0,.12);
}
.impero-risultato-nausicaa-2026 figcaption{font-size:.9rem;color:#765c40;margin-top:10px;}
.impero-risultato-nausicaa-2026 p{font-size:1.12rem;line-height:1.65;margin:12px 0;}

/* V42.34 - notizia più recente sopra il primo C.A.C. */
.impero-nausicaa-secondo-cac-2026{
  max-width:920px;margin:0 auto 24px;padding:clamp(20px,4vw,34px);
  background:#fbf4e7;border:1px solid #b59046;border-top:5px solid #76121f;
  box-shadow:0 8px 22px rgba(67,38,22,.09);text-align:center;
  font-family:Georgia,'Times New Roman',serif;
}
.impero-nausicaa-secondo-cac-2026 h2{color:#76121f;margin:0 0 14px;line-height:1.3;}
.impero-nausicaa-secondo-cac-2026 p{font-size:1.12rem;line-height:1.65;margin:12px 0;}
.impero-nausicaa-secondo-cac-2026 figure{max-width:450px;margin:0 auto 20px;}
.impero-nausicaa-secondo-cac-2026 img{
  display:block;width:100%;height:auto;border:8px solid #fffaf0;
  box-shadow:0 0 0 1px #b59046,0 6px 20px rgba(0,0,0,.12);
}
.impero-nausicaa-secondo-cac-2026 figcaption{font-size:.9rem;color:#765c40;margin-top:10px;}
