h6, .h6, h5, .h5, h4, .h4, h2, .h2, h1, .h1{
  font-weight: 300;
}
 h3, .h3{
  font-weight: 400;  
 }

body{
  letter-spacing: -0.5px;
}

.header-custom {
  background-color: #fff;
}

figure {
  margin-bottom: 0;
}

sub, sup {
font-size: 0.6em;
margin-left: 2px;
}
sup {
top: -0.7em;
}

.mmi{
  display: flex;
  align-items: center;
}

.sliderbtn-slide {
  background-color: #fff;
}

.sliderbtn .sliderbtn-txt {
  color: #fff;
}

.show-sidebar {
  transform: translateX(var(--tw-translate-x)) !important;
}

.hidden{
  display: none;
}

.footer-link:hover {
  color: var(--color-primary-50) !important;
}

.rounded-28{
  border-radius: 28px;
  overflow: hidden;
}

.process-card{
  display: flex;
  flex-direction: column;
  height: 100%;
}
.process-card h3{
  flex-grow: 9;
}

.pt-80px{
  padding-top: 80px;
}

footer .list-unstyled{
  margin-left: 0;
}

.bg-secondary {
  background-color: #57676f;
}

.slider-btn-alt-txt{
  line-height: 1;
}

.gridblock-enti{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--bs-gutter-x);
}

.rounded-13{border-radius: 13px;}

p {
  margin-top: 0;
  margin-bottom: 0;
}

.formazione-text-right {
  padding:1rem;
}
.formazione-text-left {
  padding:1rem;
}

@media (min-width:768px) {
  
  .formazione-text-right {
    padding-right:3.5rem;padding-left:42px;
  }
  .formazione-text-left {
    padding-right:3.5rem;padding-left:42px;
  }
}
@media screen and (max-width: 991px){
  .gridblock-enti{
    grid-template-columns: 1fr;
  }

  footer .space-y-8 > * + *{
    margin-top: 0;
    margin-bottom: 2rem;
  }
}
@media (min-width:992px) {
  .pt-xl-90{
    padding-top: 90px!important;
  }
}

.py-faq-responsive { padding-block: 50px; }
@media (min-width:768px) { .py-faq-responsive { padding-block: 70px; } }
@media (min-width:992px) { .py-faq-responsive { padding-block: 85px; } }
@media (min-width:1200px) { .py-faq-responsive { padding-block: 100px; } }

.clienti-accordion .accordion-action{
  width: 100%;
  padding:2rem 0;
  display: flex;
}

.g-2rem{
  gap:2rem
}

.newsgrid{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.px-2rem{
  padding-right: 2rem;
  padding-left: 2rem;
}

.nav-arrow{
  /*margin-top:-5px;*/
  margin-top:-2px;
}

.nav-arrow svg{
  /*stroke:rgba(0, 0, 0, 0.6);*/
  stroke:rgba(0, 0, 0, 1);
  transition: stroke 0.3s ease-in-out;
}
.nav-item:hover .nav-arrow svg{
  stroke:var(--color-secondary);
}

.nav-item-link-white:before{
  display: none!important;
}


.news-card{
  border-style: solid;
  border-color: #eceff4;
  border-width: 1px;
}

@media screen and (max-width: 991px){
  .newsgrid{
    grid-template-columns: 1fr;
  }
}

.equalh article{
  height: 100%;
}

.mb-tw-8{
  margin-bottom: 2rem;
}

.data-webinar {
  position: absolute;
  top: 1.5em;
  left: 1.5em;
  width: 12em;
  background: white;
  padding: 1em 2em;
  text-align: center;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3); 
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.3);
}

.ico-event{
  text-align: center;
}
/*.ico-event svg{
  color:var(--color-primary-600);
  fill:var(--color-primary-600);
  width: 2em;
  height: 2em;
  margin: 0 auto;
}*/
.ico-event img{
  width: 3em;
  height: 3em;
  margin: 0 auto;
}

.day{
  display: block;
  text-align: center;
  font-size: 3em;
  font-weight: bold;
  line-height: 1em;
}
.month-year {
  border-bottom: 2px solid #e2e2e2;
  width: 100%;
  display: block;
  padding-bottom: 5px;
  margin-bottom: 5px;
  text-align: center;
}
.time{
  display: block;
  text-align: center;
}

