/*
 Theme Name:   Bootscore Child (Reboli Studio)
 Description:  Child theme Bootscore — home work / CPT work
 Author:       Digitabuilders
 Template:     bootscore
 Version:      1.0.0
 Text Domain:  bootscaore-child
*/

/* Hero slideshow: riquadro fisso 16:9, immagini riempiono senza deformazione (cover) */


body {
  /*Helvetica Neue LT Pro 55 Roman*/
  font-family: "helvetica-neue-lt-pro", sans-serif;
  font-weight: 400;
  font-style: normal;
  background-color: #f5f5f5 !important;
  color: #000;
}

a {
  color: #000;
}

a:hover,
a:focus-visible {
  color: #E53212;
}

.reboli-site-brand {
  font-size: 1.5rem;
  line-height: 1.6rem;
}

.reboli-site-brand-subtitle {
  font-size: 1.22rem;
  line-height: 1.2;
  letter-spacing: 0.02rem !important;
  color:#000 !important
}

footer .reboli-site-brand-subtitle {
  font-size:0.81rem;
  font-weight: 500;
  letter-spacing: 0.02rem !important;
}



header
{
    padding-bottom: 3vh
}
@media (max-width: 767.98px) {
  
  header {
    padding-bottom: 1vh;
  }
}



/*
 * Bootscore usa `.bg-body-tertiary` su #masthead e sulle sezioni #footer
 * (con background-color !important da Bootstrap): il selettore generico
 * `header, footer` non basta. Allineiamo al grigio pagina.
 */
#masthead.site-header.bg-body-tertiary,
#footer .bg-body-tertiary {
  background-color: #f5f5f5 !important;
}

/* Footer menu principale: link inline, piccoli, senza underline */
#footer .footer_widget .menu {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 0.8125rem;
  line-height: 1.3;
}

#footer .footer_widget .menu > li {
  margin: 0;
  padding: 0;
}

#footer .footer_widget .menu a {
  text-decoration: none !important;
}

#footer .footer_widget .menu a:hover,
#footer .footer_widget .menu a:focus-visible {
  text-decoration: none !important;
}

@media (max-width: 767.98px) {
  #footer .footer_widget .menu {
    justify-content: center;
  }
}

/* Header nav: forza colori link menu */
#nav-main {
  --bs-navbar-color: #000;
  --bs-navbar-hover-color: #E53212;
  --bs-navbar-active-color: #E53212;
}

#nav-main .navbar-nav .nav-link {
  color: #000 !important;
  font-size: 1.5rem;
    display: flex;
      align-items: flex-start;
      /* allinea il testo in alto */
}

#nav-main .navbar-nav .nav-link:hover,
#nav-main .navbar-nav .nav-link:focus-visible,
#nav-main .navbar-nav .nav-link.active {
  color: #E53212 !important;
}

.spazioSopraBloccoGriglia
{
  margin-top:4.5rem;
}

.work-hp-hero.swiper {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  margin-inline: auto;
  margin-top: 0%;
 
  overflow: hidden;
  background: #fff;
}

.work-hp-hero .swiper-wrapper {
  height: 100%;
}

.work-hp-hero .swiper-slide {
  height: 100%;
  background: transparent;
  box-sizing: border-box;
}

.work-hp-hero .swiper-slide > a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.work-hp-hero__link {
  position: relative;
}

.work-hp-hero__meta {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-flex;
  align-items: baseline;
  gap: 1.5rem;
  padding: 0.4rem 0.75rem;
  color: #FFF;
  text-shadow:
    -1px 0 rgba(0, 0, 0, 0.45),
    1px 0 rgba(0, 0, 0, 0.45),
    0 -1px rgba(0, 0, 0, 0.45),
    0 1px rgba(0, 0, 0, 0.45);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.875rem;
  line-height: 1.1;
}

.work-hp-hero__year {
  white-space: nowrap;
}

.work-hp-hero .swiper-hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.work-hp-hero__video {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  display: block;
  overflow: hidden;
}

.work-hp-hero__video-embed {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  min-width: 100%;
  min-height: 100%;
  border: 0;
  display: block;
  pointer-events: none;
}

.work-hp-hero__meta {
  z-index: 2;
}

/* Griglia home: desktop a due colonne alterne, mobile ordine 1,2,3… */
.work-hp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
}

@media (max-width: 767.98px) {
  .work-hp-grid {
    grid-template-columns: 1fr;
  }

  .work-hp-grid .work-hp-item {
    grid-column: 1 !important;
  }
}

.work-hp-grid .work-hp-item:nth-child(odd) {
  grid-column: 1;
}

.work-hp-grid .work-hp-item:nth-child(even) {
  grid-column: 2;
}

.work-hp-item__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.work-hp-item__link img {
  width: 100%;
  height: auto;
  vertical-align: middle;
  display: block;
}

.work-hp-columns {
  gap: 1.5rem;
}

.work-hp-column {
  flex: 1 1 0;
  min-width: 0;
}

