/**
 * @file
 * Subtheme specific CSS.
 */
/****************************
 Reset
 *****************************/
.node .field--type-image {
  float: none;
}

.path-taxonomy #main-wrapper .row {
  /* margin: 0; */
}

/******************************
   General
 ******************************/
body {}

#main-wrapper {
  max-width: 100%;
  margin: auto;
}

#content {
  padding-left: 0px;
  padding-right: 0px;
}

#splash_wapper {
  position: fixed;
  z-index: 1002;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--white);
}

#splash_inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

#splash_logo {
  max-width: 300px;
  height: auto;
  animation-name: splashpulse;
  animation-duration: 0.8s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

@keyframes splashpulse {
  0% {
    transform: scale(1)
  }

  0% {
    transform: scale(1.1)
  }
}

/******************************
  Header
******************************/
#header {
  position: sticky;
  top: 0;
  background-color: #fff;
  z-index: 1001;
}

.region-secondary-menu {
  background-color: var(--graydark);
  width: 100%;
}

.region-secondary-menu a {
  color: #ffffff;
}

.navbar-brand img {
  height: 50px;
  width: auto;
  margin-top: 1rem;
  margin-bottom: 1rem;
  transition: 0.3s linear all;
}

.navbar-expand-lg {
  flex-direction: column;
}



#top_navigation{
  display: block;
  position: relative;
  width: 100%;

}

#top_navigation .region-quick-menu{
  padding-bottom: 1rem;
}

#top_navigation button.navbar-toggler{
  position: absolute;
  top: -3.5rem;
  right: 0;
}

#top_navigation .region-quick-menu .nav {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.region-quick-menu li a.nav-link {
  color: var(--black);
  border: 1px solid var(--yellow);
  margin: 0 0.25rem;

}

.region-quick-menu li a.nav-link{
  padding: 0 0.25rem;
  font-size: 1rem;
  font-weight: bold;
}

#navbar-main {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0 1rem;
  padding-bottom: 0px;
  -webkit-box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.5);
}

/* Main Menu */
#CollapsingNavbar,
#block-fidelitas-main-menu,
.navbar-expand-lg .offcanvas {
  background-color: var(--white);
  width: 95% !important;
}


#block-fidelitas-main-menu{

}

#block-fidelitas-main-menu .main-menu{
  display: grid;
  grid-template-columns: auto auto auto;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-gap: 1rem;
}

#block-fidelitas-main-menu .main-menu > .menu-item.menu-item--level-0 {
  border: 1px solid var(--yellow);
  padding: 1.2rem;
}

#block-fidelitas-main-menu a {
  color: var(--yellow-dark);

  font-size: 1.5rem;
}

#block-fidelitas-main-menu .menu-item__header{
  border-bottom: 2px solid var(--yellow);
  margin-bottom: 0.5rem;

}

#block-fidelitas-main-menu .menu-item__header a{

}

#block-fidelitas-main-menu .menu-item__children{
  padding-left: 1rem;
}

#block-fidelitas-main-menu .menu-item__children .menu-item a{
  font-size: 1.2rem;
}






/******************************
  Footer
******************************/
#footer_separator {}

#footer_separator .homenewsblock {
  padding-bottom: 100px;
}

#footer_separator_inner {
  height: 30px;
}

.site-footer {
  background-color: transparent;
  padding: 35px 0 0 0;
  margin-top: -135px;
}

.site-footer .container-fluid {
  background-color: #ffffff;
  border: 1px solid transparent;
}

.site-footer .container-fluid .site-footer__top {
  background-color: transparent;
  display: flex;
  justify-content: space-evenly;
  align-items: stretch;
}

.site-footer .content {
  color: var(--gray);
  font-size: 0.7em;
}

.site-footer .content a,
.site-footer .content a:hover,
.site-footer .content a.is-active {
  color: var(--gray);
}

.site-footer .block {
  margin: 0;
  border: 0px;
  border-color: rgba(255, 255, 255, 0.1);
  padding: 10px;
  color: var(--black);
}

#block-footerleft img {
  width: 80%;
  max-width: 300px;
  height: auto;
}

.site-footer .block-menu {}

.site-footer .block-menu ul.nav {
  margin: 0;
  padding: 0;
  flex-direction: column;
}

