/*
Theme Name: Hello Elementor Child
Description: Child theme for Hello Elementor
Author: Enrico per Marcosh
Template: hello-elementor
Version: 1.0.0
*/

/*GENERICS*/
b, strong {
	font-weight: 700!important;
}

a.privacy-cs {
	color: #fff!important;
	text-decoration: underline!important;
}

a.privacy-cs:hover {
	color: #fff!important;
	text-decoration: underline!important;
}

.privacy-link-cs a {
    color: #495064!important;
}
/**/

/*HEADER DEFAULT*/
/* .menu-top .sub-menu {
  transform: translateX(-12px);
  border: 1px solid #6b8B89!important;
} */

.menu-top .sub-menu {
    width: 204px!important;
    height: 62px!important;
    transform: translateX(-50px)!important;    
}

.menu-top .sub-menu a {
    width: 204px!important;
    height: 62px!important;
    color: #686f6f!important;
    background-color: #dce4e4!important;
    font-family: "outfit", sans-serif!important;
    font-size: 16px!important;
    display: flex!important;
    justify-content: centeer!important;
    align-items: center!important;
    text-align: center!important;
    padding: 0!important;
    margin: 0!important;
    padding-left: 42px!important;
}

.menu-top .sub-menu a:hover {
  background-color: #6b8b89!important;
  color: #fff!important;
}



#site-header {display: none;}

.btn-green:hover {
  background-color: #6b8b89;
}

.btn-brown:hover {
  background-color: #A1857F;
}

.btn-green:hover .elementor-heading-title,
.btn-brown:hover .elementor-heading-title {
  color: #fff!important;
}

.elementor-item.elementor-item-active:after {
  content: ''!important;
  /*background-image: url('https://workingfor03.net/ablegno-2/wp-content/uploads/2026/03/fogliolina3.svg')!important;*/
  background-image: url('/wp-content/uploads/2026/03/fogliolina3.svg')!important;
  background-repeat: no-repeat!important;
  background-position: center!important;
  background-size: contain!important;
  height: 10px!important;
}

.sottomenu {
  pointer-events: none;
  opacity: 0;
  transition: 0.3s ease;
}

.sottomenu.active {
  pointer-events: auto;
  opacity: 1;
}

.casa-in-legno:hover .sottomenu {
  pointer-events: auto;
  opacity: 1;
  transition: 0.3s ease;
}

/* .hover-sub-menu:hover {
  background-color: #6B8B89;
} */

.hover-sub-menu, .hover-sub-menu a {
  transition: 0.3s ease;
} 

.hover-sub-menu:hover a {
  font-weight: 600;
}

.casa-in-legno.mobile {
  display: flex;
  flex-direction: column;
  justify-content: start;
  height: 50px; 
  transition: max-height 0.3s ease;
}

.casa-in-legno.mobile:hover {
  height: 232px; 
}
/**/

/*HEADER TABLET MENU TENDINA MENU*/
    .burger {
      width: 20px;
      height: 15px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      cursor: pointer;
    }

    .burger span {
      display: block;
      width: 100%;
      height: 2px;
      /* puoi mettere anche 1px se vuoi più elegante */
      background-color: #6B8B89;
      border-radius: 2px;
      transition: all 0.3s ease;
    }

    /* Stato attivo */
    .burger.active span:nth-child(1) {
      transform: translateY(6.5px) rotate(45deg);
    }

    .burger.active span:nth-child(2) {
      opacity: 0;
    }

    .burger.active span:nth-child(3) {
      transform: translateY(-6.5px) rotate(-45deg);
    }

