/**
 * @file
 * Subtheme specific CSS.
 */

/**********************
           CDL
  **********************/

/* Header */
#header {
  border-top: 8px solid rgb(29 113 184);
}

.icon_amaranto,
.search img,
.ultimenu__item.has-ultimenu a.ultimenu__link:after,
.ultimenu-content .close-button img {
  filter: brightness(0) saturate(100%) invert(29%) sepia(97%) saturate(865%)
    hue-rotate(179deg) brightness(101%) contrast(88%);
}

#header .sitename,
.lingua-select a {
  color: #1d71b8 !important;
}

.ultimenu__item a.ultimenu__link {
  right: -7px;
}

@media (min-width: 48em) {
  .ultimenu__item a.ultimenu__link {
    right: -8px;
  }
}

.main_hero {
  margin: auto;
  z-index: 1;
}

.full-width.main_bg {
  display: flex;
  flex-direction: column;
}

.full-width.main_bg > section.row {
  overflow: hidden;
}

.full-width.main_bg {
  position: relative;
  min-height: 25rem;
}

.main_hero {
  margin: auto;
  position: static;
  width: 100%;
  bottom: 0;
  left: 0;
  transform: unset;
}

.full-width.main_bg > section.row {
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.call-to-action .field__item a,
[id*="ultimenu-main"] .menu--utility li {
  background-color: rgb(29 113 184) !important;
}

@media (min-width: 48em) {
  .full-width.main_bg {
    min-height: 27rem;
  }
}

@media (min-width: 48em) {
  .full-width.main_bg {
    min-height: 36rem;
  }
}

@media (min-width: 64em) {
  .call-to-action .field__item {
    background-color: transparent !important;
  }
}

@media (min-width: 64em) {
  .main_hero {
    margin: auto;
    position: static;
    width: 100%;
    bottom: 0;
    left: 0;
    transform: unset;
  }
}

@media (min-width: 75em) {
  .full-width.main_bg {
    min-height: 43rem;
  }
}

@media (min-width: 87.5em) {
  .full-width.main_bg {
    top: 0;

    min-height: 50rem;
  }
}

@media (min-width: 100em) {
  .call-to-action {
    margin-top: 4rem;
  }
}

/* Info corso */
.info-corso {
  margin-top: 3rem !important;
}

.info-corso h2 {
  text-align: center;
  margin-bottom: 3rem;
  font-weight: 600;
}

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

.info-corso__label {
  margin-bottom: 0.6rem;
  font-size: 2.1rem;
  font-weight: 100;
}

.info-corso__dati,
.info-corso__dati p {
  display: inline-flex;
  margin-bottom: 0;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.15;
  word-break: break-word;
}

.info-corso__dati {
  margin-bottom: 3rem;
}
@media (min-width: 48em) {
  .info-corso__info.row {
    --bs-gutter-x: 3rem;
    text-align: left;
  }

  .info-corso__label {
    margin-bottom: 1.1rem;
    font-size: 2.4rem;
  }

  .info-corso__dati,
  .info-corso__dati p {
    font-size: 2.8rem;
    font-weight: 900;
    padding-right: 1rem;
  }

  .info-corso__dati:before {
    content: "";
    display: inline-block;
    height: 44px;
    margin-right: 2rem;
    background-repeat: no-repeat;
    background-position: center;
    filter: brightness(0) saturate(100%) invert(36%) sepia(50%) saturate(1246%)
      hue-rotate(174deg) brightness(93%) contrast(92%);
  }

  .info-corso .anni,
  .info-corso .crediti,
  .info-corso .lingua,
  .info-corso .accesso {
    align-items: center;
  }

  .info-corso .classe-laurea p {
    line-height: 1.15;
    font-size: 2.8rem;
  }

  .info-corso .classe-laurea .code {
    width: 13rem;
  }

  .info-corso .anni:before {
    background-image: url(/themes/custom/unipv_base/icons/Durata.svg);
    background-size: 4rem;
    padding-right: 4rem;
  }

  .info-corso .crediti:before {
    background-image: url(/themes/custom/unipv_base/icons/Anni.svg);
    background-size: 3.1rem;
    padding-right: 3.1rem;
  }
    .info-corso .modalita::before {
    background-image: url(/themes/custom/unipv_default/icons/chalkboard-user-solid.svg);
    background-size: 5.1rem;
    padding-right: 5.1rem;
  }

  .info-corso .tipo:before {
    background-image: url(/themes/custom/unipv_base/icons/Tipo.svg);
    background-size: 3.5rem;
    padding-right: 3.5rem;
  }

  .info-corso .area-tematica:before {
    background-image: url(/themes/custom/unipv_base/icons/Shape.svg);
    background-size: 6rem;
    padding-right: 6rem;
  }

  .info-corso .sede:before {
    background-image: url(/themes/custom/unipv_base/icons/Sede.svg);
    background-size: 3rem;
    padding-right: 3rem;
  }

  .info-corso .lingua:before {
    background-image: url(/themes/custom/unipv_base/icons/Lingua.svg);
    background-size: 5.4rem;
    padding-right: 5.4rem;
  }

  .info-corso .accesso:before {
    background-image: url(/themes/custom/unipv_base/icons/Accesso.svg);
    background-size: 5.1rem;
    padding-right: 5.1rem;
  }
  .info-corso .classe-laurea:before {
    background-image: url(/themes/custom/unipv_base/icons/university-solid.svg);
    background-size: 5.1rem;
    padding-right: 5.1rem;
  }
}

@media (min-width: 64em) {
  .info-corso {
    margin-top: 5.7rem !important;
  }
}

@media (min-width: 75em) {
  .info-corso h2 {
    text-align: left;
    margin-bottom: 0;
  }
}

/* PIANO DEGLI STUDI */
.pianostudi.container {
  padding: 0;
}

.pianostudi .nav-tabs {
  border: unset;
  display: flex;
  background-color: #efefef;
}

.pianostudi .nav > li {
  display: flex;
  flex-wrap: wrap;
  flex: auto;
  flex-direction: column;
}

@media (min-width: 48em) {
  .pianostudi .nav > li {
    flex-direction: row;
    flex: 1 0 0;
    max-width: 50%;
  }
}

.pianostudi .item-list > div {
  margin-top: 2.2em;
  font-weight: 700;
  font-size: 2.3rem;
}

.pianostudi .item-list:first-child > div {
  margin-top: 1.6em;
  flex-basis: 100%;
}

.pianostudi .item-list:first-child > div.filtri {
  border: 1px solid #dfe1e8;
  margin-bottom: 0.8rem;
  margin-top: 1rem;
  font-size:1.6rem;
}

.pianostudi .filtri-title {
  padding:0.8rem;
  background: #eee;
  font-weight: 500;
}

.pianostudi .filtri-text {
  padding:0.8rem;
  font-weight:400;
}

.pianostudi .item-list > span {
  display: block;
  width: auto;
  width: fit-content;
  margin: 16px 0 2px;
  font-weight: 500;
  text-transform: lowercase;
}

.pianostudi .item-list > span:first-letter {
  text-transform: uppercase;
}

.pianostudi span.insegnamento-label {
  padding: 0.375rem 0.75rem;
  color: #fff;
  background-color: rgb(29 113 184);
  border-color: rgb(29 113 184);
  flex: 1 0 100%;
}

.pianostudi .list-group-item {
  border: none;
}

.pianostudi a {
  display: block; /* line-height: 22px; */
}

.pianostudi .nav-tabs .nav-link {
  transition: background-color 0.1s ease-in-out, border-color 0.1s ease-in-out;
  flex: 1;
  text-align: left;
  line-height: 20px;
  box-shadow: inset 0px 0px 2px 0px #cecece;
  font-smooth: auto;
  -webkit-font-smoothing: subpixel-antialiased;
}

.pianostudi .nav-tabs .nav-link:not(.active):hover {
  background-color: rgb(239 239 239 / 70%);
}

.pianostudi .nav > .nav-item > .nav-link {
  border-bottom: 2px solid #d5d5d5;
}

.pianostudi .nav-tabs .nav-link.active {
  font-weight: 600;
  color: #1d71b8;
  box-shadow: none;
}

@media (min-width: 48em) {
  .pianostudi .nav > .nav-item > .nav-link {
    border-bottom: unset;
  }

  .pianostudi .nav > .nav-item:not(:last-child) > .nav-link:not(.active) {
    border-right: 1px solid #d5d5d5;
  }
}

.pianostudi .list-group {
  max-width: 50%;
  flex: 0 0 50%;
  margin: 0 !important;
  padding: 0 0.5rem;
  margin-bottom: 1rem !important;
  border-bottom: 1px solid #bdbdbd;
}

.field-content.item-list {
  display: flex;
  flex-wrap: wrap;
}

/* Obiettivi formativi */
.obiettivi-formativi .naviga-sezione {
  margin-bottom: 1rem;
}

.obiettivi-formativi .naviga-sezione span {
  flex-wrap: wrap;
  height: 100%;
  background-color: #fff;
}

.obiettivi-formativi .naviga-sezione a {
  min-height: 7rem;
  background-color: #efefef;
  flex: 1;
  padding: 0.8rem 1rem !important;
  word-break: break-word;
}

.obiettivi-formativi .naviga-sezione a + a {
  margin-left: 0.75rem;
}

.obiettivi-formativi .sua-title:not(.sua-text) {
  margin-top: 2.6rem;
  font-size: 2.4rem;
  font-weight: 600;
}

@media (min-width: 62em) {
  .obiettivi-formativi .naviga-sezione {
    margin-bottom: 0;
  }
}

/* Requisiti */
.requisiti h3 {
  font-size: 1.95rem;
}

.requisiti ul {
  margin-bottom: 2.4rem;
}

/* HP - Hero testo */
/*
@media (max-width: 63.938em) {
   [id*="campi-block-4"] {
    position: absolute;
    top: 10vh;
    left: 0;
    right: 0;
    bottom: 15px;
    display: flex !important;
    align-items: center;
    padding: 0;
  }
}
*/

@media (max-width: 63.938em) {
  [id*="campi-block-4"] {
    position: static;
    display: flex !important;
    align-items: center;
    padding: 0;
  }
}

.pb-hero-text {
  background-color: rgba(0, 0, 0, 0.5);
  line-height: 1.2;
}

.pb-hero-text {
  margin: 1em;
  padding: 1em;
  color: #fff;
  position: relative;
}

.pb-hero-text::before {
  content: none !important;
}

.pb-hero-titolo,
.pb-hero-sottotitolo {
  text-shadow: 0px 2px 3px rgb(0 0 0 / 30%), 2px 2px 4px rgb(0 0 0 / 40%),
    3px 3px 6px rgb(0 0 0 / 60%);
  line-height: 1;
}

.pb-hero-titolo {
  font-size: 2.1rem;
  font-weight: 900;
}

.pb-hero-sottotitolo {
  font-size: 1.9rem;
  margin-bottom: 0;
  font-weight: 400;
}

@media (min-width: 36em) {
  .pb-hero-text {
    width: 80%;
    padding: 1em;
    text-align: left;
    color: #fff;
    position: relative;
  }
}

@media (min-width: 48em) {
  .pb-hero-text {
    margin: 2.4em 0px 3em 3em;
    padding: 1.5em;
    line-height: 1.4;
  }

  .pb-hero-titolo,
  .pb-hero-sottotitolo {
    text-shadow: 2px 2px 6px rgb(0 0 0 / 60%);
  }

  .pb-hero-titolo {
    font-size: 3rem;
  }

  .pb-hero-sottotitolo {
    font-size: 2.4rem;
  }
}

@media (min-width: 64em) {
  .pb-hero-text {
    width: 80%;
    margin: 4.4em 0 2em 7em;
    padding: 1.4em 2.6em 1.2em;
  }

  .pb-hero-titolo {
    font-size: 4.8rem;
  }

  .pb-hero-sottotitolo {
    margin-bottom: 1.6em;
    font-size: 2.4rem;
  }
}

@media (min-width: 75em) {
  body:not() .main_hero {
    bottom: 10vw;
  }

  .pb-hero-titolo {
    font-size: 5rem;
  }
}

/***************
 Fix cdl06 con nome cdl molto lungo
 ***************/
@media (max-width: 475px) {
  #ultimenu-main .ultimenu__region.long-name {
    margin-top: 6rem;
  }
}