.site-footer .block-menu ul.nav li.nav-item {
  margin: 0;
  padding: 0;
}

.site-footer .content p,
.site-footer .block-menu ul.nav li.nav-item a.nav-link {
  color: var(--gray);
  padding: 0.2rem;
  font-size: 0.95rem;
}

#block-footerbottom p,
#block-footerbottom li {
  color: var(--graylight);
}

#block-footerbottom a {
  color: var(--white);
}

.logo_footer {
  text-align: center;
}

.logo_footer a {
  display: inline-block;
  max-width: 300px;
  height: auto;
  margin-bottom: 5rem;
}

.logo_footer a img {
  width: 100%;
  height: auto;
}

.site-footer__top p {
  margin-top: 0em;
}

.site-footer__top>section {
  text-transform: uppercase;
  color: var(--gray);
  border-left: 2px solid var(--gray);
  padding-left: 1rem;
}

.site-footer__top>section a {
  color: var(--gray);
}

#block-loghicertificati img.footer_cert_image {
  width: 40%;
  max-width: 120px;
  height: auto;
  margin-right: 20px;
}

#block-footerbottom {
  text-align: center;
}

#block-loghicertificati {
  padding-top: 2rem;
}

#footer_logos {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  flex-direction: row;
  flex-wrap: wrap;
}

#footer_logos>div {
  width: 25%;
}

#footer_logos .field--name-field-media-image {
  padding: 0 1rem;
  text-align: center;
}

#footer_logos .field--name-field-media-image img {
  margin: auto;
  max-width: 150px;
}

#block-footerbottom {
  background-color: var(--black);
  color: var(--white);
}

#block-footerbottom .content {
  color: var(--white);
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/******************************
  Blocchi CTA
******************************/
#block-contattaciora {
  margin-top: 4rem;
  margin-bottom: 4rem;
  text-align: center;
}

#block-contattaciora .bottom_cta {
  margin-top: 1rem;
}

#block-contattaciora .btn {
  font-size: 1.5rem;
}

/******************************
  Content Types
******************************/

.page_header img.image-style-header-image {
    max-width: 200%;
    height: auto;
    width: 100%;
}



#block-fidelitas-breadcrumbs {
  margin-left: calc(var(--bs-gutter-x) * .5 * -1);
  margin-right: calc(var(--bs-gutter-x) * .5 * -1);
  padding-top: 1rem;
}

#block-fidelitas-breadcrumbs,
#block-fidelitas-page-title {
  text-align: center;
}

.page_has_header #block-fidelitas-breadcrumbs,
.page_has_header #block-fidelitas-page-title {
  background-color: var(--yellow);
}

.share_wrapper {
  text-align: center;
  color: var(--black);
  margin: 0;
  padding: 0;
  width: 100%;
  line-height: 16px;
  position: relative;
}

#block-bettersocialsharingbuttons {
  display: inline-block;
  height: 20px;
}

.share_wrapper .social-sharing-buttons {
  display: flex;
  display: inline-block;
  margin: 0;
}

.social-sharing-buttons a, .social-sharing-buttons__button {
  display: inline-block;
  margin: 0 2px;
  height: 20px;
}

.social-sharing-buttons a svg, .social-sharing-buttons__button svg {
  margin: 0;
  padding: 0;
  height: 20px;
}

.share_wrapper * {
  display: inline;
  line-height: 16px;
}

.share_wrapper .share_label {
  font-size: 0.8rem;
  display: inline-block;
  font-weight: bold;
  position: relative;
  top: -5px;
}

#block-fidelitas-breadcrumbs .breadcrumb {
  justify-content: center;
}

#block-fidelitas-breadcrumbs ol {
  margin: 0;
}

#block-fidelitas-breadcrumbs .breadcrumb a {
  color: var(--black);
  text-decoration: none;
}

#block-fidelitas-page-title h1 {
  margin: 0;
  padding: 1rem;
  position: relative;
}

#block-fidelitas-page-title .field--name-field-icona {
  display: inline-block;
  margin-right: 0px;
}

#block-fidelitas-page-title .field--name-field-icona svg {
  fill: var(--black);
  margin: 0px;
  margin-top: -0.5rem;
  width: 3rem;
  height: 3rem;
}