.area-trigger{
  padding: 1.2em 1.2em;
}

.comuni-modal{
  column-count: 4;
  padding-left: 0;
}

article figure{
  position: relative;
}

.scaled-2.data-webinar {
  top: 0.75em;
  left: 0.75em;
  width: 8em;
  padding: 0.5em 1em;
}
.scaled-2 .day {
  font-size: 1.5em;
}
.scaled-2 .month-year {
  font-size: 0.8em;
}
.scaled-2 .time {
  font-size: 0.8em;
}
.scaled-2 .ico-event img {
  width: 2em;
  height: 2em;
}

.sxside.data-webinar {
  left: auto;
  right: 1.5em;
}
.sxside.scaled-2.data-webinar {
  left: auto;
  right: 0.75em;
}



.news-card figure img {
  aspect-ratio: 63/40;
  object-position: top;
}

.webinar-card .webinar-title,
.webinar-card .webinar-excerpt,
.news-card .news-title{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: 2lh;
  /*font-weight: bold !important;*/
  font-weight: 400 !important;
}
.webinar-title{
  /*font-weight: bold !important;*/
  font-weight: 400 !important;
}

.fw-400{
  font-weight: 400 !important;
}

.logout-btn{
  width:9em;
  justify-content:center;
  background:#fff;
  border:1px solid var(--color-stroke-2,#e5e7eb);
  padding:0.65rem 1.5rem;
  border-radius:10px;
  text-decoration:none;
  gap:0.5rem;
}

.bm-head {
  display: flex;
  justify-content: space-between;
}

.pic-holder-flex {
  display: flex;
  flex-direction: column;
}
.pic-holder-flex figure {
  flex-grow: 9;
}

.modal-content > div {
  padding: 1.5em 2em;
}
.modal-content > .modal-header {
  padding-bottom: 0.75em;
  border-bottom: 0;
}
.modal-content > .modal-body {
  padding-top: 0.75em;
}

.comuni-modal li {
  margin-bottom: 0.3em;
}

.ar169{
  aspect-ratio: 16/9;
}

.notxt-dec a{
  text-decoration: none!important;
}

.size-full.alignright,
.size-full.alignleft{
  width: auto!important;
  height: auto!important;
}
.details-body img{
  border-radius: 0;
}

.details-body .aligncenter {
  justify-content: center;
  display: flex;
}

.details-body li {
  list-style: disc;
  /*color: color-mix(in oklab, var(--color-secondary) 60%, transparent);*/
}
.details-body li::before {
  margin: 0 !important;
}

.details-body h1,
.details-body h2,
.details-body h3,
.details-body h4 {
  list-style: none!important;
}

.single-post .details-body h4:before {
  display: none!important;
}

.mappaheight{
  height: 40em;
}

@media screen and (max-width: 1500px){
  .header-custom{
    padding-left: 15px!important;
    padding-right: 15px!important;
}
@media screen and (min-width: 1200px) and (max-width: 1500px){
  }.header-custom{
    padding: 0 15px!important;
    /*margin-left: -15px;*/
  }
  .logocont figure{
    max-width: 150px;
  }
}
@media screen and (max-width: 991px){
  .comuni-modal{
    column-count: 1;
  }
  .bm-head {
    flex-direction: column-reverse;
  }
  .bm-head .icona-cb {
    width: 70px;
    margin-bottom: 5px;
  }
  #services-text {
    font-size: 1.2em;
    margin-bottom: 1.2em;
  }
  .mappaheight{
    height: 20em;
  }
}


iframe{
  outline: 0!important;
}

.h-max-250{
  max-height: 250px;
}
.h-max-200{
  max-height: 200px;
}
.h-max-150{
  max-height: 150px;
}
.no-round-bottom-13{
  border-radius: 13px 13px 0 0;
}

.container-bottoni-sw{
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: 1em;
}