.wrapper-menu-mobile {
      height: 0;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      align-items: center;
      background-color: #fff;
      padding: 0;

      transition: 0.5s ease;
    }

    .wrapper-menu-mobile.active {
      overflow: auto;
      height: calc(100vh);
      padding-left: 25px;
      padding-right: 25px;
    }

    .ps {
      width: 100%;
    }

    .vb-menu {
      display: flex;
      align-items: center;
      flex-direction: column;
      padding-top: 90px;
      padding-bottom: 20px;
    }

    .vb-menu a {
      display: inline-block;
      margin: 0;
      padding: 0;

      text-align: center;
      text-decoration: none;

      font-family: "Outfit", sans-serif;
      font-size: 16px;
      font-weight: 400;
      color: #252935;

      padding-top: 10px;
      padding-bottom: 25px;
    }

    .vs-menu {
      width: 100%;
    }

    .cil-title,
    .sil-title {
      font-size: 16px;
      font-family: "Outfit", sans-serif;
      font-weight: 600;

      text-decoration: none;
    }

    .vs-menu img {
      padding-left: 10px;
    }

    .cil,
    .sil {
      width: 100%;
      padding-top: 10px;
      text-align: center;
    }

    .cil {
      border-top: 1px solid #6B8B89;
    }

    .cil-level1 {
      padding-bottom: 12px;
    }

    .cil:hover {
      background-color: #6B8B89;
      transition: 0.3s ease;
    }

    .cil:hover .cil-title {
      color: #fff;
    }

    .cil .cil-title {
      color: #6B8B89;
    }

    .sil {
      border-top: 1px solid #A1857F;
      padding-bottom: 12px;
      margin-top: 30px;
      margin-bottom: 60px;

      transition: 0.3s ease;
    }

    .sil:hover {
      background-color: #A1857F;
    }

    .sil:hover .sil-title {
      color: #ffffff;
    }

    .sil .sil-title {
      color: #A1857F;
    }

    .cil-sottomenu {
      display: flex;
      flex-direction: column;
      gap: 12px;

      background-color: #4E6664;
      height: 0;
      padding: 0;

      overflow: hidden;
    }

    /*
    .cil:hover .cil-sottomenu {
      height: 187px;
      padding: 15px 45px 28px;
    }
    */

    .cil:hover .cil-sottomenu {
      height: 137px;
      padding: 15px 45px 28px;
     }

    .cil-sottomenu a {
      display: block;
      color: #fff;

      text-align: center;
      text-decoration: none;

      font-size: 16px;
      font-family: "Outfit", sans-serif;
      font-weight: 400;
      padding: 8px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    }

    .cil-sottomenu a:hover {
      color: #ffffff;
    } 

    .btn-conosciamoci {
      border: 1px solid #6B8B89;
      background-color: #6B8B89;
      padding: 14px 24px;
      text-align: center;
      max-width: 185px;
      cursor: pointer;
      text-decoration: none;
    }

    .btn-conosciamoci span {
      color: #fff;
      font-family: "Outfit", sans-serif;
      font-size: 16px;
      font-weight: 600;
    }

    .btn-conosciamoci img {
      padding-left: 10px;
    }

    .btn-conosciamoci:hover {
      background-color: transparent;
      color: #6B8B89;
    }

    a.btn-conosciamoci:hover span {
      color: #6B8B89;
    }
/**/

/*JUMBO*/
.box-green {
  top: 50%!important;
  transform: translate(-75px, -50%);
}
/**/

/*FORM*/
.form-custom input, .form-custom textarea {
  background-color: transparent!important;
  border: 1px solid white!important;
  color: white!important;
  margin-bottom: 22px!important;
}

.elementor-form input::placeholder,
.elementor-form textarea::placeholder {
    color: #fff !important;
    opacity: 1 !important;
}

.form-custom span.elementor-field-option {
  display: flex;
  gap: 10px;
  align-items: start;
  margin: 10px 0;
}

.form-custom label {
  color: #fff!important;
}

.form-custom input#form-field-field_34ce2c6-0 {
  width: 22px!important;
  height: 22px!important;
  background-color: transparent!important;
  border: 1px solid white!important;
}

.form-custom .elementor-form-fields-wrapper.elementor-labels- {
  display: flex;
  justify-content: flex-end!important;
}

#invio {
    background: none;
    border: none!important;
    padding: 0;
    cursor: pointer;
}

.form-candidatura #invio {
  border: none!important;
}

.titolo-cv {
    color: #fff;
    padding-bottom: 20px;
    padding-left: 24px;
    font-weight: 500;
}

input#form-field-field_d0ec8eb {
    width: 100%;
    padding: 10px;
    border-radius: 3px;
}

.elementor-field-type-select {
  margin-bottom: 28px!important;
}

/* =========================
   FIX WRAPPER SUBMIT
========================= */
.elementor-form .elementor-field-type-submit {
    width: 100% !important;
    max-width: 100% !important;

    display: flex;
    justify-content: flex-end; /* ALLINEA A DESTRA */
}


/* =========================
   BOTTONE
========================= */
#invio,
#invio2 {
    position: relative;
    background: none;
    border: none!important;
    padding: 0;
    cursor: pointer;

    display: flex;
    justify-content: flex-end;
}


/* =========================
   SVG COME BOTTONE
========================= */
#invio::before,
#invio2::before {
    content: "";
    display: block;

    width: 195px;
    height: 52px;

    /*background: url("https://workingfor03.net/ablegno-2/wp-content/uploads/2026/04/Button-Istituzionale.svg") no-repeat center;*/
    background: url('/wp-content/uploads/2026/04/Button-Istituzionale.svg') no-repeat center;
    background-size: contain;

    transition: transform 0.25s ease;
}