.page_has_header .page_header {
  background-image: url(../img/cuneo.png);
  background-size: cover;
  background-position: top left;
  margin-top: 0px;
  margin-bottom: 2rem;
}

/* Homepage */
.field--name-field-media-image.field--type-image {
  margin: 0px;
}

.field--name-field-media-image.field--type-image img {
  margin: 0;
  width: 100%;
  max-width: none;
  height: auto;
}

.paragraph--type--slide .slide .slide_image .cuneo {
  position: absolute;
  top: 5%;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/cuneo_slideshow.png);
  opacity: 0.7;
}

.paragraph--type--slide .slide .slide_content {
  position: absolute;
  top: 65%;
  left: 0;
  width: 100%;
  height: 43%;
  text-align: center;
}

.slick-slider.slick-dotted {
  position: relative;
  padding-bottom: 3rem;
}

.slick-slider.slick-dotted .slick-dots {
  position: absolute;
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: center;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10%;
  list-style-type: none;
}

.slick-slider.slick-dotted ul.slick-dots,
.slick-slider.slick-dotted ul.slick-dots li {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.slick-slider.slick-dotted ul.slick-dots li {
  width: 16px;
  height: 16px;
  border-radius: 16px;
  border: 2px solid var(--black);
  background-color: transparent;
  margin: 0 10px;
  cursor: pointer;
  list-style-type: none;
}

.slick-slider.slick-dotted ul.slick-dots li::marker {
  content: '';
  display: none;
}

.slick-slider.slick-dotted ul.slick-dots li.slick-active {
  background-color: var(--black);
}

.slick-slider.slick-dotted ul.slick-dots li button {
  display: none;
}

.paragraph--type--slide .slide h1,
.paragraph--type--slide .slide h2 {
  font-weight: bold;
  text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.50);
}

.paragraph--type--slide .slide h1,
.paragraph--type--slide .slide h2 {
  font-size: 3.0rem;
}

.field--name-field-slide-link a {
  display: inline-block;
  padding: 0.5rem 1rem;
  background-color: #fff;
  color: var(--black);
  border: 2px solid var(--black);
  text-decoration: none;
  font-size: 1.5rem;
}

.field--name-field-slide-link a:hover {
  background-color: var(--yellow);
  color: #fff;
}

.node--view-mode-square-preview {
  position: relative;
}

.node--view-mode-square-preview .settore_content {
  padding: 1rem;
  bottom: 0;
  left: 0;
  height: 15rem;
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  justify-content: flex-start;
}

.node--view-mode-square-preview .settore_content .field--name-title  {

}

.node--view-mode-square-preview .settore_content .teaser_actions {
  position: absolute;
  bottom: 1rem;
}

.node--view-mode-square-preview .settore_content h2 {
  color: var(--black);
  font-weight: bold;
  font-size: 2.5rem;
}


.node--type-soluzione.node--view-mode-square-preview {
  padding: 1rem;
  background-color: #fff;
  text-align: center;
}

.node--type-soluzione.node--view-mode-square-preview .field--name-field-icona {
  width: 60px;
  height: 60px;
  margin: auto;
  margin-bottom: 1rem;
  float: none;
  display: inline;
}

.node--type-soluzione.node--view-mode-square-preview .field--name-field-icona svg {
  width: 4rem;
  height: 4rem;
  margin: 0;
  padding: 0;
  margin-bottom: 1rem;
}

.node--type-soluzione.node--view-mode-square-preview h2 {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}