@media (min-width: 48em) {
  #ultimenu-main .ultimenu__region.long-name {
    margin-top: 13rem;
  }
}

@media (min-width: 64em) {
  #ultimenu-main .ultimenu-wrapper .ultimenu__region {
    margin-top: 8.5rem;
  }

  #ultimenu-main .ultimenu__region.long-name {
    margin-top: 17rem;
  }
}

/***************
 News su sito corso di laurea
 ***************/

.views-field-field-immagine-news img {
  width: 100%;
  height: auto;
  max-width: 100%;
}
/*MASONRY GALLERY*/
.masonry-fotogallery:hover img {
  opacity: 0.6;
}
.masonry-fotogallery img {
  transition: all 0.8s;
  width: 220px;
  height: auto;
}
.masonry-fotogallery .masonry-item:hover img {
  opacity: 1;
}
@media only screen and (max-width: 600px) {
  .masonry-fotogallery .masonry-item img {
    max-width: 100%;
    min-width: 100%;
    height: auto;
  }
}
/*GESTIONE ANOMALIA PAGINA BASE*/
/* Davide - PTL-1603
* fix codice aggiunto Valeria
*/
.se-block.se-align-right .block-content .se-container {
  float: none;
  display: flex;
  justify-content: flex-end;
}

.se-block.se-align-right .block-content .se-container .se-trigger {
  float: none;
  margin-right: 1rem;
}