#invio2::before {
    /*background: url("https://workingfor03.net/ablegno-2/wp-content/uploads/2026/04/Button-Costruzioni-in-legno.jpg") no-repeat center;*/
    background: url("/wp-content/uploads/2026/04/Button-Costruzioni-in-legno.jpg") no-repeat center;
}

@media screen and (max-width: 767px) {
  #invio::before, #invio2::before  {
    image-rendering: auto!important;
    background-size: 100% 100%!important;
    transform: none!important;
  }
}


/* =========================
   HOVER + CLICK
========================= */
#invio:hover::before,
#invio2:hover::before {
    transform: scale(0.95);
}

#invio:active::before,
#invio2:active::before {
    transform: scale(0.90);
}

/* =========================
   NASCONDE TESTO
========================= */
#invio .elementor-button-text,
#invio2 .elementor-button-text {
    display: none;
}
/**/

@media screen and (max-width: 768px) {
  button#invio, button#invio2 {
    justify-content: center;
    padding-top: 30px;
  }
}

/*DIMENSIONE IMG NELLE CARD STORIA - PAGINA AZIENDA*/
.loop-storia img {
    height: 180px!important;
    width: 100%!important;
    object-fit: cover!important;
}

@media screen and (max-width: 1024px) {
 .loop-storia img {
    height: 250px!important;
  }
}

@media screen and (max-width: 440px) {
 .loop-storia img {
    height: 180px!important;
  }
}

@media screen and (min-width: 1400px) {
  .loop-storia img {
    height: 200px!important;
  }
}

@media screen and (min-width: 1600px) {
  .loop-storia img {
    height: 250px!important;
  }
}
/**/

/*DIMENSIONE IMG NELLE CARD PORTFOLIO IN EVIDENZA*/
.img-card-evidenza img {
    height: 265px!important;
    width: 100%!important;
    object-fit: cover!important;
}
/**/

/*STAMPA DELLA CATEGORIA NELLA CARD PORTFOLIO*/
.ablegno-tipologia {
    display: flex;
    gap: 8px;
}

.tipologia-item {
    font-size: 14px;
    font-weight: 300;
    color: #495064;
}

span.tipologia-item {
    text-transform: uppercase;
}

.portfolio .elementor-loop-container.elementor-grid img {
    width: 100%;
    height: 265px;
    object-fit: cover;
}
/**/

/*PAGINA NEWS ED EVENTI*/
.thumb img {
    width: 100%!important;
    height: 265px!important;
    object-fit: cover!important;
}
/**/

/*FILTRO DI CATEGORIA NEWS ED EVENTI*/
.filter-cat.active,
.filter-year.active {
  font-weight: 600;
}

#ablegno-news-eventi .tabs {
    display: flex;
    gap: 20px;
    font-family: 'Outfit';
    font-size: 26px;
    font-weight: 300;
    color: #6B8B89;
}

.tab {
  cursor: pointer;
}

.tab.active {
    font-weight: 700;
}

.search-box {
    display: flex;
    align-items: center;
    border-top: 1px solid #CDD0D0;
    border-bottom: 1px solid #CDD0D0;
    padding: 10px 0;
    margin: 20px 0;
}

.search-box input {
    border: none;
    outline: none;
    margin-left: 10px;
    color: #ABBFBD;
}

.card {
    width: 414px;
}

.results {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 20px;
}

.card h3 {
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
    color: #373D4E;
    padding: 8px 0;
    border: 1px solid #CDD0D0;
    border-left: none;
    border-right: none;
}

.card p {
    font-size: 14px;
    font-weight: 300;
    color: #373D4E;
    padding: 8px 0 22px;
}

.read-more {
    display: flex;
    align-items: center;
    gap: 8px;
}

a.read-more {
    font-size: 16px;
    font-weight: 600;
    color: #686F6F;
}

a.read-more:hover {
  color: #686f6fa7;
}

input#search-input {
    background: none;
    border: none;
    font-family: 'Outfit', sans-serif;
    font-size: 20px;
    font-weight: 300;
    color: #ABBFBD;
}

input#search-input::placeholder {
  font-size: 20px;
    font-weight: 300;
    color: #ABBFBD;
}

.filter-label {
    font-size: 14px;
    font-weight: 400;
    color: #686F6F;
    margin: 32px 0 12px;
}

.date {
    margin-top: 28px;
    text-align: end;
    font-size: 14px;
    font-weight: 300;
    text-transform: uppercase;
    color: #8E9595;
}