.work-hp-column .work-hp-item + .work-hp-item,
.work-hp-columns-mobile .work-hp-item + .work-hp-item {
  margin-top: 1.5rem;
}

.work-hp-view-more {
  text-align: center;
}

.work-hp-view-more__link {
  font-size: 0.8125rem;
  line-height: 1.3;
  gap: 0.35rem !important;
}

.work-hp-view-more__arrow {
  display: inline-flex;
  align-items: center;
}

.work-hp-view-more__arrow .fa-arrow-right {
  font-size: 0.75rem;
  vertical-align: middle;
}

/* Titoli piccoli: Works + pagine default (page.php child) */
.work-archive__title,
.reboli-default-page-title {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.3;
  margin: 0 0 1rem;
  text-transform: capitalize;
}

.work-archive__filters {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.55rem 0.25rem;
  font-size: calc(0.8125rem * 1.5);
  font-weight: 400;
  line-height: 1.4;
  text-transform: lowercase;
}

.work-archive__filter {
  border: 0;
  background: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-transform: inherit;
  cursor: pointer;
  text-decoration: none;
}

.work-archive__filter:hover,
.work-archive__filter:focus-visible {
  text-decoration: none;
}

.work-archive__filter.is-active {
  color: #E53212;
  text-decoration: none;
}

/* Singolo work: link alle categorie → archivio Works con filtro */
.work-single-terms {
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.4;
  text-transform: lowercase;
}

.work-single-term-link:hover,
.work-single-term-link:focus-visible {
  text-decoration: underline !important;
}

.work-single-terms__sep {
  user-select: none;
  pointer-events: none;
}

.work-archive__sep {
  user-select: none;
  pointer-events: none;
}

.work-archive__rule {
  height: 0;
  border: 0;
  border-top: 1px solid #111;
  margin: 0 0 1.5rem;
}

/* Pool vuoto per il reflow JS (stessa struttura colonne della home in markup) */
.work-archive__staging:empty {
  display: none !important;
}

#work-archive.work-archive--enhanced .work-archive__staging {
  display: none !important;
}

/* Classi da `cover_padding` e `image_padding` (stessi valori: zero, tutto intorno 5, …) */
.work-cover-padding--zero .work-cover-img,
.work-cover-padding--zero img {
  padding: 0;
  box-sizing: border-box;
}

.work-cover-padding--tutto-intorno-5 .work-cover-img,
.work-cover-padding--tutto-intorno-5 img {
  padding: 5%;
  box-sizing: border-box;
}

.work-cover-padding--sopra-e-sotto-10 .work-cover-img,
.work-cover-padding--sopra-e-sotto-10 img {
  padding: 10% 0;
  box-sizing: border-box;
}

/* Merge di `padding 5-10-5-0` e `padding 5-0-5-10`.
 * Qui decido il lato in base alla colonna.
 */
.work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  /* default (hero + mobile): lati entrambi 10 */
  padding: 5% 10%;
  box-sizing: border-box;
}

.work-hp-column--left .work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-hp-column--left .work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  /* sinistra colonna -> 5-10-5-0 */
  padding: 5% 10% 5% 0;
  box-sizing: border-box;
}

.work-hp-column--right .work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-hp-column--right .work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  /* destra colonna -> 5-0-5-10 */
  padding: 5% 0 5% 10%;
  box-sizing: border-box;
}

/* Supporto anche quando la classe `work-hp-column--left/right` è sullo stesso elemento */
.work-hp-column--left.work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-hp-column--left.work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  padding: 5% 10% 5% 0;
  box-sizing: border-box;
}

.work-hp-column--right.work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-hp-column--right.work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  padding: 5% 0 5% 10%;
  box-sizing: border-box;
}

.work-cover-padding--padding-5-5-5-5 .work-cover-img,
.work-cover-padding--padding-5-5-5-5 img {
  padding: 5%;
  box-sizing: border-box;
}

.work-cover-padding--padding-5-10-5-0 .work-cover-img,
.work-cover-padding--padding-5-10-5-0 img {
  padding: 5% 10% 5% 0;
  box-sizing: border-box;
}

.work-cover-padding--padding-5-0-5-10 .work-cover-img,
.work-cover-padding--padding-5-0-5-10 img {
  padding: 5% 0 5% 10%;
  box-sizing: border-box;
}

.work-cover-padding--padding-10-0-10-0 .work-cover-img,
.work-cover-padding--padding-10-0-10-0 img {
  padding: 10% 0;
  box-sizing: border-box;
}

/* Singolo work: portfolio */
.work-single-portfolio {
  display: grid;
  gap: 1.5rem;
}

.work-single-portfolio__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  align-items: stretch;
}

.work-single-portfolio__row > .work-single-va--top {
  align-self: start;
}

.work-single-portfolio__row > .work-single-va--middle {
  align-self: center;
}

.work-single-portfolio__row > .work-single-va--bottom {
  align-self: end;
}

.work-single-portfolio__item img {
  width: 100%;
  height: auto;
  display: block;
}