.se-block.se-align-right .block-content .se-container .se-links-container {
  float: none;
  margin-right: 12px;
  width: auto;
}

.se-block .block-content .se-container .se-links-container .se-links {
  position: static;
}

.paragraph--type--semplice .accordion-button {
  background-color: rgb(29 113 184) !important;
}

/* sezione Note PTL-2691 */
.field--name-field-note .paragraph--type--semplice {
  margin-bottom: 2rem;
}

/* PTL-4747 */
.view-avvisi.view-display-id-page_1 .view-filters .row {
  display: grid;
  grid-template-columns: auto auto auto auto;
}
@media (max-width: 768px) {
  .view-avvisi.view-display-id-page_1 .view-filters .row {
    grid-template-columns: 50% 50%;
  }
}
@media (max-width: 415px) {
  .view-avvisi.view-display-id-page_1 .view-filters .row {
    grid-template-columns: auto;
  }
}

/* PTL-5348: togliere quando Ateneo pronto con i contenuti */

/*
.site-cdl61 .ru.nav-link {
    display: none;
}
*/

/* PTL-8465: logo interateneo */


.site-cdl102 .headergrid a {
	z-index: 3;
}

@media (max-width: 475px) {
  img.cdl102 {
	  width: 40%;
  }
}

@media (min-width: 48em) {
	.site-cdl102 #header .sitename {
		top: 0px;
		left: 0px;
		font-size: 2rem;
	}

}

@media (min-width: 64em) {
	.site-cdl102 #header .sitename {
		font-size: 3rem;
	}
}