.path-frontpage .paragraph-id-9 .inner {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.path-frontpage .paragraph-id-129 {}

.path-frontpage .paragraph-id-129 img,
.path-frontpage .paragraph-id-129 svg {
  max-width: 250px;
  width: 80%;
  height: auto;
}

.path-frontpage .paragraph-id-9 .field--name-field-media-image {}

.path-frontpage .paragraph-id-9 img {
  display: block;
  max-width: 300px;
  width: 100%;
  height: auto;
  margin: auto;
}

.path-frontpage .paragraph .view_intro .tecnologie_box,
.page-node-215 .view_intro,
.hannoscelto .view_intro {
  margin-left: -1rem;
  margin-bottom: 2rem;
}

.path-frontpage .view_intro h2,
.tecnologie_box h2,
.region-related-content h2,
.page-node-215 .view_intro h2,
.node--type-sede .view_intro h2,
.hannoscelto .view_intro h2 {
  font-size: 3rem;
  padding-top: 1.5rem;
}

.page-node-215 .view_intro h2 {
  padding-top: 0rem;
}

.tecnologie_box h2,
.region-related-content h2,
.node--type-sede .view_intro h2 {
  margin-bottom: 3rem;
  margin-left: 0.5rem;
}

.path-frontpage .view_intro h2:before,
.tecnologie_box h2:before,
.region-related-content h2:before,
.page-node-215 .view_intro:before,
.node--type-sede .view_intro h2:before,
.hannoscelto .view_intro h2:before {
  content: '◼';
  font-size: 2rem;
  line-height: 3.5rem;
  float: left;
  margin-right: 1rem;
  color: var(--yellow);
}

.path-frontpage .paragraph.paragraph-id-12 .view_intro h2:before {
  color: var(--black);
}

.view-id-teasers.view-display-id-home_soluzioni .node--type-soluzione {}

.view-id-teasers.view-display-id-home_soluzioni .node--type-soluzione .square_inner {
  min-height: 390px;
  padding-bottom: 30px;
  position: relative;
}

.view-id-teasers.view-display-id-home_soluzioni .node--type-soluzione .square_inner .node_title {
  color: #000;
  text-decoration: none;
  display: inline-block;
}

.view-id-teasers.view-display-id-home_soluzioni .node--type-soluzione .square_inner .teaser_actions {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

#views-bootstrap-teasers-servizi-evidenza .fidelitas_accordion {
  color: var(--black);
  margin-bottom: 2rem;
  border: 0px;
}

#views-bootstrap-teasers-servizi-evidenza .fidelitas_accordion .accordion-button.collapsed {
  background-color: var(--graylight);
}

#views-bootstrap-teasers-servizi-evidenza .fidelitas_accordion .accordion-button:hover {
  background-color: var(--yellow);
}

.view-display-id-home_settori .slide .field--name-field-icona svg {
  margin-top: 0.5rem;
  width: 2.5rem;
  height: 2.5rem;
}

.homenewsblock {
  background-color: var(--graylight);
}

.homenewsblock .field--name-field-vista {
  padding-bottom: 3rem;
}

.homenewsblock #views-bootstrap-teasers-home-news>.row {
  align-items: stretch;
}

.homenewsblock #views-bootstrap-teasers-home-news>.row .col-12 {
  margin-bottom: 3rem;
}

.homenewsblock #views-bootstrap-teasers-home-news article.node--view-mode-square-preview {
  margin-left: 1rem;
  margin-right: 1rem;
  height: 100%;
}

.homenewsblock #views-bootstrap-teasers-home-news article.node--view-mode-square-preview .square_inner {
  height: 100%;
  position: relative;
  padding-bottom: 3rem;
}

.homenewsblock #views-bootstrap-teasers-home-news article.node--view-mode-square-preview .square_inner .teaser_actions {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.path-frontpage .cliente_item {
  text-align: center;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-bottom: 2rem;
}

.path-frontpage .paragraph-id-67 {
  min-height: 85px;
}

.path-frontpage .paragraph-id-129 {
  min-height: 180px;
}

.path-frontpage .paragraph-id-10 {
  min-height: 500px;
}

.path-frontpage .paragraph-id-12 {
  min-height: 500px;
}

.path-frontpage .paragraph-id-13 {
  min-height: 300px;
}

.path-frontpage .paragraph-id-19 {
  min-height: 80px;
}

.path-frontpage .paragraph-id-20 {
  min-height: 1200px;
}

/* Page, Soluzione, Settore*/
h1.title .field--name-title {}

h1.title .field--name-title .field--name-field-icona {
  width: 60px;
  height: 60px;
  margin-right: 1rem;
  display: inline-block;
  float: none;
  margin-top: -0.5rem;
}

h1.title .field--name-title .node_title {
  display: inline-block;
  font-weight: bold;
}