.dettagli{
  color: var(--color-primary-600);
  font-size: 1.2em;
  position: relative;
  margin-top: 2px!important;
  margin-left: 15px;
}
.dettagli:hover{
  text-decoration: underline;
}
.dettagli:after{
  content:"";
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23f6a335' viewBox='0 0 256 256'%3E%3Cpath d='M181.66,133.66l-80,80a8,8,0,0,1-11.32-11.32L164.69,128,90.34,53.66a8,8,0,0,1,11.32-11.32l80,80A8,8,0,0,1,181.66,133.66Z'%3E%3C/path%3E%3C/svg%3E");
  display: inline-block;
  transition: all 0.3s ease-in-out;
  background-size: contain;
  background-repeat: no-repeat;
  height: 16px !important;
  width: 16px !important;
  position: absolute;
  top: 48%;
  transform: translateY(-50%);
}
.dettagli:hover:after{
  transform: translateY(-50%) translateX(10px);
}

.filler-flex{
  flex-grow: 9;
}

.ap-title{
  display: -webkit-box;
  height:2lh; 
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.casestudy-front-card h2,
.riservata-case-study-card h3{
  display: -webkit-box;
  height:2lh; 
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.md\:space-y-\[70px\] {
  margin-top: 70px;
  margin-bottom: 70px;
}

.site-header.riservata-header>div,
.ar-pagemaincont #primary{
  max-width: 1600px;
  margin: auto;
}

.modal-header .btn-close{
  background-color: rgba(255, 255, 255, 1);
  color:#000;
  border-radius: 50%;
  position:absolute;
  top: 2.8rem;
  right: 3rem;
  opacity: 0.7;
}
.modal-header .btn-close:hover,
.modal-header .btn-close:focus{
  opacity: 1!important;
  outline: 0;
}

.internal-ar{
  padding:0.85rem 1.5rem;
  /*box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);*/
  position: relative;
  background-color: #eff3f7;
}
.ar-spaces{padding:2rem 2.5rem;background:#fff;}

.m-ar-img-cont{
  border:1px solid var(--color-stroke-2,#e5e7eb);
  min-height:360px;
  max-height: 400px;
}
.m-ar-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.lg-card-richiedi{
  padding:2.75rem;
}

.marquee-leftgradient{height:130px;width:150px;background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, #fff 39.14%)}
.marquee-rightgradient{height:130px;width:150px;transform:rotate(180deg);background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, #fff 39.14%)}
.sh,
.sh>article{
  align-items:stretch;
}
.sh>article{
  display: flex;
}

.comuni-modal {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
.comuni-modal li {
display: block;
/*border: 1px solid #d2d2d2;*/
/*padding: 0.5em 0.7em;*/
padding: 0.7em 0.8em;
margin-top: -1px;
margin-left: -1px;
margin-bottom: 0;
}
.comuni-modal li {background-color: white;}
@media screen and (min-width: 992px){
  .comuni-modal li:nth-child(8n+1),
  .comuni-modal li:nth-child(8n+2),
  .comuni-modal li:nth-child(8n+3),
  .comuni-modal li:nth-child(8n+4){background-color: #eff3f7;}
}
@media screen and (max-width: 991px){
  .comuni-modal li:nth-child(4n+1),
  .comuni-modal li:nth-child(4n+2) {
    background-color: #eff3f7;
  }
}

.news-card .line-clamp-2,
.desc-webinar{
  max-height: 3lh;
  overflow: hidden;
  text-overflow:ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-size: 1.1em !important;
}

.mb15{
  margin-bottom: 15px;
}


.riservata-home-card{
  border:1px solid var(--color-stroke-2,#e5e7eb);
  padding:1.75rem;
  gap:1.5rem;
  flex-direction: column;
  max-width: 100%;
}

.rateo-back .riservata-home-card{
  aspect-ratio: 10/11;
}

@media screen and (max-width: 991px){
  .riservata-home-card{
    aspect-ratio: 10/11;
  }
}


@media screen and (min-width: 992px){
  .riservata-home-card{
    height:100%;
  }
}

.riservata-home-fill-card{
  background-position: center!important;
  background-size: cover!important;
  justify-content: end;
  background-repeat: no-repeat!important;
}
.riservata-home-fill-card>div{
  align-self: end;
}
.riservata-home-fill-card>div h3{
  position: relative;
  padding-right: 1em;
}
.riservata-home-fill-card>div h3 svg{
  position: absolute;
  top: 50%;
  transform: translate(-20%,-40%);
  right: 0;
}

.riservata-case-study-card,
.riservata-workshop-card,
.riservata-webinar-card{
  border:1px solid var(--color-stroke-2,#e5e7eb);
  background:#fff;
}

.riservata-search-grid .riservata-case-study-card:hover, .riservata-search-grid .riservata-case-study-card:focus-visible,
.riservata-search-grid .riservata-workshop-card:hover, .riservata-search-grid .riservata-workshop-card:focus-visible,
.riservata-search-grid .riservata-webinar-card:hover, .riservata-search-grid .riservata-webinar-card:focus-visible{
  border-color: var(--color-primary-500, #f29200)!important;
}

.hero-h-cb {
    margin-top: 100px;
}

.desc-box-home p{
  font-size: 1.1em!important;
}

.img_contain img{object-fit: contain!important;}

.h-400 {
  height: 400px;
}

.half-imgcont {
  position: relative;
  display: block;
  overflow: hidden;
}

.workshop-info {
  padding: 1em;
  /*padding-left: 2.2em;*/
  padding-left: 3.4em;
  position: relative;
  max-width: 30em;
  border-radius: 13px;
  line-height: 1;
}

.workshop-info small{
  font-size: 1em;
}

.workshop-info:before {
  /* left: 1em; */
  content: "";
  display: block;
/*  width: 1.4em;
  height: 1.4em;*/
  width: 1.6em;
  height: 1.6em;
  position: absolute;
  top: 50%;
  /*left: 0;*/
  left: 1em;
  transform: translate(0,-50%);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  /*background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300'%3E%3Cpath d='M150,15 Q157,15 161,22 L288,252 Q292,260 284,260 L16,260 Q8,260 12,252 L139,22 Q143,15 150,15 Z' fill='none' stroke='%23000000' stroke-width='10' stroke-linejoin='round'/%3E%3Cline x1='150' y1='105' x2='150' y2='205' stroke='%23000000' stroke-width='12' stroke-linecap='round'/%3E%3Ccircle cx='150' cy='232' r='7' fill='%23000000'/%3E%3C/svg%3E");*/
  background-image: url("../img/icona-info.svg");
}

.workshop-info b{
  font-weight: 500!important;
}

.aligncenter{
  margin-left: auto;
  margin-right: auto;
}

.colorplus {
  color: #7030A0;
}

html{
  --min-or-width:calc(100% - 17em);
}
.max-w-1280 {
  max-width: min(1280px, var(--min-or-width));
}

.fiximghalf{
  align-items: stretch;
}

.fiximghalf figure,
.fiximghalf figure img{
  height: 100%;
}

.daticont{
  display: flex;
}
.daticont .infoico {
  width: 5em;
  height: auto;
  object-fit: contain;
  align-self: center;
  object-position: center;
}

@media screen and (min-width: 1200px){
  .lg-mh-300{
    max-height: 300px;
  }
}
@media screen and (min-width: 992px){

  .sideblock-webinar{padding-right:3.5rem!important;padding-left:42px!important;}
  .lg-mw90{
    max-width: 90%;
  }
  .lg-mt30{
    margin-top: 30px;
  }
  .lg-mb30{
    margin-bottom: 30px;
  }
  .lg-mb70{
    margin-bottom: 70px;
  }
  .lg-pt30{
    padding-top: 30px;
  }
  .lg-pb30{
    padding-bottom: 30px;
  }
  .lg-h-200{
    height: 200px;
  }
  .lg-h-250{
    height: 250px;
  }
  /*.lg-mh-300{
    max-height: 300px;
  }*/
  .lg-header-block-chi-siamo{
    padding-top:7rem;
    padding-bottom:3.5rem;
  }
  .lg-mt4rem{
    margin-top: 4rem;
  }
  .lg-mt6rem{
    margin-top: 6rem;
  }
  .lg-pb7rem{
    padding-block: 7rem;
  }
  .lg-pb2rem{
    padding-block: 2rem;
  }
  .lg-pbot2rem{
    padding-bottom: 2rem;
  }
  .lg-pb3-5rem{
    padding-block:3.5rem;
  }
  .lg-mt-5rem{
    margin-top:5rem;
  }
  .lg-mb-5rem{
    margin-bottom:5rem;
  }
  .lg-mb-3-5rem{
    margin-bottom:3.5rem;
  }
  .lg-mb-2-5rem{
    margin-bottom:2.5rem;
  }
  .lg-mb-0-5rem{
    margin-bottom:0.5rem;
  }
  .headermodalpadding{
    padding: 1.75rem 2rem 0.5rem!important;
  }
  .bodymodalpadding{
    padding:1.5rem 2rem 2rem!important;
  }

  .ar-lg-int-space{
    max-width:920px;margin:0 auto 2.5rem;
  }

  .lg-richiedi-top-box{
    padding-block:100px;margin-left:1.25rem;margin-right:1.25rem;
  }
  .lg-card-richiedi{
    max-width:371px;
  }
  .lg-map-padding{
    padding:0.625rem;
  }
  .fp-news{
    align-items: stretch!important;
  }
  .fp-news .imgbskt figure,
  .fp-news .imgbskt img{
    height: 100%;
  }
  .flex-lg-nowrap{flex-wrap: nowrap!important;}
  .programma-fillinsides{justify-content: stretch;}
  .programma-fillinsides > div {
    width: 100%;
  }
  .mh-lg-450{
    min-height: 450px;
  }
  .h-webinar-cb figure{
    min-height: Calc(500px - 1em);
    display: flex;
  }
  .h-webinar-cb figure img{
    object-fit: contain;
  }

  .fleshborder{
    align-self: stretch;
    display: flex;
    align-items: center;
    background-color: #fff;
  }
  .fleshborder img{
    max-height: none!important;
  }
  .fleshborder.noiscrizione > figure > img{
    height: 450px!important;
  }

  .ml-lg-0{
    margin-left: 0!important;
  }

  .badge-cyan .container-w-cb {
    max-width: 80vw !important;
  }

  .alt-sec-or .text-heading-4{
    font-size: 1.3rem!important;
  }

  .giulianotextlgpadding{
    padding-right:3.5rem!important;
    padding-left:42px!important;
  }
}

@media screen and (max-width: 991px){
  html,body{
    max-width: 100vw;
    overflow-x: hidden;
  }

  .mob-mx-auto{
    margin-left: auto;
    margin-right: auto;
  }

  .max-w-1280{
    max-width: 100%;
  }

  .entofix{
    padding-left: 10px;
    padding-right: 10px;
  }
  .entofix > div {
    margin-left: 0;
    margin-right: 0;
  }
  .topmobspace{
    /*padding-top: 50px;*/
    padding-top: 40px;
  }
  .mobcenter{
    text-align: center;
  }
  .mobcenter>*{
    margin: auto;
  }
  .page-id-22 .icona-cb{
    margin: auto;
  }
  .xs-sep{
    margin-bottom: 1em;
  }
  .py-mob-section,
  .py-section{
    /*padding-block: 50px;*/
    padding-block: 50px;
  }
  .container-bottoni-sw{
    flex-direction: column;
  }
  .dettagli{
    margin-left: -5px;
  }

  .n-cerchio-bm{
    align-self: start;
  }
  
  .data-webinar:not(.scaled-2) {
    top: 0.75em;
    left: 0.75em;
    width: 8em;
    padding: 0.5em 1em;
  }
  .data-webinar:not(.scaled-2) .day {
    font-size: 1.5em;
  }
  .data-webinar:not(.scaled-2) .month-year {
    font-size: 0.8em;
  }
  .data-webinar:not(.scaled-2) .time {
    font-size: 0.8em;
  }
  .data-webinar:not(.scaled-2) .ico-event img {
    width: 2em;
    height: 2em;
  }
  .badge{
    margin-bottom: 0.5rem;
  }
  .mob-mtop025{
    margin-top: 0.25rem;
  }
  
  .mob-mt3-5rem{
    margin-top:3.5rem!important;
  }
  .mob-mb3-5rem{
    margin-bottom:3.5rem!important;
  }

  .mob-mx-0{
    margin-left: 0!important;
    margin-right: 0!important;
  }
  .mob-mx-10{
    margin-left: 10px!important;
    margin-right: 10px!important;
  }
  .mob-rounded-0{
    border-radius: 0;
  }
  .mob-mx-10:not(.badge-cyan) .main-container{
    padding-right: 0!important;
    padding-left: 0!important;
  }
  .mob-mx-min10{
    margin-left: -10px;
    margin-right: -10px;
  }
  .mob-px-20{
    padding-left: 20px;
    padding-right: 20px;
  }

  .mob-mt-30{
    margin-top: 30px;
  }

  .mob-mt-15{
    margin-top: 15px;
  }

  .mob-mt-0{
    margin-top: 0px;
  }

  .mob-p0{
    padding: 0!important;
  }
  .mob-py40{
    padding-top: 40px!important;
    padding-bottom: 40px!important;
  }
  .mob-py10{
    padding-top: 10px!important;
    padding-bottom: 10px!important;
  }

  .mob-my10{
    margin-top: 10px!important;
    margin-bottom: 10px!important;
  }
  .mob-my15{
    margin-top: 15px!important;
    margin-bottom: 15px!important;
  }
  .mob-my30{
    margin-top: 30px!important;
    margin-bottom: 30px!important;
  }
  .mob-py30{
    padding-top: 30px!important;
    padding-bottom: 30px!important;
  }
  .mob-px10{
    padding-left: 10px!important;
    padding-right: 10px!important;
  }
  .mob-py15{
    padding-top: 15px!important;
    padding-bottom: 15px!important;
  }
  .mob-px0{
    padding-left: 0px!important;
    padding-right: 0px!important;
  }
  .mob-px20{
    padding-left: 20px!important;
    padding-right: 20px!important;
  }
  .mob-mxauto {
    margin-left: auto!important;
    margin-right: auto!important;
  }
  .mob-gap30{
    row-gap: 30px;
  }
  .mob-gap15{
    row-gap: 15px;
  }
  .mob-gap0{
    row-gap: 0px;
  }

  .mob-pt30{
    padding-top: 30px!important;
  }
  .mob-pb30{
    padding-bottom: 30px!important;
  }
  .mob-pb15{
    padding-bottom: 15px!important;
  }
  .mob-pt0 {
    padding-top: 0!important;
  }
  .mob-pb-0 {
    padding-bottom: 0!important;
  }

  .mob-mt0 {
    margin-top: 0!important;
  }
  .mob-mb30{
    margin-bottom: 30px!important;
  }
  .mob-mb15{
    margin-bottom: 15px!important;
  }
  .mob-mt30{
    margin-top: 30px!important;
  }
  .mob-mt15{
    margin-top: 15px!important;
  }
  .mob-mb0{
    margin-bottom: 0px!important;
  }
  .mob-mblock0{
    margin-block: 0;
  }
  .mob-p15 {
    padding: 15px;
  }

  .headermodalpadding{
    padding: 10px 10px 15px!important;
  }

  .headermodalpadding-reg{
    padding: 1.75rem 10px 0px!important;
  }

  .bodymodalpadding{
    padding: 15px 10px 10px!important;
  }
  .modal-dialog-scrollable .modal-body.bodymodalpadding{
    max-height: Calc(100vh - 200px);
  }

  .mob-text-left{
    text-align: left;
  }
  .mob-text-center{
    text-align: center;
  }
  .mob-jc-center{
    justify-content: center!important;
  }
  .mob-jc-start{
    justify-content: start!important;
  }
  .mob-ai-start{
    align-items: start!important;
  }
  .mob-ai-center{
    align-items: center!important;
  }
  .mob-direction-col{
    flex-direction: column!important;
  }

  .modal-header .btn-close{
    top: 30px;
    right: 30px;
  }
  .mob-space-ham{
    padding-left: 5em;
    position: relative;
  }

  .ar-spaces{padding:2rem 10px; margin-top: 100px;}
  #masthead{
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 900;
    /*background-color: #fff;*/
    background-color: #eff3f7;
  }
  .filler-flex{display: none;}
  .m-ar-img-cont{
    max-height: none;
    max-width: Calc( 100vw - 20px);
    aspect-ratio: 3/2;
    width: 100%;
    height: auto;
    min-height: 0;
  }
  .marquee-leftgradient,
  .marquee-rightgradient{
    width: 3em;
  }
  .cont-pa-dettagli {
    grid-template-columns: 1fr;
  }

  .comuni-modal {
    grid-template-columns: 1fr 1fr;
  }

  .workshop-info {
    /*padding-left: 0!important;*/
    padding-left: 1rem!important;
    padding-top: 2em;
    text-align: center;
  }
  .workshop-info::before {
    transform: translate(-50%,40%)!important;
    top: 0!important;
    left: 50%!important;
  }
  .daticont{
    flex-direction: column;
    align-items: center;
  }

  .svgimg{
    max-width: 450px;
    margin: auto;
    width: 100%;
  }
  #mobile-menu li {
    padding: 0.4em 0;
    border-bottom: 1px solid var(--color-background-4);
  }
  #mobile-menu li:last-child {
    border-bottom: 0;
  }

  .mob-max-w-629{
    max-width: 629px;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 1200px) {
.arico{
    width: 3rem;
  }
}

@media screen and (max-width: 991px) {
  .py-mob-section, .py-section,.py-section-responsive {
    padding-block: 75px;
    padding-left: 15px;
    padding-right: 15px;
  }

  .py-mob-section-red {
    padding-block: 10px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .mob-pt60 {
    padding-top: 60px !important;
  }
  .mob-pb60 {
    padding-bottom: 60px !important;
  }
  .mob-py60 {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .mob-px15 {
    padding-left: 15px!important;
    padding-right: 15px!important;
  }
  .mob-px30 {
    padding-left: 30px!important;
    padding-right: 30px!important;
  }
  .mob-pb45 {
    padding-bottom: 45px !important;    
  }
  .pb-section{
    padding-bottom: 60px !important;    
  }
  .mobile-submenu li{
    border-left: 5px solid var(--color-background-4);
    border-bottom:0!important;
  }
}

.details-body ul li:before{
  display: none;
}

.nowrap{
  white-space:nowrap;
}

.container-bottoni-sw *:first-child{
  margin-left: 0!important;
}

.h-max-150.figure-top-modal img{
  max-height: 150px;
}

.nav-link-text{
  padding-right: 1px;
}
section,
.max-vis-w {
  max-width: 100vw;
}

.sec-user-ui {
  display: flex;
  gap: 1em;
  align-items: center;
  height: 2em;
}
.btn-home svg,
.usericon>img {
  height: 1.8em;
  width: 1.8em;
}
.user-name-desk {
  margin-left: 0.5em;
}
.sec-user-ui > * {
  /*height: 2em;*/
  display: flex;
  align-items: center;
}

.res-txt{ line-height:1em; color:#ed7d31; }

.btn-custom.btn-full-orange {
  background-color: var(--color-primary-500);
  color: var(--color-white);
  border-color: var(--color-primary-600);
}
.btn-custom.btn-full-orange svg {
  transition: all 0.5s ease-in-out;
}
.btn-custom.btn-full-orange:hover {
  border-color: var(--color-primary-600);
  background-color: var(--color-background-1);
  color: var(--color-secondary);
}
.btn-custom.btn-full-orange:hover svg {
  fill: var(--color-secondary);
}

.btn-custom.btn-full-white {
  background-color: var(--color-background-1);
  border-color: var(--color-background-1);
  color: var(--color-secondary);
}
.btn-custom.btn-full-white:hover {
  border-color: var(--color-background-1);
  background-color: var(--color-background-1);
  color: var(--color-secondary);
}


.btn-home,
.btn-user{
  transform: none!important;
  padding-inline: 0.625rem;
  padding-block: 0.625rem;
}
.btn-home span{
  margin: 0 0.5em;
}
.btn-home span,
.btn-user span{
  transform: none!important;
  text-align: left;
}
.btn-user .user-name-desk{
  min-width: 7em;
}
.btn-home:before,
.btn-user:before{
  display: none!important;
}
.btn-home{
  min-width: 0;
}

.user-name-mob{display: none;}

.user-dropdown > div {
  padding-left: 0.5em;
  padding-right: 0.5em;
}

@media screen and (max-width: 991px) {
  .btn-home span,
  .user-name-desk{display: none!important;}
  .user-name-mob{display: block!important;}
}

/* ============================================
   User dropdown (area riservata)
   - .usericon: bottone (stile invariato, già personalizzato dall'utente).
   - .user-dropdown-wrap: wrapper unico che contiene bottone + pannello,
     la sua larghezza viene sincronizzata via JS con max(bottone,pannello,7em).
   - .user-dropdown: pannello attaccato sotto al bottone (nessun gap), appare
     solo al click (classe .open sul .sec-user-ui). Nessun hover.
   - .user-dropdown-arrow: freccia dentro il bottone che ruota di 180° all'apertura.
   ============================================ */
.sec-user-ui {
  position: relative;
  z-index: 99999999999;
}
.sec-user-ui .user-dropdown-wrap {
  position: relative;
  display: inline-block;
  min-width: 7em;
}
.sec-user-ui .usericon {
  cursor: pointer;
  user-select: none;
  width: 100%;
  min-width: 7em;
  z-index: 99999999;
}
.sec-user-ui .user-dropdown-arrow {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
  padding-left: 0.5em;
  transition: transform 0.25s ease;
}
.sec-user-ui.open .user-dropdown-arrow { transform: rotate(180deg); }

.sec-user-ui .user-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1000;
  min-width: 7em;
  padding: 0.75rem 1rem;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
  background-color: var(--color-background-1, #fff);
  color: var(--color-secondary, #1a1a1a);
  /*border: 1px solid var(--color-stroke-3, #e5e7eb);*/
  border: 1px solid background-color: var(--color-background-1);
  border-top: 1.5em solid var(--color-background-1);
  border-radius: 0 0 0.75rem 0.75rem;
  box-shadow: 0px 4px 12px rgba(16, 24, 40, 0.1);
  transform: none !important;
  transition: none !important;
  margin-top: -1.5em;
}


@media screen and (max-width: 991px) {
  .sec-user-ui .user-dropdown {
    border-top: 0;
    margin-top: 0;
  }
  .usericon>img {
    max-width: none;
  }
  .sec-user-ui .user-dropdown{
    /*border-radius: 0.75rem;*/
    border-radius: 20px;
    /*border: 1px solid var(--color-stroke-3, #e5e7eb);*/
    border: 1px solid var(--color-background-1, #fff);
  }
}

.sec-user-ui .user-dropdown:hover { transform: none !important; background-color: var(--color-background-1, #fff); color: var(--color-secondary, #1a1a1a); }

.sec-user-ui .user-dropdown .user-name-mob {
  font-weight: 500;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--color-stroke-3, #e5e7eb);
}
.sec-user-ui .user-dropdown .logout { display: flex; }
.sec-user-ui .user-dropdown .logout a {
  color: var(--color-secondary, #1a1a1a);
  text-decoration: none;
  gap: 0.5em;
}
.sec-user-ui .user-dropdown .logout a:hover { color: var(--color-primary-500, #f29200); }

/* Solo click (classe .open aggiunta dal JS): niente hover né desktop né mobile. */
.sec-user-ui.open .user-dropdown { display: flex; }
/* Quando aperto il bottone perde l'arrotondamento inferiore per "fondersi" col dropdown. */
/*.sec-user-ui.open .usericon {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}*/

.ar-logo-cont{
  max-height: 65px;
  aspect-ratio: 4/1;
}

.arhome{
  padding-block: 4rem;
}

/* --- Mobile (<992px): il bottone è solo icona --- */
@media (max-width: 991px) {
  .sec-user-ui .user-dropdown-wrap {
    display: inline-block;
    min-width: 0;
    width: auto;
  }
  .sec-user-ui .usericon {
    width: auto;
    min-width: 0;
  }
  
  .arhome{
    padding-block: 6rem;
  }
  
  /*.sec-user-ui .user-dropdown-arrow { display: none; }*/
  /* Il pannello resta leggibile: proprio min-width e allineato a destra sotto l'icona. */
  .sec-user-ui .user-dropdown {
    left: auto;
    right: 0;
    min-width: 12em;
    margin-top: 10px;
  }
  .ar-logo-cont{max-height: 2.75em}
  .btn-home svg,
  .usericon>img {
    height: 1em;
    width: 1em;
  }
}

.locksvg{width: 20px;height:20px;}

.locksvg .st0 {
  fill: #fff;
}

.locksvg .st0, .locksvg .st1, .locksvg .st2 {
  fill-rule: evenodd;
}

.locksvg .st1 {
  fill: #ee833a;
}

.locksvg .st2 {
  fill: #f3a876;
}

.stwhite {
  fill: #fff;
}

.riservato{
  padding: 0.4em!important;
  background: #f6a335!important;
  border-radius: 0.4em!important;
}
.riservato .res-txt{
  color:#fff!important;
}