.filters-categories {
  display: flex;
  gap: 16px;
  padding: 8px 0;
}

span.filter-cat {
    font-size: 16px;
    font-weight: 400;
    color: #6b8B89;
    padding: 8px 0;
    padding-right: 20px;
    cursor: pointer;
}

@media screen and (max-width: 768px) {
  span.filter-cat {
    display: inline-block;
    padding-bottom: 0;
  }
}

.filters-years {
    padding: 8px 0;
    border: 1px solid #CDD0D0;
    border-left: none;
    border-right: none;
    margin-bottom: 32.5px;
    
}

span.filter-year {
    font-size: 16px;
    font-weight: 400;
    color: #6B8B89;
    cursor: pointer;
    padding-right: 10px;
}

p.no-events {
    font-size: 20px;
    font-weight: 300;
    color: #6B8B89;
}
/**/

/*SINGLE PAGE NEWS*/
.contenuto-news h3,
.contenuto-news h2,
.contenuto-news h4,
.contenuto-news h5 {
    font-size: 24px;
    font-weight: 400;
    color: #6B8B89;
    padding: 40px 0 24px;
    margin: 0;
}

.contenuto-news h3:first-child,
.contenuto-news h2:first-child {
    padding-top: 0;
}

.contenuto-news a {
    color: #6B8B89;
    text-decoration: underline!important;
}

.contenuto-news strong, 
.contenuto-news b {
  font-weight: 600!important;
}
/**/

/*CRM FORM*/
.crm-form button {
	color: #fff!important;
    background-color: #6B8B89!important;
    text-transform: uppercase!important;
}
/**/

/*UTILITIES*/
.pagination {
    display: flex;
    justify-content: start!important;
    gap: 15px!important;
    margin-top: 50px!important;
}

.pagination .page {
    cursor: pointer;
}

.loop-grid a {
  color: #6B8B89!important;
  text-decoration: underline!important;
}

.very-bold {
  font-weight: 600;
}

.hover-300m:hover {
  background-color: #A1857F!important;
}

.hover-300m:hover div {
  color: #fff!important;
}

.hover-300mi:hover {
  background-color: transparent!important;
}

.hover-300mi:hover div {
  color: #A1857F!important;
}

.hover-300i:hover {
  background-color: transparent!important;
  border: 1px solid #fff!important;
}

.hover-300i:hover div {
  color: #fff!important;
}

.hover-300i:hover img {
  filter: brightness(1.2)!important;
}

.hover-400:hover {
  background-color: #6B8B89!important;
}

.hover-400:hover div {
  color: #fff!important;
}

.hover-400i:hover {
  background-color: transparent!important;
}

.hover-400i:hover div {
  color: #6B8B89!important;
}

.hover-400iw:hover div {
  color: #ffffff!important;
}

.hover-m1:hover {
  background-color: #A1857F!important;
}

.hover-m1:hover div {
  color: #fff!important;
}

.tag a {
  padding: 8px 16px;
  border-radius: 0;
  background-color: #DCE4E4 !important;
  color: #4E6664;
  font-weight: 400 !important;
  font-family: 'Outfit', sans-serif !important;
  pointer-events: none!important;
}

.tag2 a {
  background-color: #A5B89C!important;
  color: #ffffff!important;
}

.tag3 a {
  background-color: #DFD7D5!important;
  color: #51423F!important;
}

.tag4 a {
  background-color: #4E6664!important;
  color: #ffffff!important;
}

.tag a:hover {
  color: #4E6664!important;
}
/**/


/*POP UP MENU MOBILE*/
.elementor-popup-modal .dialog-close-button {
    inset-inline-end: 30px!important;
    top: 33px!important;
}
#elementor-popup-modal-1395 .dialog-message {
    width: 100vw!important;
    height: auto;
}
/**/


/*Stile loop carousel e grid custom*/
.ab-pagination swiper-pagination-clickable {
  display: none!important;
}

.ab-cards-wrapper {
  width: 100%;
}

.ab-cards {
  display: flex;
  gap: 20px;
}

.ab-card {
  width: calc(33.333% - 13.33px);
  text-decoration: none;
  display: block;
}

.ab-card-img img {
  width: 100%;
  height: 265px!important;
  object-fit: cover;
  display: block;
}

.ab-card-content {
  margin-top: 40px;
}

.ab-card-title {
  font-family: 'Outfit', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #2F3232;
  text-transform: uppercase;

  border-top: 1px solid #CDD0D0;
  border-bottom: 1px solid #CDD0D0;

  padding: 8px 0;
  margin-bottom: 8px;
}