.work-single-portfolio__item .work-single-media--video,
.work-single-portfolio__item .work-single-media--video .ratio,
.work-single-portfolio__item .work-single-media--video iframe,
.work-single-portfolio__item .work-single-media--video .wp-video,
.work-single-portfolio__item .work-single-media--video .wp-video-shortcode {
  width: 100% !important;
  max-width: 100%;
  display: block;
}

.work-single-portfolio__item .work-single-media--video .ratio iframe {
  height: 100% !important;
}

/* Portfolio singolo: alternanza per `laterale sopra sotto 5 lato 10` come griglia home */
.work-single-portfolio > .work-single-portfolio__item:nth-child(odd).work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-single-portfolio > .work-single-portfolio__item:nth-child(odd).work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  padding: 5% 10% 5% 0;
  box-sizing: border-box;
}

.work-single-portfolio > .work-single-portfolio__item:nth-child(even).work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-single-portfolio > .work-single-portfolio__item:nth-child(even).work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  padding: 5% 0 5% 10%;
  box-sizing: border-box;
}

/* Portfolio doppio in riga: first = sinistra, second = destra */
.work-single-portfolio__row > .work-single-portfolio__item:first-child.work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-single-portfolio__row > .work-single-portfolio__item:first-child.work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  padding: 5% 10% 5% 0;
  box-sizing: border-box;
}

.work-single-portfolio__row > .work-single-portfolio__item:last-child.work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
.work-single-portfolio__row > .work-single-portfolio__item:last-child.work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
  padding: 5% 0 5% 10%;
  box-sizing: border-box;
}

@media (max-width: 767.98px) {
  .work-single-portfolio__row {
    grid-template-columns: 1fr;
  }

  /* Su mobile disabilito tutti i padding ACF del portfolio nel singolo work */
  .single-work .work-single-portfolio__item[class*="work-cover-padding--"] .work-cover-img,
  .single-work .work-single-portfolio__item[class*="work-cover-padding--"] img {
    padding: 0 !important;
  }

  .work-single-portfolio__row > .work-single-portfolio__item.work-cover-padding--laterale-sopra-sotto-5-lato-10 .work-cover-img,
  .work-single-portfolio__row > .work-single-portfolio__item.work-cover-padding--laterale-sopra-sotto-5-lato-10 img {
    padding: 5% 10%;
  }

  /* Home work + Works page: su mobile disabilito i padding ACF delle cover */
  .page-template-template-work-home .work-hp-columns-mobile .work-hp-item[class*="work-cover-padding--"] .work-cover-img,
  .page-template-template-work-home .work-hp-columns-mobile .work-hp-item[class*="work-cover-padding--"] img,
  .page-template-template-works-page .work-hp-columns-mobile .work-hp-item[class*="work-cover-padding--"] .work-cover-img,
  .page-template-template-works-page .work-hp-columns-mobile .work-hp-item[class*="work-cover-padding--"] img {
    padding: 0 !important;
  }
}

.work-single-footer {
  margin-top: 0;
}

.work-single-title {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 0.5rem;
}

.work-single-description {
  font-size: 1rem;
  line-height: 1.5;
}

.work-single-description > :last-child {
  margin-bottom: 0;
}

/* Intro home: primo titolo nel contenuto come `work-single-title` */
.work-hp-intro .work-single-description > h1:first-child,
.work-hp-intro .work-single-description > h2:first-child {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 0.5rem;
}

/* Home work: container fluid con offset/padding sinistro custom */
.work-home-fluid {
  margin-left: 0;
  padding-left: 15%;
  padding-right: 15%;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  overflow-x: hidden;
}

@media (max-width: 767.98px) {
  .work-home-fluid {
    margin-left: 0;
    padding-left: 4%;
    padding-right: 4%;
  }
}

/* Header allineato ai margini del contenuto */
#masthead .container,
#masthead .container-fluid {
  padding-left: 15%;
  padding-right: 15%;
}

#footer .container,
#footer .container-fluid {
  width: 100%;
  max-width: none;
  padding-left: 15%;
  padding-right: 15%;
}

.bootscore-footer-info
{
  font-size: 0.8125rem;
  color: #000 !important;
}

@media (max-width: 767.98px) {
  #masthead .container,
  #masthead .container-fluid {
    padding-left: 4%;
    padding-right: 4%;
  }

  #footer .container,
  #footer .container-fluid {
    padding-left: 4%;
    padding-right: 4%;
  }
}


/* Back to top: solo icona nera, senza box */
.top-button,
.top-button.btn,
.top-button.btn-primary {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #000 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

.top-button i {
  font-size: 1.1rem;
  line-height: 1;
}

.top-button:hover,
.top-button:focus-visible {
  background: transparent !important;
  color: #E53212 !important;
  /* opzionale, coerente col tuo hover */
}

.logoSotto
{
  line-height: 18px;
}

#footer .footer_widget .menu {
  font-size: var(--bs-body-font-size);
}

.spinner-border
{
  color: #000 !important;
}


.instagram_logo_menu
{
  margin-top: 5px;
}