.paragraph-id-12 {
  background: linear-gradient(-10deg, #fdca00 0%, transparent 0%, transparent 45%, #fdca00 45%, #fdca00 100%, transparent 55%, transparent 100%);
}

/* Settori */
.view-display-id-page_settori .view-content{
  display: grid;
  grid-template-columns: 1fr;
}

.view-display-id-page_settori .view-content .views-row{

}

.node--type-settore.node--view-mode-teaser {
  position: relative;
  padding: 0;
}

.node--type-settore.node--view-mode-teaser .field--name-field-header-image img.image-style-header-image-rectangle {
  max-width: none;
  width: 100%;
}

.node--type-settore.node--view-mode-teaser .field--type-entity-reference {
  margin: 0;
}

.node--type-settore.node--view-mode-teaser .teaser_title .field--type-entity-reference.field--name-field-icona {
  float: left;
  margin: 0;
  margin-right: 2rem;
  height: 100%;
}

.node--type-settore.node--view-mode-teaser .teaser_title .field--type-entity-reference.field--name-field-icona svg {
  width: 3rem;
  height: 3rem;
  fill: var(--white);
}

.node--type-settore.node--view-mode-teaser h2.teaser_title{
  font-size: 3rem;
}

.node--type-settore.node--view-mode-teaser h2.teaser_title a {
  color: var(--white);
}

.node--type-settore.node--view-mode-teaser .settore_content {
  padding: 1rem;
}


.node--type-settore.node--view-mode-teaser .btn.btn-primary {
  width: 50%;
}

.node--type-settore.node--view-mode-teaser .field--name-field-soluzioni article.soluzione-icona-e-titolo svg {
  margin-top: -0.2rem;
}

.field--name-field-soluzioni article.soluzione-icona-e-titolo {}

.field--name-field-soluzioni article.soluzione-icona-e-titolo a,
article.servizio-icona-e-titolo>a {
  display: block;
  padding: 0.2rem 0.5rem;
  background-color: #fff;
  color: #000;
  margin-bottom: 1rem;
  border: 2px solid var(--yellow);
  text-decoration: none;
  transition: 0.3s linear all;
}

.field--name-field-soluzioni article.soluzione-icona-e-titolo a h2,
article.servizio-icona-e-titolo h2.node_title {
  color: #000;
  margin: 0px;
  padding: 0px;
  font-size: 1.5rem;
  line-height: 2.5rem;
}

.field--name-field-soluzioni article.soluzione-icona-e-titolo a:hover {
  background-color: var(--yellow);
}

.field--name-field-soluzioni article.soluzione-icona-e-titolo .field--name-field-icona {
  display: inline-block;
  width: 40px;
  margin-right: 1rem;
  margin-left: 1rem;
}

.field--name-field-soluzioni article.soluzione-icona-e-titolo svg,
article.servizio-icona-e-titolo svg {
  display: inline-block;
  fill: var(--black);
  margin: 0;
  margin-top: 0.5rem;
  width: 2rem;
  height: 2rem;
}

.row.soluzioni_items {
  align-items: stretch;
}

.soluzioni_items .soluzione_wrapper {
  padding: 1rem;
}

.soluzioni_items .soluzione_wrapper,
.soluzioni_items .soluzione_wrapper article {
  height: 100%;
}

/* Page Storia*/
.field--name-field-time-line-i {
  margin-top: 3rem
}

.paragraph--type--time-line.paragraph--view-mode--default {
  width: 100%;
  max-width: 1140px;
  padding: 0 15px;
  margin-top: 5rem;
  box-sizing: border-box;
  margin: 0 auto;
  position: relative;
}

.paragraph--type--time-line.paragraph--view-mode--default:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  height: 100%;
  width: 2px;
  background: var(--yellow);
  top: 0px;
}

.paragraph--type--time-line.paragraph--view-mode--default .field__items .field__item {
  display: flex;
  align-items: center;
}

.paragraph--type--time-line.paragraph--view-mode--default .field__items .field__item:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.paragraph--type--time-line-item {
  width: 50%;
  padding-right: 30px;
  padding-left: 30px;
  display: flex;
  align-items: center;
}

.field__item:nth-child(odd) .paragraph--type--time-line-item {
  padding-right: 30px;
  padding-left: 30px;
  display: block;
  position: relative;
}

.paragraph--type--time-line.paragraph--view-mode--default .field__items .field__item.field--name-field-testo {
  display: block;
  text-align: right;
}

.paragraph--type--time-line.paragraph--view-mode--default .field__items .field__item:nth-child(odd) .field__item.field--name-field-testo {
  text-align: left;
}