.ab-card-cat {
  font-family: 'Outfit', sans-serif;
  font-size: 14px;
  font-weight: 300;
  color: #686F6F;
  text-transform: uppercase;
}

.ab-pagination {
  text-align: center;
  margin-top: 20px;
}

.ab-pagination .swiper-pagination-bullet {
  background: #000;
  opacity: 0.3;
}

.ab-pagination .swiper-pagination-bullet-active {
  opacity: 1;
}

@media (max-width: 768px) {

  .ab-pagination swiper-pagination-clickable {
  display: block!important;
}

  .ab-cards {
    display: block;
  }

  .ab-card {
    width: 100%;
  }

  .ab-card-img img {
    height: 219px!important;
  }

  .ab-card-content {
    margin-top: 20px;
  }

}
/**/

/********************POLIVY PAGES*************************/
.site-main.post-4315.page.type-page.status-publish.hentry,
.site-main.post-4314.page.type-page.status-publish.hentry{
    padding-top: 200px;
    padding-bottom: 150px;
}

.site-main.post-4315.page.type-page.status-publish.hentry h1,
.site-main.post-4314.page.type-page.status-publish.hentry h1
{
  font-size: 50px;
}
/**/

/********************CRM PASSWORD CONTATTI****************/
.input-btn {
		display: flex;
		gap: 3px;
		}
.custom-password-wrapper {
    max-width: 500px;
    margin: 200px auto 150px;
    padding: 40px;
    text-align: center;
}

.custom-password-wrapper h2 {
    font-size: 56px;
    line-height: 1;
    margin-bottom: 30px;
}

.custom-password-wrapper p {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 40px;
}

/* FORM */
.custom-password-wrapper form {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
}

/* INPUT */
.custom-password-wrapper input[type="password"] {
    width: 100%;
    max-width: 520px;
    height: 54px;

    padding: 0 20px;

    border: 1px solid #8b8b8b;
    border-radius: 0;

    background: #fff;

    font-size: 16px;
    color: #000;

    outline: none;
    box-shadow: none;

    appearance: none;
    -webkit-appearance: none;

    transition: 0.3s ease;
}

.custom-password-wrapper input[type="password"]:focus {
    border-color: #6b8b89;
}

/* PLACEHOLDER */
.custom-password-wrapper input[type="password"]::placeholder {
    color: #7a7a7a;
    opacity: 1;
}

/* BOTTONE */
.custom-password-wrapper button,
.custom-password-wrapper button[type="submit"],
.custom-password-wrapper .crm-btn-pss {

    display: flex !important;
    align-items: center;
    justify-content: center;

    width: 160px;
    height: 54px;

    padding: 0 !important;
    margin: 0 auto;

    border: 1px solid #6b8b89 !important;
    border-radius: 0 !important;

    background: transparent !important;
    color: #6b8b89 !important;

    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    text-align: center;

    cursor: pointer;

    outline: none !important;
    box-shadow: none !important;

    appearance: none;
    -webkit-appearance: none;

    transition: 0.3s ease;
}

/* HOVER */
.custom-password-wrapper button:hover,
.custom-password-wrapper button[type="submit"]:hover,
.custom-password-wrapper .crm-btn-pss:hover {

    background: #6b8b89 !important;
    color: #fff !important;
}

/* ACTIVE / FOCUS */
.custom-password-wrapper button:focus,
.custom-password-wrapper button:active {
    outline: none !important;
    box-shadow: none !important;
}

/* MOBILE */
@media (max-width: 767px) {
	
	#pwbox-1877 {
	text-align: center;
    }
	
	.crm-btn-pss {
	width: 100% !important;
	transform: translate;
	transform: translateY(-30px);
    }
	
	.input-btn {
		flex-direction: column;
	}

    .custom-password-wrapper {
        margin: 120px auto;
        padding: 20px;
    }

    .custom-password-wrapper h2 {
        font-size: 42px;
    }

    .custom-password-wrapper p {
        font-size: 16px;
    }

    .custom-password-wrapper button {
        width: 140px;
        height: 50px;
    }
}

[type="button"], [type="submit"], button {
	background-color: transparent;
	border: 1px solid green!important;
	border-radius: 3px;
	color: green!important;
	display: inline-block;
	font-size: 1rem;
	font-weight: 400;
	padding: .5rem 1rem;
	text-align: center;
	transition: all .3s;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	white-space: nowrap;
}
/*********************************************************/


.elementor-655 .elementor-element.elementor-element-011ae34 .swiper-slide > .elementor-element {
    /* height: 100%; */
    height: auto!important;
}
