/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/

.corso-descrizione {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.6em;
  max-height: 8em; /* opzionale per compatibilità */
}

.archive-corso {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
}
.corso-box {
    display: flex;
    flex-direction: column;
    margin-bottom: 60px;
}
.corso-img,
.corso-info {
    width: 100%;
}
.corso-img img {
    width: 100%;
    border-radius: 8px;
    margin-bottom: 20px;
    height: auto;
}
.corso-info {
    color: white;
}
.corso-info h2 {
    font-size: 24px;
    margin-bottom: 10px;
}
.corso-info p {
    margin-bottom: 8px;
    line-height: 1.5;
}
.corso-info strong {
    font-weight: bold;
}
.corso-info ul {
    margin: 10px 0 20px 0;
    padding-left: 20px;
}
.button-iscriviti {
    display: inline-block;
    text-decoration: none;
    border-radius: 30px;
    margin-top: 20px;
    position: relative;
    color: black;
    text-decoration: none;
}
.button-iscriviti::after {
    content: "→";
    margin-left: 10px;
}
.button-iscriviti::hover {
    text-decoration: underline;
}

.filtro-corsi {
    position: sticky;
    top: 0;
    z-index: 99;
    background: #fff;
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    border-bottom: 1px solid #ccc;
}
.filtro-corsi select,
.filtro-corsi button {
    padding: 10px;
    border-radius: 6px;
    border: 1px solid #ccc;
    font-size: 16px;
    flex: 1 1 100%;
}
@media (min-width: 600px) {
    .filtro-corsi select,
    .filtro-corsi button {
        flex: 1 1 auto;
    }
}


@media screen and (min-width: 768px) {
    .corso-box {
        flex-direction: row;
        align-items: center;
    }
    .corso-box:nth-child(even) {
        flex-direction: row-reverse;
    }
    .corso-img,
    .corso-info {
        width: 50%;
        padding: 0 20px;
    }
}

.info-corso-woocommerce {
    margin-top: 20px;
}

.info-corso-woocommerce p {
    margin-bottom: 10px;
}

.custom-stock-available {
    color: #2ecc71; /* verde */
    font-weight: 600;
}

.custom-stock-unavailable {
    color: #e74c3c; /* rosso */
    font-weight: 600;
}
.corsi-docente {
    padding: 60px 20px;
    background: #fff;
    text-align: center;
}

.corsi-docente .item h3 {
    font-size: 18px;
    margin: 10px 0 5px;
}

.corsi-docente .item .button-info {
    display: inline-block;
    margin-top: 5px;
    color: #f60;
    font-weight: bold;
}

.docente-header {
    margin-top:50px;
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.logo-docente {
    max-height: 40px;
    max-width: 100px;
    height: auto;
    width: auto;
}

.docenti-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
}

.docente-img {
  width: 100%;
  aspect-ratio: 4 / 3; /* oppure 1 / 1 per quadrate */
  overflow: hidden;
}

.docente-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}



.docente-card {
padding: 20px;
border-radius: 10px;
text-align: center;
box-shadow: 0 2px 10px rgba(0,0,0,0.05);
transition: all 0.3s ease;
}


.docente-card:hover {
transform: translateY(-5px);
box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}


.docente-thumb img {
border-radius: 5px;
margin-bottom: 15px;
}


.docente-name {
font-size: 20px;
margin-bottom: 5px;
}


.docente-tipologia {
font-size: 14px;
color: #888;
margin-top: 0;
}


/*Carosello corsi pagina docente*/

.owl-corsi-docente .corso-slide {
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    text-align: center;
}

.corso-thumb img {
    width: 100%;
    height: auto;
    border-radius: 6px;
}

.corso-titolo {
    font-size: 18px;
    margin: 15px 0 10px;
}

.corso-prezzo {
    font-weight: bold;
    margin-bottom: 10px;
}

.prezzo-scontato {
    color: #FFD500;
}

.corso-btns a {
    display: inline-block;
    margin: 0 5px;
}

/* griglia quando i corsi sono < 4 */
.owl-corsi-docente.static-grid{
  display:grid;
  gap:24px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  justify-content:center;
}
.owl-corsi-docente.static-grid.count-1{max-width:380px;  margin-inline:auto;}
.owl-corsi-docente.static-grid.count-2{max-width:820px;  margin-inline:auto;}
.owl-corsi-docente.static-grid.count-3{max-width:1200px; margin-inline:auto;}

/* proporzioni immagine */
.corso-thumb{aspect-ratio:1/1; overflow:hidden; border-radius:16px; margin-bottom:16px;}
.corso-thumb img{width:100%; height:100%; object-fit:cover; display:block;}


/*Related products*/

/* Griglia centrata quando i correlati sono < 4 */
.related-list.static-grid{
  display:grid;
  gap:24px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  justify-content:center;
}
.related-list.static-grid.count-1{max-width:380px;  margin-inline:auto;}
.related-list.static-grid.count-2{max-width:820px;  margin-inline:auto;}
.related-list.static-grid.count-3{max-width:1200px; margin-inline:auto;}

/* Card */
.related-card{display:flex; flex-direction:column;}
.related-thumb{aspect-ratio:1/1; overflow:hidden; border-radius:16px; display:block;}
.related-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.related-title{font-size:1.125rem; line-height:1.2; margin:.75rem 0 .25rem;}
.related-price{font-weight:600; margin-bottom:.75rem;}
.related-cta{display:flex; gap:.75rem; align-items:center;}
/* Bottoni: usa le tue classi esistenti */
.button-iscriviti{display:inline-flex; align-items:center; gap:.5rem; padding:.9rem 1.25rem; border-radius:999px;}
.button-info{padding:.6rem .9rem; border-radius:999px;}

.related-cta {
  display:flex;
  gap:.75rem;
  align-items:center;
  margin-top: 20px;
}

.related-cta .button-iscriviti {
    margin-top: 0px;
}