.timeline_item_content {}

.timeline_item_content .title {
  text-align: left;
}

.field__item:nth-child(even) .timeline_item_content .title {
  text-align: right;
}

.timeline_item_content .title h3,
.timeline_item_content .title h4 {
  display: inline-block;
  font-weight: bold;
}

.timeline_item_content .field__item .field__item.field--name-field-media-image,
.timeline_item_content img {
  display: inline-block;
  margin-bottom: 1rem;
  max-width: 250px;
  height: auto;
}

.timeline_item .dot {
  position: absolute;
  width: 12px;
  height: 12px;
  left: -6px;
  top: 50%;
  background: var(--yellow);
}

.field__item:nth-child(even) .timeline_item .dot {
  left: auto;
  right: -6px;
  top: 50%;
}

/* Page Pagina L'azienda */
.paragraph-id-43 .paragraph_tt .inner {
  margin: 1rem;
  border: 2px solid var(--yellow);
  height: 100%;
  padding: 1rem;
  margin-bottom: 2rem;
}

.paragraph-id-43 .paragraph_tt .inner .field--name-field-media-svg {
  width: 100%;
  text-align: center;
  margin-bottom: 1rem;
}

.paragraph-id-43 .paragraph_tt .inner svg {
  width: 5rem;
  height: 5rem;
  fill: var(--yellow);
  margin: auto;
}

.paragraph-id-43 .paragraph_tt .inner svg,
.paragraph-id-43 .paragraph_tt .inner path.cls-1 {
  fill: var(--yellow);
}

.counter_grid {
  display: flex;
  justify-content: space-evenly;
  margin-bottom: 2rem;
}

.counter_grid .counter_item {
  padding: 1rem;
  text-align: left;
  min-width: 12rem;
}

.counter_grid .counter_item .counter {
  font-size: 3rem;
  font-weight: bold;
  border-bottom: 2px solid var(--yellow);
  position: relative;
}

.counter_grid .counter_item .counter:after {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: var(--yellow);
  position: absolute;
  right: -5px;
  bottom: -6px;
}

.counter_grid .counter_item .counter_label {
  font-size: 1.5rem;
  padding-left: 0.5rem;
  text-transform: lowercase;
  color: var(--black);
}

/* Page Pagina Lavora con noi*/
.view-display-id-block_lavora_con_noi .page_content {
  padding: 0rem 2rem 2rem 2rem;
}

.view-display-id-block_lavora_con_noi .page_content h2 {
  font-weight: bold;
}

/* Soluzioni */
.node--type-soluzione.node--view-mode-teaser {
  margin-bottom: 3rem;
}

.soluzionewrapper {
  width: 80%;
  margin: auto;
  margin-top: -15rem;
  padding: 1rem;
  background-color: #fefefe;
  position: relative;
}

/* Soluzione esplosa */
.node--type-soluzione .servizi_box,
.node--type-servizio .tecnologie_box {
  background-color: var(--graylight);
}

/* Dove siamo */
#block-views-block-dove-siamo-regioni-sedi-selettore-regioni .view-dove-siamo-regioni,
#block-views-block-dove-siamo-regioni-sedi-selettore-regioni .view-dove-siamo-regioni .view-header,
#block-views-block-dove-siamo-regioni-sedi-selettore-regioni .view-dove-siamo-regioni .view-content {
  display: inline-block;
}

#block-views-block-dove-siamo-regioni-sedi-selettore-regioni .view-dove-siamo-regioni {
  width: 100%;
  text-align: center;
  margin-bottom: 2rem;
}

#block-views-block-dove-siamo-regioni-sedi-selettore-regioni .view-dove-siamo-regioni .view-header {
  padding-right: calc(var(--bs-gutter-x) * 1);
  padding-left: calc(var(--bs-gutter-x) * .5);
}

#block-views-block-dove-siamo-regioni-sedi-selettore-regioni .view-dove-siamo-regioni .view-content.row>.views-row {
  width: auto;
  display: inline-block;
}

.view-id-dove_siamo.view-display-id-sedi_map {
  margin-bottom: 2rem;
}

.node--type-sede.node--view-mode-teaser {
  margin-left: 0.5rem;
  margin-right: 0.5em;
}

.sede_field {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: 1rem;
}

.sede_field_icon {
  margin-right: 1.2rem;
  font-size: 1.2rem;
}

.sede_field p.address {
  margin: 0;
}

.node--type-sede.node--view-mode-teaser .teaser_actions {
  margin-bottom: 1rem;
}

.node--type-sede .sede_section_selector {
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.node--type-sede .sede_section_selector a.btn {
  font-size: 1.2rem;
  display: inline-block;
  margin: 0 2rem;
  padding: 0rem 1rem;
}

.node--type-sede .node--view-mode-full .sede_logo_wrapper {
  margin-bottom: 2rem;
}

.node--type-sede .node--view-mode-full .sede_logo_wrapper img {
  max-width: 300px;
  height: auto;
}

.node--type-sede #sede_section_servizi {}

.node--type-sede #sede_section_servizi .servizi_group {
  margin-bottom: 3rem;
}

.node--type-sede #sede_section_servizi .famiglia_title {
  margin-bottom: 1.5rem;
}

.node--type-sede #sede_section_servizi .famiglia_title svg {
  margin-top: 0.7rem;
}

/* Servizio Esploso */
.node--type-servizio {}

.node--type-servizio .servizio_body {
  margin-bottom: 2rem;
}

.node--type-servizio .soluzioni,
.node--type-tecnologia.node--view-mode-full .tech_includedIn {
  border: 2px solid var(--yellow);
  padding: 1rem;
  padding-bottom: 0rem;
}

.node--type-servizio .soluzioni .field__label,
article.node--type-tecnologia.node--view-mode-full .tech_includedIn .field__label {
  font-weight: bold;
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

.node--type-servizio .soluzioni .field--name-field-soluzioni article.soluzione-icona-e-titolo a,
article.servizio-icona-e-titolo>a {
  display: block;
  padding: 0.5rem;
  background-color: var(--yellow);
  color: #000;
  margin-bottom: 1rem;
  border: 2px solid var(--yellow);
}

.node--type-servizio .soluzioni .field--name-field-soluzioni article.soluzione-icona-e-titolo a:hover,
article.servizio-icona-e-titolo>a:hover {
  background-color: var(--white);
}

.node--type-soluzione.node--view-mode-square-preview .field--name-field-paragrafi .field__item.field--type-svg-image-field {
  margin-bottom: 0rem;
  display: block;
}

.node--type-soluzione.node--view-mode-square-preview .field--name-field-paragrafi .field--name-field-icona {
  float: none;
}

/* News */
#news_filter {
  padding: 1rem 0px;
  padding-bottom: 2rem;
  text-align: center;
}

#news_filter a.btn {
  display: inline-block;
  min-width: 12rem;
  margin: 0rem 1rem;
}

#views-bootstrap-teasers-page-news>.row {
  align-items: stretch;
}

#views-bootstrap-teasers-page-news>.row>.col-12 {
  margin-top: 1.5rem;
}

#views-bootstrap-teasers-page-news .node--view-mode-square-preview {
  height: 100%;
  margin-right: 0.5rem;
  margin-right: 0.5rem;
  padding-bottom: 2rem;
}

#views-bootstrap-teasers-page-news .node--view-mode-square-preview h2 {
  font-size: 1.7rem;
}

.node--view-mode-square-preview .teaser_actions {
  margin-top: 1.5rem;
}

.field--name-field-tipologia-news {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.field--name-field-tipologia-news .field__item {
  display: inline-block;
}

.field--name-field-tipologia-news .field__item a {
  background-color: var(--yellow-light);
  color: var(--black);
  padding: 0.1rem 0.5rem;
}

/* news view mode square-preview */
.news_content.square_inner h2 a {
  color: inherit;
  text-decoration: none;
}

/* news view mode full */
.node--type-news.node--view-mode-full .node__content .metadata {
  text-align: center;
}

.node--type-news.node--view-mode-full .node__content .metadata:after {
  content: '';
  display: block;
  width: 20%;
  margin: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  height: 3px;
  background-color: var(--yellow);
}

.node--type-news.node--view-mode-full .field_date {
  display: inline-block;
  color: var(--black);
  padding: 0.1rem 0.5rem;
  margin-bottom: .5rem;
}

.node--type-news.node--view-mode-square-preview .field_date,
.node--type-news.node--view-mode-teaser .field_date {
  display: inline-block;
  color: var(--black);
  margin-bottom: .5rem;
  font-weight: bold;
}

.node--type-news.node--view-mode-full .field_tipologia_news span {
  display: inline-block;
  margin-right: 5px;
}

.node--type-news.node--view-mode-full .field_paragrafi .container {
  padding: 0;
}

.node--type-news.node--view-mode-full .field--name-field-document>.field__item {
  margin-bottom: 1.5rem;
}

/* news vista per categoria */
.page-vocabulary-tipologia-news.path-taxonomy .view-taxonomy-term .view-content {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}

.page-vocabulary-tipologia-news.path-taxonomy .view-taxonomy-term .view-content .views-row {
  margin-bottom: 4rem;
}

.page-vocabulary-tipologia-news.path-taxonomy .view-taxonomy-term .view-content .views-row .box2punti {
  height: 100%;
  padding: 15px;
}

/* Contatti */
.page-node-22 .contacts_data {
  max-width: 300px;
  margin: auto;
  margin-top: 1rem;
  margin-bottom: 4rem;
}

.checkbox.form-item-autorizzo-il-trattamento-descritto-nell-informativa label {
  position: relative;
}

.checkbox.form-item-autorizzo-il-trattamento-descritto-nell-informativa label::after {
  content: '*';
  color: red;
  width: 1rem;
  height: 1rem;
  font-size: 1.5rem;
  position: absolute;
  top: -0.5rem;
  right: -1rem;
}

.page-node-22 #block-webform {
  max-width: 800px;
  margin: auto;
  border: 2px solid var(--yellow);
  border-left: 0px;
  position: relative;
  padding: 2rem;
}

.page-node-22 #block-webform:after,
.page-node-22 #block-webform:before {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: var(--yellow);
  position: absolute;
  z-index: 10;
}

.page-node-22 #block-webform:after {
  top: -5px;
  left: -5px;
}

.page-node-22 #block-webform:before {
  bottom: -5px;
  left: -5px;
}

.page-node-22 .select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 5px;
  height: 37px;
}

.page-node-22 .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #666;
  line-height: 33px;
  font-size: 15px;
}

.webform-confirmation__message {
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center;
  font-size: 1.4rem;
}

.webform-confirmation__message p {
  font-size: 1.4rem;
}

/* Lavora con noi */
.aw_jobSlider .aw_jobPosting {
  background-color: transparent !important;
  border: 2px solid var(--yellow);
  padding: 1rem;
}

.aw_jobList {}

.aw_jobList .aw_page {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding-top: 1rem;
}

.aw_jobList .aw_pages .aw_jobPosting {
  width: 48%;
  padding: 1rem;
  margin-right: 2%;
  margin-bottom: 1rem;
  border: 1px solid var(--gray);
  position: relative;
  border: 1px solid var(--yellow);
  border-left: 0px;
}

.aw_jobList .aw_pages .aw_jobPosting:before,
.aw_jobList .aw_pages .aw_jobPosting:after {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 5px;
  background-color: var(--yellow);
  position: absolute;
  z-index: 10;
}

.aw_jobList .aw_pages .aw_jobPosting:before {
  bottom: -3px;
  left: -2px;
}

.aw_jobList .aw_pages .aw_jobPosting:after {
  top: -3px;
  left: -2px;
}

.aw_jobList .aw_jobPosting mark {
  display: inline-block;
  margin-bottom: 7px;
  padding: 2px 6px 1px 6px;
  background-color: var(--yellow) !important;
  color: #FFF;
  font-size: 80%;
  text-transform: uppercase;
}

/* Related */
.node--view-mode-related {
  position: relative;
}

.node--view-mode-related .related_content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 1rem;
  color: var(--white);
}

.node--view-mode-related .related_content .teaser_actions {
  position: absolute;
  bottom: 1rem;
}

.node--view-mode-related .field--name-field-icona {
  display: inline-block;
}

#views-bootstrap-related-contents-related-servizi .icon_and_title {}

/*************
    Login page
  ************/
.node--type-policy #main {
  padding: 0 5rem;
  max-width: 1200px;
  margin: auto;
}

/*************
  Login page
************/
.page-user-login .user-login-form {
  padding: 2rem 5rem;
  max-width: 1200px;
  margin: auto;
}
