/* Colors and other variables */
:root {
  -webkit-font-smoothing: antialiased;
  --primario: #ea5821;
  --secondario: #112A69;
  --terziario: #007BFF;
  --giallo-chiaro: #fff5cb;
  --grigio-scuro: #7A7E83;
  --grigio: #B0B6BA;
  --grigio-chiaro: #F2F2F2;
  --bg-chiaro: #FAFBFE;
  --bianco: #ffffff;
  --nero: #000000;
  --border-line: #E0E0E0;
  --notification-new: #58AAFF;
  --notification-new-bg: #DDEEFF;
  --testo-grigio: #707070;
  --primario-scuro: #C74818;
  --primario-chiaro: #F89773;
  --primario-schiarito: #FBDDD2;
  --primario-bianco: #FDEEE8;
  --secondario-scuro: #09183C;
  --secondario-chiaro: #2249AC;
  --secondario-schiarito: #CFD4E1;
  --terziario-scuro: #0356af;
  --terziario-chiaro: #82befe;
  --terziario-schiarito: #CCE4FF;
  --terziario-bianco: #E5F1FF;
  --dip-residenziale: #FFF3CD;
  --dip-commerciale: #BDE5EC;
  --dip-residenziale-scuro: #FFC107;
  --dip-commerciale-scuro: #17A2B8;
  --dip-residenziale-schiarito: #FFF9E5;
  --dip-commerciale-schiarito: #E7F6F8;
  --sidenav-half-dim: calc(100vw - 50%);
}

.border-primario {
  --bs-border-opacity: 1;
  border-color: rgba(var(--primario), var(--bs-border-opacity)) !important;
}

.border-primario-strong {
  border-color: var(--primario) !important;
  box-shadow: 0 0 0 0.2rem var(--primario-schiarito);
}

button.nav-link.primario {
  color: var(--primario);
}

button.nav-link.primario.active{
  background-color: var(--primario);
}

.info-link {
  position: relative;
  top: 0%;
  right: 0%;
  float: inline-end;
  /*float: right;*/
  color: var(--primario);
  cursor: pointer;
}

.info-link.terziario {
  color: var(--terziario);
}

.link-primario {
  --bs-link-color: var(--primario) !important;
  --bs-link-color-rgb: 234, 88, 33 !important;
}

.text-bg-danger-chiaro {
  color: var(--bs-danger) !important;
  background-color: var(--bs-danger-border-subtle) !important;
}

.text-bg-primario {
  color: var(--bs-white)!important;
  background-color: var(--primario)!important;
}

.text-bg-primario-chiaro {
  color: var(--bs-white)!important;
  background-color: var(--primario-chiaro)!important;
}

.text-bg-primario-bianco {
  color: var(--primario) !important;
  background-color: var(--primario-bianco) !important;
}

.text-bg-secondario {
  color: var(--bs-white) !important;
  background-color: var(--secondario) !important;
}

.text-bg-secondario-chiaro {
  color: var(--secondario) !important;
  background-color: var(--secondario-chiaro) !important;
}

.text-bg-secondario-schiarito {
  color: var(--secondario) !important;
  background-color: var(--secondario-schiarito) !important;
}

.text-bg-success-chiaro {
  color: var(--bs-success) !important;
  background-color: var(--bs-success-border-subtle) !important;
}

.text-bg-terziario {
  color: var(--bs-white) !important;
  background-color: var(--terziario) !important;
}

.text-primario {
  color: var(--primario)!important;
}

.text-secondario {
  color: var(--secondario)!important;
}

.text-terziario {
  color: var(--terziario)!important;
}

.text-grigio {
  --testo-grigio: #707070!important;
}

.bg-altro {
  background-color: var(--secondario-schiarito);
}

.bg-danger-schiarito {
  background-color: var(--bs-danger-bg-subtle);
}

.bg-primario {
  background-color: var(--primario);
}

.bg-primario-bianco {
  background-color: var(--primario-bianco);
}

.bg-primario-chiaro {
  background-color: var(--primario-chiaro);
}

.bg-primario-schiarito,
.bg-residenziale {
  background-color: var(--primario-schiarito);
}

.bg-secondario-bianco {
  background-color: var(--secondario-bianco);
}

.bg-secondario-schiarito {
  background-color: var(--secondario-schiarito);
}

.bg-terziario-schiarito,
.bg-commerciale,
.bg-primario-schiarito.commerciale {
  background-color: var(--terziario-schiarito);
}

.bg-success-schiarito {
  background-color: var(--bs-success-bg-subtle);
}

.table {
  --bs-table-bg: transparent;
}

.table-primario {
  --bs-table-bg: var(--primario);
}

.table>:not(caption)>*>* {
  color: inherit;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  font-family: "Helvetica Neue", sans-serif;
}

footer {
  margin-top: auto;
}

/* Text and Fonts */
h1,
h2,
h3,
h4 {
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  color: var(--primario);
}

a {
  font-family: "Helvetica Neue", sans-serif !important;
  font-weight: 400 !important;
}


.btn-light {
  background-color: var(--grigio-chiaro);
  color: var(--testo-grigio);
}

/* Card Tools */
@media (min-width: 992px) {
  .tools-header {
    min-height: 120px;
  }
}

.card-tool {
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.16);
  border: 0px;
  transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  align-items: center;
  min-height: 100px;
}

.card-tool .card-info {
  font-size: 8px;
  margin: 5px 5px 0px 0px;
  align-self: flex-start;
}

.card-tool .card-info a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0px;
  font-size: 16px;
  border: none;
  color: var(--grigio);
}

.card-tool .card-info a:hover {
  color: var(--secondario);
}

.card-tool .card-link {
  text-decoration: none;
}

.card-tool .card-body {
  align-items: center;
  justify-content: left;
}

.card-tool .card-body .card-icon {
  margin-right: 20px;
  transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
}

.card-tool .card-body .card-icon svg,
.card-tool .card-body .card-icon svg path {
  fill: var(--grigio-scuro);
}

.card-tool .card-body .card-title {
  font-family: 'Poppins', sans-serif;
  color: var(--grigio-scuro);
  transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
}

.card-tool:hover {
  box-shadow: 0px 0px 10px var(--primario);
  transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
}

.card-tool:hover .card-body .card-icon svg,
.card-tool:hover .card-body .card-icon svg path {
  fill: var(--primario);
  transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
}

.card-tool:hover .card-body .card-title {
  color: var(--primario);
  transition: all 0.1s ease-in-out;
  -webkit-transition: all 0.1s ease-in-out;
}

/* custom divider */
.divider {
  display: flex;
  align-items: center;
  text-align: center;
}

.divider::before,
.divider::after {
  content: "";
  flex: 1;
  border-bottom: 1px solid #999;
  margin: 0 10px;
}

.divider span {
  white-space: nowrap;
  font-size: 14px;
  font-weight: bold;
  color: #999;
}

/* Home Tools */

#home .tools-header p {
  color: var(--secondario);
  font-style: italic;
  font-weight: 400;
}

body {
  background-color: var(--bg-chiaro);
}

footer {
  background-color: white;
}


/* Navbar */

header {
  margin-bottom: 58px;
}

.navbar {
  z-index: 1030;
  position: fixed;
  width: 100%;
  top: 0px;
  left: 0px;
}

.navbar .navbar-right-menu i {
  font-size: 18px;
}

.navbar .navbar-right-menu .menu-icon {
  margin-right: 20px;
}

.navbar .navbar-right-menu .menu-icon,
.navbar .navbar-right-menu .menu-icon a:not(i) {
  text-decoration: underline;
  font-weight: 400 !important;
}

.navbar .navbar-right-menu .menu-icon>.menu-icon-text {
  margin-left: 5px;
}

.navbar .navbar-right-menu .menu-icon i {
  font-size: 18px;
}

.navbar .navbar-toggler {
  padding: 0px;
  border: 0px;
}

.navbar .navbar-toggler:focus {
  box-shadow: none;
}

/* Navbar Dark */
.navbar {
  background-color: var(--bs-secondary);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar .offcanvas {
  background-color: var(--bs-secondary);
}

.navbar .offcanvas .btn-close {
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  filter: invert(1) grayscale(100%) brightness(200%);
}

.navbar .navbar-brand svg path,
.navbar .navbar-brand svg rect {
  fill: var(--bianco);
}

.navbar .nav-link.active {
  color: var(--text-secondary);
}

.navbar .nav-link {
  color: rgba(255, 255, 255, 0.55);
}

.navbar .navbar-right-menu i,
.navbar .navbar-right-menu .menu-icon,
.navbar .navbar-right-menu .menu-icon a:not(i),
.navbar .navbar-toggler:focus {
  color: var(--bianco);
}

.navbar .menu-icon>span.badge {
  background-color: var(--bianco);
  color: var(--grigio-scuro);
}

/* Navbar Light */

.navbar.navbar-light {
  background-color: var(--bianco);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar.navbar-light .offcanvas {
  background-color: var(--bianco);
}

.navbar.navbar-light .offcanvas .btn-close {
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  filter: none;
}

.navbar.navbar-light .navbar-brand svg path,
.navbar.navbar-light .navbar-brand svg rect {
  fill: var(--primario);
}

.navbar.navbar-light .nav-link {
  color: rgba(0, 0, 0, 0.55);
}

.navbar.navbar-light .nav-link.active {
  color: var(--primario);
}

.navbar.navbar-light .navbar-right-menu i,
.navbar.navbar-light .navbar-right-menu .menu-icon,
.navbar.navbar-light .navbar-right-menu .menu-icon a:not(i),
.navbar.navbar-light .navbar-toggler:focus {
  color: var(--grigio-scuro);
}

.navbar.navbar-light .menu-icon>span.badge {
  background-color: var(--primario);
  color: var(--bianco);
}

/* NAVBAR style per ogni tipologia di utente */

nav.navbar.navbar-style-geoweb { background-color: #0a8568; }
nav.navbar.navbar-style-fimaa { background-color: #b398bf; }
nav.navbar.navbar-style-fiaip { background-color: #b59726; }
/* .navbar.navbar-style- { background-color: #0a8568; } */

/* Pagination styles */
.page-item .page-link.primario{
  color: var(--primario);
}
.page-item .page-link.primario:hover{
  background-color: var(--primario-schiarito);
  border-color: var(--primario);
}
.page-item .page-link.primario:focus{
  background-color: var(--primario-bianco);
  box-shadow: 0 0 0 0.25rem rgba(253, 126, 20, 0.5);
}
.page-item.active .page-link.primario{
  background-color: var(--primario);
  border-color: var(--primario);
  color: var(--bs-white);
}

/* Notifications Popover */

.notifications-popover {
  --bs-popover-max-width: 300px;
  --bs-popover-header-bg: var(--bianco);
  --bs-popover-header-color: var(--nero);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 1rem;
  --bs-popover-body-padding-x: 0rem;
  --bs-popover-body-padding-y: 0rem;
}

.notifications-popover .notifications-footer {
  border-top: 1px solid var(--border-line);
}

.notifications-popover .notifications-footer a {
  color: var(--grigio-scuro) !important;
  display: block;
}

.notifications-popover .notification {
  padding: 0.6rem 1rem;
  display: flex;
}

.notifications-popover .notifications-list {
  max-height: 175px;
  overflow: auto;

}

.notifications-popover .notification:not(:last-of-type) {
  border-bottom: 1px solid var(--border-line)
}

.notifications-popover .notification .notification-icon {
  width: 20%;
}

.notifications-popover .notification .notification-content {
  width: 80%;
}

.notifications-popover .notification.new {
  background-color: var(--notification-new-bg);
  position: relative;
}

.notifications-popover .notification.new .notification-icon {
  color: var(--terziario);
}

.notifications-popover .notification.new:after {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--terziario);
  display: block;
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
}


/* Mini Cart Popover */

.mini-cart-popover {
  --bs-popover-max-width: 380px;
  --bs-popover-header-bg: var(--bianco);
  --bs-popover-header-color: var(--nero);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 1rem;
  --bs-popover-body-padding-x: 0rem;
  --bs-popover-body-padding-y: 0rem;
}

.mini-cart-popover .cart-item {
  padding: 0.6rem 1rem;
  display: flex;
}

.mini-cart-popover .cart-item:not(:last-of-type) {
  border-bottom: 1px solid var(--border-line)
}

.mini-cart-popover .cart-item .item-icon {
  width: 20%;
}

.mini-cart-popover .cart-item .item-content {
  width: 80%;
  color: var(--testo-grigio);
}

.mini-cart-popover .cart-item .item-content .price {
  font-weight: 500;
}

.mini-cart-popover .cart-item .item-icon {
  color: var(--primario);
}

.mini-cart-popover .cart-item.commerciale .item-icon {
  color: var(--terziario);
}

.mini-cart-popover .mini-cart-list {
  max-height: 266px;
  overflow: auto;
}

.mini-cart-popover .mini-cart-footer {
  display: flex;
  flex-wrap: wrap;
  color: var(--testo-grigio);
  border-top: 1px solid var(--border-line);
}

.mini-cart-popover .mini-cart-footer .subtotal {
  width: 50%;
  text-align: left;
}

.mini-cart-popover .mini-cart-footer .subtotal>span:last-of-type {
  font-size: 120%;
  font-weight: 600;
}

.mini-cart-popover .mini-cart-footer .show-cart {
  width: 50%;
  text-align: right;
}

.mini-cart-popover .mini-cart-footer .checkout {
  display: block;
  width: 100%;
}

.btn-primario,
.card-product.professional .btn-card-product {
  --bs-btn-color: var(--bianco);
  --bs-btn-bg: var(--primario);
  --bs-btn-border-color: var(--primario);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--bianco);
  --bs-btn-hover-bg: var(--primario-scuro);
  --bs-btn-hover-border-color: var(--primario-scuro);
  --bs-btn-focus-shadow-rgb: var(--primario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--primario-scuro);
  --bs-btn-active-border-color: var(--primario-scuro);
}

.btn-outline-primario,
.btn-outline-residenziale {
  --bs-btn-bg: var(--bianco);
  --bs-btn-color: var(--primario);
  --bs-btn-border-color: var(--primario);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--bianco);
  --bs-btn-hover-bg: var(--primario);
  --bs-btn-hover-border-color: var(--primario);
  --bs-btn-focus-shadow-rgb: var(--primario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--primario-scuro);
  --bs-btn-active-border-color: var(--primario-scuro);
}

.btn-secondario,
.card-product.business .btn-card-product {
  --bs-btn-color: var(--bianco);
  --bs-btn-bg: var(--secondario);
  --bs-btn-border-color: var(--secondario);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--bianco);
  --bs-btn-hover-bg: var(--secondario-scuro);
  --bs-btn-hover-border-color: var(--secondario-scuro);
  --bs-btn-focus-shadow-rgb: var(--secondario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--secondario-scuro);
  --bs-btn-active-border-color: var(--secondario-scuro);
}

.btn-terziario {
  --bs-btn-color: var(--bianco);
  --bs-btn-bg: var(--terziario);
  --bs-btn-border-color: var(--terziario);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--bianco);
  --bs-btn-hover-bg: var(--terziario-scuro);
  --bs-btn-hover-border-color: var(--terziario-scuro);
  --bs-btn-focus-shadow-rgb: var(--terziario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--terziario-scuro);
  --bs-btn-active-border-color: var(--terziario-scuro);
}

.btn-outline-terziario,
.btn-outline-commerciale {
  --bs-btn-bg: transparent;
  --bs-btn-color: var(--terziario);
  --bs-btn-border-color: var(--terziario);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--bianco);
  --bs-btn-hover-bg: var(--terziario);
  --bs-btn-hover-border-color: var(--terziario);
  --bs-btn-focus-shadow-rgb: var(--terziario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--terziario-scuro);
  --bs-btn-active-border-color: var(--terziario-scuro);
}

.btn-option-primario {
  --bs-btn-bg: var(--bg-chiaro);
  --bs-btn-color: var(--testo-grigio);
  --bs-btn-border-color: var(--bg-chiaro);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--primario);
  --bs-btn-hover-bg: var(--bianco);
  --bs-btn-hover-border-color: var(--bianco);
  --bs-btn-focus-shadow-rgb: var(--primario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--bianco);
  --bs-btn-active-border-color: var(--bianco);
}

.btn-option-terziario {
  --bs-btn-bg: var(--bg-chiaro);
  --bs-btn-color: var(--testo-grigio);
  --bs-btn-border-color: var(--bg-chiaro);
  --bs-btn-border-radius: .5rem;
  --bs-btn-hover-color: var(--terziario);
  --bs-btn-hover-bg: var(--bianco);
  --bs-btn-hover-border-color: var(--bianco);
  --bs-btn-focus-shadow-rgb: var(--terziario-chiaro);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: var(--bianco);
  --bs-btn-active-border-color: var(--bianco);
}

.btn-check:checked+.btn {
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.15);
}

.btn-close:focus{
  box-shadow: 0 0 0 0.25rem var(--primario-schiarito);
}


/* Login page */

#login {
  overflow: hidden;
}

.card-login {
  max-width: 400px;
  color: var(--grigio-scuro);
  box-shadow: 0px 3px 36px rgba(0, 0, 0, 0.16) !important;
}

.card-login .card-header {
  border-top-left-radius: var(--bs-border-radius-lg);
  border-top-right-radius: var(--bs-border-radius-lg);
  background-color: var(--primario);
}

.card-login~.subtext {
  color: var(--grigio);
}

.card-login~.subtext>a {
  text-decoration: none;
}

.card-login .form-login,
.card-login .form-register {
  display: none;
}

.card-login .form-login.active,
.card-login .form-register.active {
  display: block;
}

.card-login~.subtext {
  display: none;
}

.card-login~.subtext.active {
  display: block;
}

.cards-products {
  margin-top: 100px;
}

.cards-products>.container {
  max-width: 1000px;
}

.card-product {
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.16);
}

.card-product,
.card-product>.card-header h4 {
  color: var(--grigio-scuro);
}

.card-product>.card-header h4 {
  margin-bottom: 0px;
}

.card-product .price {
  font-weight: 600;
}

.card-product .price>span {
  font-weight: 400;
}

.card-product .infos ul {
  padding: 0;
}

.card-product .infos li {
  list-style: none;
  margin-bottom: 5px;
}

.card-product.professional>.card-header {
  background-color: var(--primario-schiarito);
}

.card-product.professional>.card-header>h4 {
  color: var(--primario);
}

.card-product.business>.card-header {
  background-color: var(--secondario-schiarito);
}

.card-product.business>.card-header>h4 {
  color: var(--secondario);
}




/* Background Circles Login */

@keyframes firstCircle {
  0% {
    transform: translate(-50%, -50%) scale(0);
  }

  100% {
    transform: translate(-50%, -50%) scale(2.5);
  }
}

@keyframes secondCircle {
  0% {
    transform: translate(-50%, -50%) scale(0);
  }

  100% {
    transform: translate(-50%, -50%) scale(4.75);
  }
}

@keyframes thirdCircle {
  0% {
    transform: translate(-50%, -50%) scale(0);
  }

  100% {
    transform: translate(-50%, -50%) scale(6.75);
  }
}

.background-circles {
  z-index: -1;
  position: relative;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0px;
  bottom: 0px;
  top: -150px;
}

.background-circles .circle {
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 200px;
  height: 200px;
  transform-origin: center;
}

.background-circles .circle:first-child {
  transform: scale(0);
  z-index: 10;
  background: #F9E6E3;
  animation: firstCircle 1s forwards;
}

.background-circles .circle:nth-child(2) {
  z-index: 9;
  transform: scale(0);
  background: #FAEDEC;
  animation: secondCircle 1s 0.25s forwards;
}

.background-circles .circle:nth-child(3) {
  z-index: 8;
  transform: scale(0);
  background: #FAF4F5;
  animation: thirdCircle 1s 0.5s forwards;
}


/* Profile Page*/



.profile-header>.container>.content-heading {
  width: 100%
}

.profile-header>.container>.content-heading a.exit-profile {
  min-width: 101px;
}

.profile-menu {
  box-shadow: 0px 3px 36px rgba(0, 0, 0, 0.16);
}

.profile-menu .card-header {
  background-color: var(--bianco);

}

.profile-menu .card-header .profile-image {
  max-width: 90px;
  width: 100%;
  border-radius: 50%;
  padding: 6px;
  border: 2px solid var(--grigio);
}

.profile-menu .card-header .email {
  font-size: 90%;
}

.profile-menu ul.list-group li {
  padding: 1rem 2rem;
  border-left: none;
  border-right: none;
  color: var(--grigio-scuro);
  transition: color 0.2s ease-in-out;

}

.profile-menu ul.list-group li.list-heading {
  padding: 0.8rem 2rem;
  color: var(--testo-grigio);
  background-color: rgba(var(--bs-secondary-rgb), 0.2);
  border: 0;
}

.profile-menu ul.list-group li .nav-link {
  color: var(--testo-grigio);
  text-decoration: none;
  display: flex;
  align-items: center;
}


.profile-menu ul.list-group li i {
  font-size: 130%;
  margin-right: 10px;
}

.profile-menu ul.list-group li .nav-link.active {
  color: var(--primario);
  text-decoration: none;
}

@media (min-width: 768px) {
  .profile-menu {
    max-width: 360px;
  }
}

@media (min-width: 992px) {
  .profile-menu {
    margin-top: -70px !important;
  }

  .profile-header>.container {
    min-height: 120px;
    padding-bottom: 0px;
  }

  .profile-header>.container>h3 {
    width: 33.333%
  }

  .profile-header>.container>.content-heading {
    width: 66.666%
  }
}


/* Carrello Page */
.cart-container .cart-table,
.order-details-table {
  color: var(--testo-grigio);
}

.cart-container .cart-items tr>td.residenziale,
.cart-container .cart-items tr>td.commerciale,
.order-details-table tr>td.residenziale,
.order-details-table tr>td.commerciale {
  white-space: nowrap;
}

.cart-container .cart-items tr>td.residenziale i,
.cart-container .cart-items tr>td.commerciale i,
.order-details-table tr>td.residenziale i,
.order-details-table tr>td.commerciale i {
  font-size: 22px;
  margin-right: 10px;
}

.cart-container .cart-items tr>td.residenziale,
.order-details-table tr>td.residenziale {
  color: var(--primario);
}

.cart-container .cart-items tr>td.residenziale .badge,
.order-details-table tr>td.residenziale .badge {
  background-color: var(--primario-schiarito);
  color: var(--primario);
}

.cart-container .cart-items tr>td.commerciale,
.order-details-table tr>td.commerciale {
  color: var(--terziario);
}

.cart-container .cart-items tr>td.commerciale .badge,
.order-details-table tr>td.commerciale .badge {
  background-color: var(--terziario-schiarito);
  color: var(--terziario);
}

.cart-container .cart-items tr .delete-product {
  color: var(--grigio);
}

.cart-container .cart-totals,
.order-details-container .order-totals {
  margin-left: auto;
  color: var(--testo-grigio);
}

@media (min-width: 768px) {
  .cart-container .cart-totals {
    max-width: 30%;
  }
}

@media (min-width: 992px) {
  .order-details-container .order-totals {
    max-width: 30%;
  }
}

.cart-container .table>:not(caption)>*>* {
  padding: 0.8rem;
}


/* Profilo Pagamenti */

.payments-container .list-group-item {
  padding: 1.5rem 1rem;
  background: none;

}



/* CREDIT CARD IMAGE STYLING */

.ccicon {
  height: 26px;
  position: absolute;
  right: 6px;
  bottom: 6px;
  width: 60px;
}

#ccsingle {
  position: absolute;
  right: 15px;
  top: 10px;
  display: block;
}

#ccsingle svg {
  max-width: 60px;
  width: 100%;
  max-height: 60px;
  margin-left: auto;
  display: block;
}

.creditcard svg#cardfront,
.creditcard svg#cardback {
  width: 100%;
  -webkit-box-shadow: 1px 5px 6px 0px rgba(0, 0, 0, 0.16);
  box-shadow: 1px 5px 6px 0px rgba(0, 0, 0, 0.16);
  border-radius: 22px;
}

#generatecard {
  cursor: pointer;
  float: right;
  font-size: 12px;
  color: #fff;
  padding: 2px 4px;
  background-color: #909090;
  border-radius: 4px;
  cursor: pointer;
  float: right;
}

/* CHANGEABLE CARD ELEMENTS */
.creditcard .lightcolor,
.creditcard .darkcolor {
  -webkit-transition: fill .5s;
  transition: fill .5s;
}

.creditcard .lightblue {
  fill: #03A9F4;
}

.creditcard .lightbluedark {
  fill: #0288D1;
}

.creditcard .red {
  fill: #ef5350;
}

.creditcard .reddark {
  fill: #d32f2f;
}

.creditcard .purple {
  fill: #ab47bc;
}

.creditcard .purpledark {
  fill: #7b1fa2;
}

.creditcard .cyan {
  fill: #26c6da;
}

.creditcard .cyandark {
  fill: #0097a7;
}

.creditcard .green {
  fill: #66bb6a;
}

.creditcard .greendark {
  fill: #388e3c;
}

.creditcard .lime {
  fill: #d4e157;
}

.creditcard .limedark {
  fill: #afb42b;
}

.creditcard .yellow {
  fill: #ffeb3b;
}

.creditcard .yellowdark {
  fill: #f9a825;
}

.creditcard .orange {
  fill: #ff9800;
}

.creditcard .orangedark {
  fill: #ef6c00;
}

.creditcard .grey {
  fill: #bdbdbd;
}

.creditcard .greydark {
  fill: #616161;
}

/* FRONT OF CARD */
#svgname {
  text-transform: uppercase;
}

#cardfront .st2 {
  fill: #FFFFFF;
}

#cardfront .st3 {
  font-family: 'Source Code Pro', monospace;
  font-weight: 600;
}

#cardfront .st4 {
  font-size: 54.7817px;
}

#cardfront .st5 {
  font-family: 'Source Code Pro', monospace;
  font-weight: 400;
}

#cardfront .st6 {
  font-size: 33.1112px;
}

#cardfront .st7 {
  opacity: 0.6;
  fill: #FFFFFF;
}

#cardfront .st8 {
  font-size: 24px;
}

#cardfront .st9 {
  font-size: 36.5498px;
}

#cardfront .st10 {
  font-family: 'Source Code Pro', monospace;
  font-weight: 300;
}

#cardfront .st11 {
  font-size: 16.1716px;
}

#cardfront .st12 {
  fill: #4C4C4C;
}

/* BACK OF CARD */
#cardback .st0 {
  fill: none;
  stroke: #0F0F0F;
  stroke-miterlimit: 10;
}

#cardback .st2 {
  fill: #111111;
}

#cardback .st3 {
  fill: #F2F2F2;
}

#cardback .st4 {
  fill: #D8D2DB;
}

#cardback .st5 {
  fill: #C4C4C4;
}

#cardback .st6 {
  font-family: 'Source Code Pro', monospace;
  font-weight: 400;
}

#cardback .st7 {
  font-size: 27px;
}

#cardback .st8 {
  opacity: 0.6;
}

#cardback .st9 {
  fill: #FFFFFF;
}

#cardback .st10 {
  font-size: 24px;
}

#cardback .st11 {
  fill: #EAEAEA;
}

#cardback .st12 {
  font-family: 'Rock Salt', cursive;
}

#cardback .st13 {
  font-size: 37.769px;
}

/* FLIP ANIMATION */

.creditcard {
  display: flex;
  justify-content: center;
  width: 100%;
  min-height: 200px;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  transition: -webkit-transform 0.6s;
  -webkit-transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
  transition: transform 0.6s, -webkit-transform 0.6s;
  cursor: default;
}

.creditcard .front,
.creditcard .back {
  position: relative;
  width: 100%;
  max-width: 400px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  color: #47525d;
}

.creditcard .back {
  position: absolute;
  top: 0px;
}


.creditcard .back {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

.creditcard.flipped {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

/* Profile Orders Section */
.orders-table {
  color: var(--testo-grigio);
}

.orders-table .orders-pagination .pagination .page-link {
  background: none;
  border: 0;
  padding-top: 0px;
  padding-bottom: 0px;
}

.orders-table .orders-pagination .pagination .page-item:not(:last-of-type) {
  border-right: 1px solid var(--border-line);
}

.orders-table>:not(caption)>*>* {
  padding: 0.8rem 0.4rem;
}

.orders-table tbody>tr>td:last-child {
  text-align: right;
}

.orders-table caption {
  font-size: 14px;
}

@media (min-width: 992px) {
  .orders-table caption {
    font-size: 16px;
  }
}

.order-details .list-group-item {
  padding-left: 0px;
  padding-right: 0px;
}

.order-infos table {
  color: var(--testo-grigio);
}

/* Profile Support */

.profile-support {
  color: var(--testo-grigio);
}

.profile-support h5 {
  color: var(--primario);
}

@media (min-width: 992px) {
  .profile-support .separator-left {
    border-left: 1px solid var(--border-line);
  }
}


.profile-support .contact-infos i {
  color: var(--primario);
}

.profile-support .contact-infos a {
  color: var(--nero);

}


/* Radio Button Style */

.form-check-input:checked {
  background-color: var(--primario);
  border-color: var(--primario);
}

.form-check-input:focus {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
  border-color: var(--primario);
}

.form-check-input.terziario:checked {
  background-color: var(--terziario);
  border-color: var(--terziario);
}

.form-check-input.terziario:focus {
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
  border-color: var(--terziario);
}



.form-switch .form-check-input:focus{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FBDDD2'/%3e%3c/svg%3e");
}
.form-switch .form-check-input.terziario:focus{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:focus{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23FBDDD2'/%3e%3c/svg%3e");
}
.form-switch .form-check-input.terziario:focus{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked:focus,
.form-switch .form-check-input.terziario:checked:focus{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")
}


.form-control:focus,
.form-control-lg:focus,
.form-control-lg:focus-visible,
.form-select:focus {
  border-color: rgba(234, 88, 33, 0.25);
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.form-control.terziario:focus,
.form-control-lg.terziario:focus,
.form-control-lg.terziario:focus-visible,
.form-select.terziario:focus {
  border-color: rgba(0, 123, 255, 0.25);
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
}

.form-range-primario::-webkit-slider-thumb {
  background: var(--primario);
}

.form-range-primario::-moz-range-thumb {
  background: var(--primario);
}

.form-range-primario::-ms-thumb {
  background: var(--primario);
}

.form-range-primario:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.form-range-primario:focus::-moz-range-thumb {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.form-range-primario:focus::-ms-thumb {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

/* Three Way Toggle */

.tw-toggle {
  /* background: #95A5A6; */
  display: inline-block;
  padding: 2px 3px;
  border-radius: 20px;
  position:relative;
  border: 2px solid #95A5A6;
}

.tw-toggle label {
  text-align: center;
  font-family: sans-serif;
  display: inline-block;
  color: #95A5A6;
  position:relative;
  z-index:2;
  margin: 0;
  text-align: center;
  padding: 0px;
  font-size: 18px;
  line-height: 1;
  /* cursor: pointer; */
}

.tw-toggle input {
  /* display: none; */
  position: absolute;
  z-index: 3;
  opacity: 0;
  cursor: pointer;
  width: 20px;
  height: 20px;
}

.tw-toggle span {
  height: 21px;
  width: 21px;
  line-height: 21px;
  border-radius: 50%;
  background:#fff;
  display:block;
  position:absolute;
  left: 22px;
  top: 3px;
  transition:all 0.3s ease-in-out;
}

.tw-toggle input[value="a"]:checked ~ span{
  background:#e74c3c;
  left:2px;
  color:#fff;
}

.tw-toggle input[value="p"]:checked ~ span{
  background:#27ae60;
  left: 46px;
}
.tw-toggle input[value="1"]:checked ~ span{
  background:#95A5A6;
  left: 23px;
}

.tw-toggle input[value="a"]:checked + label,.tw-toggle input[value="p"]:checked + label{
  color:#fff;
}
.tw-toggle input[value="1"]:checked + label{
  color:#fff;
}



/* Tools pages */

.tab-pane:focus-visible{
  outline: none!important;
}

.tool-content ul.nav-pills {
  border-bottom: 1px solid var(--border-line);
}

.tool-content ul.nav-pills .nav-item>button {
  color: var(--testo-grigio);
  border-radius: 0;
}

.tool-content ul.nav-pills .nav-item>button.active {
  background: none;
  border-bottom: 2px solid var(--primario);
  color: var(--primario);
  border-radius: 0;
}

#assister .tool-content .wrapper {
  max-width: 800px;
}

#assister .tool-content .tab-content .arrow {
  color: var(--grigio);
}

#assister table tbody tr:hover {
  cursor: pointer;
}

@media (max-width: 991px) {

  #assister .tool-content .tab-content .step,
  #assister .tool-content .tab-content .arrow {
    width: 100%
  }

}


/* Mappa Borsino Immobiliare */

#map {
  width: 100%;
  height: calc(100vh - 98px);
  position: relative;
}

#map div[role="dialog"] button[title="Close"] {
  right: 10px !important;
  top: 5px !important;
}

#map div[role="dialog"] button[title="Close"]>span {
  width: 20px !important;
  height: 20px !important;
}

.map-wrapper {
  position: relative;
}

.map-wrapper .map-header {
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.map-wrapper .map-header-right-vert {
  position: absolute;  
  right: 0px;
  top: 0px;
  bottom: 0px;
  display: flex;
  /*flex-direction: row;*/
  justify-content: end;
  align-items: center;
}

.map-wrapper .map-livelli-catastali {

  max-width: 410px;
  width: 100%;
  background-color: var(--bianco);
  z-index: 3;
  display: block;
  margin: 10px 20px;
  border-radius: 10px;
  align-items: center;
}

.map-wrapper .map-options-right-vert {
  max-width: 41px;
  width: 100%;
  max-height: 410px;
  height: 100%;
  background-color: var(--bianco);
  z-index: 3;
  display: block;
  margin: 10px 20px;
  border-radius: 10px;
  align-items: center;
}

@media (min-width: 768px) {
  .map-wrapper .map-livelli-catastali>* {
    flex: 1;
  }
}

@media (max-width: 500px) {
  .map-wrapper .map-header {
    margin-right: 50px;
  }
}


.map-wrapper .map-livelli-catastali>.mostra-livelli-catastali {
  margin-right: 10px;
}



.map-wrapper .map-livelli-catastali #livelliCatastali::-webkit-slider-thumb {
  background: var(--primario);
}

.map-wrapper .map-livelli-catastali #livelliCatastali::-moz-range-thumb {
  background: var(--primario);
}

.map-wrapper .map-livelli-catastali #livelliCatastali::-ms-thumb {
  background: var(--primario);
}

.map-wrapper .map-livelli-catastali #livelliCatastali:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.map-wrapper .map-livelli-catastali #livelliCatastali:focus::-moz-range-thumb {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.map-wrapper .map-livelli-catastali #livelliCatastali:focus::-ms-thumb {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.disclaimer {
  font-size: 12px;
  color: var(--testo-grigio);
}

.disclaimer a {
  line-height: 2;
}

#borsinoImmobiliare, #altraMappa {
  position: relative;
}

.sidenav.active {
  bottom: 0px;
  transition: all 0.3s ease-in-out;
}

.sidenav {
  position: fixed;
  padding-top: 55px;
  max-width: 100%;
  width: 100%;
  height: 100vh;
  bottom: -100vh;
  background-color: var(--bianco);
  z-index: 9;
  color: var(--testo-grigio);
  transition: all 0.3s ease-in-out;
}

.sidenav>.container {
  overflow: auto;
  height: 100%;
  max-width: 100%;
}

.sidenav .heading {
  /*position: fixed;
  left: 0px;*/
  padding: 20px 20px 20px 20px;
  /*margin-top: -20px;*/
  background: white;
  border-bottom: 1px solid var(--border-line);
  width: 100%;
}


.sidenav>.sidenav-toggle>i.left,
.sidenav>.sidenav-toggle>i.right {
  display: none;
}

.sidenav.active>.sidenav-toggle>i.up {
  display: none;
}

.sidenav:not(.active)>.sidenav-toggle>i.down {
  display: none;
}

.sidenav>.sidenav-toggle {
  position: absolute;
  right: 0px;
  left: 0px;
  top: -30px;
  display: inline-block;
  background-color: var(--primario);
  color: white;
  width: 100px;
  height: 30px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px 10px 0px 0px;
  transition: background-color 0.2s ease-in-out;
}

.sidenav>.sidenav-toggle:hover {
  background-color: var(--primario-scuro);
  color: white;
  transition: background-color 0.2s ease-in-out;
  cursor: pointer;
}

.sidenav>.sidenav-toggle>.badge {
  display: none;
}

.sidenav>.sidenav-toggle>.badge.active {
  display: block;
}

.sidenav #cercaBorsino,
.sidenav #cercaAcquistaComparabile {
  margin-top: 75px;
}

.sidenav form>* {
  --bs-gutter-x: 0.5rem;
}


@media (min-width: 768px) {
  .sidenav.active {
    margin-left: 0px!important;
    transition: all 0.3s ease-in-out;
  }

  .sidenav {
    padding: 0px;
    position: relative;
    max-width: 300px;
    height: calc(100vh - 58px);
    margin-left: -300px;
    top: 0px;
  }

  .sidenav.half-screen{
    max-width: var(--sidenav-half-dim);
    margin-left: calc(-1*var(--sidenav-half-dim));
    height: calc(100vh - 111px);
  }

  .sidenav .heading {
    position: relative;
    padding: 0px;
    top: 0px;
    border-bottom: none;
    margin: 0px;
  }

  .sidenav .heading>.btn-close {
    display: none;
  }

  .sidenav>.sidenav-toggle>i.up,
  .sidenav>.sidenav-toggle>i.down {
    display: none;
  }

  .sidenav.active>.sidenav-toggle>i.right {
    display: none;
  }

  .sidenav:not(.active)>.sidenav-toggle>i.right {
    display: block;
  }

  .sidenav:not(.active)>.sidenav-toggle>i.left {
    display: none;
  }

  .sidenav.active>.sidenav-toggle>i.left {
    display: block;
  }


  .sidenav>.sidenav-toggle {
    position: absolute;
    right: -20px;
    left: auto;
    top: calc(45vh - 58px);
    z-index: 9;
    display: inline-block;
    background-color: var(--primario);
    color: white;
    height: 100px;
    width: 20px;
    border-radius: 0px 10px 10px 0px;
    transition: background-color 0.2s ease-in-out;
  }

  .sidenav>.sidenav-toggle:hover {
    background-color: var(--primario-scuro);
    color: white;
    transition: background-color 0.2s ease-in-out;
    cursor: pointer;
  }

  .sidenav #cercaBorsino,
  .sidenav #cercaAcquistaComparabile {
    margin-top: 0px;
  }

  .sidenav.active>.sidenav-toggle>.badge {
    display: none;
  }

  .sidenav label {
    font-size: 14px;
  }

  .sidenav select,
  .sidenav input {
    font-size: 14px;
  }
}



#borsinoImmobiliare .submit-wrapper {
  border-bottom: 1px solid var(--border-line);
}

section.range-slider {
  position: relative;
  width: 200px;
  height: 35px;
  text-align: center;
}

section.range-slider input {
  pointer-events: none;
  position: absolute;
  overflow: hidden;
  left: 0;
  top: 15px;
  width: 200px;
  outline: none;
  height: 18px;
  margin: 0;
  padding: 0;
}

section.range-slider input::-webkit-slider-thumb {
  pointer-events: all;
  position: relative;
  z-index: 1;
  outline: 0;
}

section.range-slider input::-moz-range-thumb {
  pointer-events: all;
  position: relative;
  z-index: 10;
  -moz-appearance: none;
  width: 9px;
}

section.range-slider input::-moz-range-track {
  position: relative;
  z-index: -1;
  background-color: rgba(0, 0, 0, 1);
  border: 0;
}

section.range-slider input:last-of-type::-moz-range-track {
  -moz-appearance: none;
  background: none transparent;
  border: 0;
}

section.range-slider input[type=range]::-moz-focus-outer {
  border: 0;
}


/* Borsino Immobiliare Form Calcola Comparabili */

#borsinoImmobiliare .form-calcola-comparabili {
  display: none;
}

#borsinoImmobiliare .form-calcola-comparabili.active {
  display: block;
}


/* Badge Colors */


.badge.text-bg-residenziale {
  background-color: var(--primario-schiarito);
  color: var(--primario);
}

.badge.text-bg-commerciale {
  background-color: var(--terziario-schiarito);
  color: var(--terziario);
}

.badge.text-bg-altro {
  background-color: var(--secondario-schiarito);
  color: var(--secondario);
}

.badge.text-inverted-bg-residenziale {
  background-color: var(--bianco);
  color: var(--primario);
}

.badge.text-inverted-bg-commerciale {
  background-color: var(--bianco);
  color: var(--terziario);
}

.badge.text-inverted-bg-altro {
  background-color: var(--bianco);
  color: var(--secondario)
}

/* Tooltip Comparabile */


.tooltip-comparabile {
  max-width: 300px;
}

.tooltip-acquista-comparabile {
  max-width: 250px;
}

.tooltip-acquista-comparabile .tooltip-infos strong {
  font-weight: 600;
}

.tooltip-acquista-comparabile .tooltip-infos {
  font-size: 14px;
  line-height: 1.1rem;
}

.tooltip-comparabile .tooltip-infos {
  font-size: 14px;
  line-height: 1.4rem;
}

.tooltip-comparabile .tooltip-footer {
  font-size: 12px;
  display: flex;
  justify-content: space-between;
  color: var(--testo-grigio);
  border-top: 1px solid var(--border-line);
}

.tooltip-comparabile .tooltip-tags .badge,
.tooltip-acquista-comparabile .tooltip-tags .badge {
  font-size: 14px;
}

.tooltip-comparabile .tooltip-tags .badge:not(:last-of-type),
.tooltip-acquista-comparabile .tooltip-tags .badge:not(:last-of-type) {
  margin-right: 5px;
}

.tooltip-comparabile .tooltip-actions .btn {
  max-width: 40px;
  border-radius: 100px;
}

.tooltip-comparabile .tooltip-actions {
  align-items: flex-end;
}

.tooltip-acquista-comparabile .btn {
  font-size: 14px;
}

.tooltip-comparabile .tooltip-actions .btn:not(:last-of-type),
.tooltip-acquista-comparabile .tooltip-actions .btn:not(:last-of-type) {
  margin-bottom: 5px;
}

.tooltip-comparabile.residenziale .tooltip-infos i,
.tooltip-acquista-comparabile.residenziale .tooltip-infos i {
  color: var(--primario);
}

.tooltip-comparabile.commerciale .tooltip-infos i,
.tooltip-acquista-comparabile.commerciale .tooltip-infos i {
  color: var(--terziario);
}

.tooltip-acquista-comparabile .nome {
  font-size: 16px;
  margin-bottom: 6px;
}

/* Card Selezione */

.card-selezione {
  border: 1px solid var(--border-line);
  font-size: 14px;
  color: var(--nero);
  transition: all 0.3s ease-in-out;

}

.card-selezione .badge {
  font-size: 14px;
}


.card-selezione .action-buttons>i {
  cursor: pointer;
}

.card-selezione .action-buttons>i:hover {
  color: var(--testo-grigio);
}

.card-selezione.focused.residenziale {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
  transition: all 0.2s ease-in-out;
}

.card-selezione.focused.commerciale {
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
  transition: all 0.2s ease-in-out;
}

/* Modal Scheda Dati */

.scheda-dati .tags>.badge:nor(:last-of-type) {
  margin-right: 10px;
}

.scheda-dati .dati .col-12 {
  border-bottom: 1px solid var(--border-line);
  border-left: 1px solid var(--border-line);
  padding: 0 0.5rem 0.5rem 0.5rem;
  margin-bottom: 15px;
}

.scheda-dati .dati .col-12 .label {
  color: var(--testo-grigio);
  font-weight: 600;
  margin-right: 5px;
}

.scheda-dati .dati .col-12 .value {
  color: var(--primario);
}

.scheda-dati .mappe .map {
  min-height: 150px;
}

.scheda-dati .mappe .map.map-streetview,
.scheda-dati .mappe .map.map-livelli {
  min-height: 100px;
}

@media (min-width: 768px) {

  .scheda-dati .mappe .map,
  .scheda-dati .mappe .map.map-streetview,
  .scheda-dati .mappe .map.map-livelli {
    min-height: 200px;
  }

}

.scheda-dati .messaggio {
  font-size: 14px;
}

.scheda-dati .dati-rilevanti .icon {
  color: var(--primario);
  padding-right: 10px;
  margin-right: 10px;
  border-right: 1px solid var(--border-line);
}

.scheda-dati .dati-rilevanti .label {
  color: var(--testo-grigio);
  font-weight: 600;
}

.scheda-dati .dati-rilevanti .value {
  color: var(--primario);
}

.scheda-dati .messaggio {
  color: var(--testo-grigio);
}

#modalSchedaDati .modal-footer .btn>i,
#popupSchedaDati .modal-footer .btn>i {
  margin-right: 10px;
}


#modalSchedaDati .modal-footer .btn.stampa,
#modalSchedaDati .modal-footer .btn.download,
#popupSchedaDati .modal-footer .btn.stampa,
#popupSchedaDati .modal-footer .btn.download {
  color: var(--testo-grigio);
}

#modalSchedaDati .modal-footer .btn.analizza,
#modalSchedaDati .modal-footer .btn.completa,
#popupSchedaDati .modal-footer .btn.analizza,
#popupSchedaDati .modal-footer .btn.completa {
  min-width: 30%;
}

#modalSchedaDati .modal-footer p,
#popupSchedaDati .modal-footer p {
  font-size: 14px;
  color: var(--grigio);
}

.scheda-dati .dati-rilevanti>*,
#modalSchedaDati .modal-footer .btn,
#popupSchedaDati .modal-footer .btn {
  margin: calc(0.5rem * .5);
  min-width: 180px;
}

@media (max-width: 767px) {

  #modalSchedaDati .modal-footer .btn,
  #popupSchedaDati .modal-footer .btn {
    font-size: 14px;
  }
}

#modalSchedaDati .modal-footer .action-buttons,
#popupSchedaDati .modal-footer .action-buttons {
  border-bottom: 1px solid var(--border-line);
}

#modalSchedaDati .header-buttons,
#modalSchedaDati .header-buttons a,
#popupSchedaDati .header-buttons,
#popupSchedaDati .header-buttons a {
  color: var(--testo-grigio);
}

#modalSchedaDati .header-buttons a:hover,
#popupSchedaDati .header-buttons a:hover {
  color: var(--nero);
}

#popupSchedaDati {
  background: white;
}

/** Slider Range Style **/

#slider-range {
  margin-left: 12px;
  margin-right: 12px;
}

.ui-slider {
  background-color: #DEE2E6;
  border: none !important;
  height: 6px;

}

.ui-slider .ui-slider-range {
  background-color: var(--primario);
}

.ui-slider .ui-slider-handle {
  border-radius: 50%;
  width: 1em;
  height: 1em;
  border: 4px solid var(--primario);
  background-color: var(--bianco);
}

.ui-slider .ui-slider-handle:focus {
  outline: none;
  box-shadow: 0 0 0 0.15rem rgba(234, 88, 33, 0.25);
}

.ui-slider .ui-slider-handle {
  color: black;
}


.ui-slider .ui-slider-handle>.number {
  top: -25px;
  min-width: 60px;
  position: absolute;
  font-size: 9px;
  color: var(--testo-grigio);
  background-color: var(--bg-chiaro);
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.2);
  padding: 3px 8px 3px 8px;
  border-radius: 10px;
  left: -30px;
  text-align: center;
}

/* Panels Comparabile */
#borsinoImmobiliare .panels {
  display: none;
  position: fixed;
  padding-top: 55px;
  width: 400px;
  height: 100vh;
  top: 0px;
  right: -400px;
  background-color: var(--bianco);
  z-index: 9;
  overflow: visible;
  color: var(--testo-grigio);
  transition: all 0.3s ease-in-out;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(4px);
}

#borsinoImmobiliare .panels.show {
  right: 0px;
  transition: all 0.3s ease-in-out;
}

#borsinoImmobiliare .panels>.panels-toggle {
  position: absolute;
  left: -20px;
  right: auto;
  top: 45%;
  z-index: 9;
  display: inline-block;
  background-color: var(--primario);
  color: white;
  height: 100px;
  width: 20px;
  border-radius: 10px 0px 0px 10px;
  transition: background-color 0.2s ease-in-out;
}

#borsinoImmobiliare .panels>.panels-toggle:hover {
  background-color: var(--primario-scuro);
  color: white;
  transition: background-color 0.2s ease-in-out;
  cursor: pointer;
}

#borsinoImmobiliare .panels:not(.show)>.panels-toggle>i.right {
  display: none;
}

#borsinoImmobiliare .panels:not(.show)>.panels-toggle>i.left {
  display: block;
}

#borsinoImmobiliare .panels.show>.panels-toggle>i.right {
  display: block;
}

#borsinoImmobiliare .panels.show>.panels-toggle>i.left {
  display: none;
}

#borsinoImmobiliare .panels>.panels-wrapper {
  height: 100%;
  overflow: auto;
}


.panel-selezione {
  background-color: white;
  margin: 30px 20px 20px 20px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
  border-radius: 20px;
  transition: all 0.2s ease-in-out;
  position: relative;
}

.panel-selezione .label {
  font-size: 14px;
  color: var(--testo-grigio);
  font-weight: 500;
  margin-right: 5px;
}

.panel-selezione .value {
  font-size: 16px;
  color: var(--primario);
}

.panel-selezione .panel-header h5 {
  color: var(--primario);
}

.panel-selezione .panel-footer,
.panel-selezione .panel-footer a {
  color: var(--testo-grigio);
  font-size: 14px;
}

.panel-selezione .panel-footer a:hover {
  color: var(--grigio);
}

.panel-selezione .dati-rilevanti,
.panel-selezione .dati .row:not(:last-of-type) {
  border-bottom: 1px solid var(--border-line);
}

.panel-selezione .dati-rilevanti .icon {
  color: var(--primario);
  margin-right: 8px;
  padding-right: 8px;
  border-right: 1px solid var(--border-line);
  align-self: center;
  margin-bottom: 0px;
}

.panel-selezione .panel-maps .map {
  height: 80px;
}

.panel-selezione .panel-maps .map.map-satellite {
  height: 120px;
}

.panel-selezione .panel-header h6 {
  font-size: 14px;
  margin-bottom: 0px;
}

.panel-selezione .panel-header .close-aid {
  position: absolute;
  top: -19px;
  right: 10px;
  transition: all 0.3s ease-in-out;
  font-size: 22px;
  z-index: 1;
}

.panel-selezione .panel-header .show-details {
  position: absolute;
  top: -19px;
  right: 40px;
  color: var(--primario);
  border-color: var(--primario-schiarito);
  background-color: var(--primario-schiarito);
  transition: all 0.3s ease-in-out;
  font-size: 22px;
  z-index: 2;
}

.panel-selezione .panel-header .show-details:hover {
  position: absolute;
  top: -19px;
  right: 40px;
  color: var(--bianco);
  border-color: var(--primario);
  background-color: var(--primario);
  transition: all 0.3s ease-in-out;
  font-size: 22px;
  z-index: 2;
}

.panel-selezione .panel-header .show-details:focus {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
}

.panel-selezione .dati {
  max-height: 0px;
  height: 100%;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.panel-selezione .dati.show {
  max-height: 400px;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}




.panel-selezione.commerciale .panel-header h5 {
  color: var(--terziario);
}

.panel-selezione.commerciale .value {
  font-size: 16px;
  color: var(--terziario);
}

.panel-selezione.commerciale .dati-rilevanti .icon,
.panel-selezione.commerciale .dati-rilevanti .icon i {
  color: var(--terziario);
}

.panel-selezione.commerciale .panel-header .show-details {
  border-color: var(--terziario-schiarito);
  background-color: var(--terziario-schiarito);
}

.panel-selezione.commerciale .panel-header .show-details:hover {
  border-color: var(--terziario);
  background-color: var(--terziario);
}

.panel-selezione.commerciale .panel-header .show-details {
  color: var(--terziario);
  border-color: var(--terziario-schiarito);
  background-color: var(--terziario-schiarito);
}

.panel-selezione.commerciale .panel-header .show-details:hover {
  color: var(--bianco);
  border-color: var(--terziario);
  background-color: var(--terziario);
}

.panel-selezione.commerciale .panel-header .show-details:focus {
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
}


.panel-selezione.focused.residenziale {
  box-shadow: 0 0 0 0.25rem rgba(234, 88, 33, 0.25);
  transition: all 0.2s ease-in-out;
}

.panel-selezione.focused.commerciale {
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
  transition: all 0.2s ease-in-out;
}



@media (min-width: 1025px) {
  #borsinoImmobiliare .panels.active {
    display: block;
  }
}

/** Acquista Comparabile **/

.tipo_comparabile_selector {
  border-bottom: 1px solid var(--border-line);
  display: flex;
}

.tipo_comparabile_selector>* {
  flex: 1;
}

.tipo_comparabile_selector>*:not(:last-of-type) {
  margin-right: 0.25rem;
}


/** Form inserimento comparabile commerciale **/

.stepper-form .form-header {
  z-index: 9;
  gap: 5px;
  text-align: center;
  font-size: .9em;
  position: sticky;
  top: 56px;
  background-color: var(--bg-chiaro);
  border-bottom: 1px solid var(--border-line);
}

.stepper-form .form-header .stepIndicator {
  flex: 1;
  color: var(--grigio);
}

.stepper-form .form-header .stepIndicator .text-up {
  position: relative;
  padding-bottom: 25px;
  margin-bottom: 10px;
}

.stepper-form .form-header .stepIndicator.active {
  font-weight: 600;
  color: var(--primario);
}

.stepper-form .form-header .stepIndicator.finish {
  font-weight: 600;
  color: var(--grigio);
}

.stepper-form .form-header .stepIndicator .text-up::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  z-index: 9;
  width: 20px;
  height: 20px;
  background-color: var(--border-line);
  border-radius: 50%;
  border: 3px solid var(--bg-chiaro);
}

.stepper-form .form-header .stepIndicator.active .text-up::before {
  background-color: var(--primario-chiaro);
  border: 3px solid var(--primario-schiarito);
}

.stepper-form .form-header .stepIndicator.finish .text-up::before {
  background-color: var(--primario);
  border: 3px solid var(--primario-schiarito);
}

.stepper-form .form-header .stepIndicator .text-up::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 8px;
  width: 100%;
  height: 3px;
  background-color: var(--border-line);
}

.stepper-form .form-header .stepIndicator.active .text-up::after {
  background-color: var(--primario-schiarito);
}

.stepper-form .form-header .stepIndicator.finish .text-up::after {
  background-color: var(--primario);
}

.stepper-form .form-header .stepIndicator:last-child .text-up:after {
  display: none;
}


.stepper-form.commerciale .form-header .stepIndicator.active {
  color: var(--terziario);
}

.stepper-form.commerciale .form-header .stepIndicator.active .text-up::before {
  background-color: var(--terziario-chiaro);
  border: 3px solid var(--terziario-schiarito);
}

.stepper-form.commerciale .form-header .stepIndicator.finish .text-up::before {
  background-color: var(--terziario);
  border: 3px solid var(--terziario-schiarito);
}

.stepper-form.commerciale .form-header .stepIndicator.active .text-up::after {
  background-color: var(--terziario-schiarito);
}

.stepper-form.commerciale .form-header .stepIndicator.finish .text-up::after {
  background-color: var(--terziario);
}

@media (max-width: 768px) {
  .stepper-form .form-header .stepIndicator .text-down {
    display: none;
  }
}

.stepper-form .step,
.stepper-form .form-footer {
  max-width: 1200px;
}

.stepper-form .step {
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin: auto;
  display: none;
}

.stepper-form .step label {
  color: var(--testo-grigio);
}

.stepper-form .map {
  min-height: 300px;
  border-radius: 10px;
  overflow: hidden;
}


.stepper-form  .field-atto{
  max-width: 500px;
}
.stepper-form .section-atto.hidden{
  display: none;
}



.stepper-form .table-servitu td,
.stepper-form .table-servitu th{
  padding: 1rem 0.25rem;
}

/**
* Step 3: Caratteristiche Quantitative e Superfici
**/

#tabella_superfici tr > td:nth-child(2){
  max-width: 100px;
}

#tabella_superfici tr > td > *,
#tabella_superfici tr > td{
    vertical-align : middle;
}

#tabella_superfici td{
  height: 55px;
}

#tabella_superfici td > input[type="number"]{
  display: none;
}

/**
* Step 4: Impianti
**/

.table-impianti td{
  height: 55px;
}
.table-impianti tr > td > *,
.table-impianti tr > td{
    vertical-align : middle;
}

/**
* Step 5: Caratteristiche Qualitative
**/

.table-caratteristiche-qualitative td{
  height: 55px;
}
.table-caratteristiche-qualitative tr > td > *,
.table-caratteristiche-qualitative tr > td{
    vertical-align : middle;
}
.table-caratteristiche-qualitative tr > td > label{
  cursor: pointer;
}



/** Calcolatore EMCA **/

#map_emca{
  height: 400px;
  background-color: var(--bianco);

}

#map_emca > div{
  border-radius: 20px 20px;
  overflow: hidden;
}

#form_calcolatore_emca{
  background-color: var(--bianco);
  border-radius: 0px 0px 20px 20px;
}

#form_calcolatore_emca .table-emca td,
#form_calcolatore_emca .table-emca th{
  height: 55px;
}

.table-emca tr > td > *,
.table-emca tr > td,
.table-emca tr > th > *,
.table-emca tr > th{
    vertical-align : middle;
    
}

.table-emca tr > td{
  text-align: center;
  font-size: 14px;
}

.table-emca tr > td > input:not([type="checkbox"]){
  max-width: 125px;
  min-width: 80px;
  font-size: 14px;
  text-align: center;
  margin: auto;
}
.table-emca tr > td > input[type="checkbox"]{
  width: 20px;
  height: 20px;
}
.table-emca tr > td > button{
  white-space: nowrap;
}

.table-emca tbody tr > td > i{
  font-size: 18px;
}
.table-emca tbody tr > td > i.bi-check2{
  font-size: 22px;
}

.table-emca tbody tr > th,
.table-emca thead tr > th:first-of-type{
  min-width: 250px;
  position: sticky;
  left: 0px;
  background-color: #fff;
}

.table-emca tbody tr>th,
.table-emca thead tr>th:not(:first-of-type) {
  min-width: 120px;
}

@media only screen and (max-width: 767px){
  .table-emca tbody tr > th,
  .table-emca thead tr > th:first-of-type{
    min-width: 120px;
    font-size: 12px!important;
  }
}

.table-emca thead th {
  background-color: #fff;
  border-bottom: 1px solid var(--border-line);
}

.table-emca thead tr > th:not(:first-of-type){
  text-align: center;
}

.table-emca thead{ position: sticky; top: 0px; z-index: 1; }

.table-emca tr > th:first-of-type{
  font-size: 14px;
}

#form_calcolatore_emca .table-emca-wrapper{
  margin: auto;
}

.table-emca .toggle-row{
  pointer-events: all;
  text-align: right;
}

.table-emca tr .toggle-row > i:first-of-type{
  display: block;
}

.table-emca tr .toggle-row > i:last-of-type{
  display: none;
}

.table-emca tr.disabled .toggle-row > i:first-of-type{
  display: none;
}

.table-emca tr.disabled .toggle-row > i:last-of-type{
  display: block;
}

.table-emca tbody tr.disabled{
  background-color: #F7F7F7;
}
.table-emca tbody tr.disabled td,
.table-emca tbody tr.disabled th{
  color: #707070;
}

.table-emca tbody tr.disabled > th{
  background-color: #F7F7F7;
}


.table-emca tbody tr.disabled input,
.table-emca tbody tr.disabled textarea,
.table-emca tbody tr.disabled select{
  background-color: #F7F7F7;
  color: #707070;
  pointer-events: none!important;
}

.table-emca tbody tr.disabled input[type="checkbox"]:checked{
  pointer-events: none!important;
  background-color: var(--primario-schiarito);
  border-color: var(--border-line);

}


.table-emca tbody tr.last-line td:first-of-type{
  text-align: left;
}
.table-emca tbody tr.last-line td.remove-column i{
  font-size: 16px;
}
.table-emca tbody tr.last-line td.remove-column i:hover{
  color: var(--primario);
  cursor: pointer;
}

.table-emca tfoot tr td,
.table-emca tfoot tr td > input{
  text-align: left;
}
.table-emca tfoot tr td{
  padding-top: 30px;
  border-bottom: 0px;
}
.table-emca tfoot tr td > input:not([type="checkbox"]),
.table-emca tfoot tr td > select{
  text-align: left;
  margin: auto 0;
  max-width: 200px!important;
  font-size: 14px;
}
.table-emca tfoot tr td > input[type="submit"]{
  font-size: 16px;
  width: 100%;
}
.table-emca tfoot tr td:last-of-type{
  /*width: 100%;*/
  text-align: right;
}

.overflow-x-auto{
  overflow-x: auto;
}

.table-parametri-avanzati tbody td{
  vertical-align: middle;
}
.table-parametri-avanzati tbody td > input:not([type="checkbox"]){
  max-width: 150px;
}
.table-parametri-avanzati tbody td:first-of-type{
  min-width: 200px;
}
@media only screen and (min-width: 768px){
  .table-parametri-avanzati tbody td:first-of-type{
    min-width: 300px;
  }
}

.remove-sup-buttons-wrapper button{
  font-size: 14px;
  margin: 3px;
}

.table-carica-dip tbody td{
  vertical-align: middle;
  font-size: 14px;
  height: 55px;
}
.table-carica-dip tbody td.button-add,
.table-carica-dip tbody td.button-show-more{
  font-size: 18px;
  color: var(--testo-grigio);
  pointer-events: all;
}


.table-carica-dip tbody td.button-add:hover,
.table-carica-dip tbody td.button-show-more:hover{
  color: var(--primario);
  cursor: pointer;
}


/* Archivio Dati */

#archivioDati .tipo_lista_selector{
  border-bottom: 1px solid var(--border-line);
}

#archivioDati .tipo_lista_selector label{
  width: calc(50% - 5px);
}


#archivioDati .form-filtri select:invalid,
#archivioDati .form-filtri select option[value=""]{
  color: var(--testo-grigio)!important;
}

#mapArchivioDati{
  height: 400px;
  visibility: hidden;
  /*transition: visibility 0.6s ease-out;*/
}

/*#mapArchivioDati.active{
  height: 400px;
  transition: height 0.5s ease-out;
}*/

#mapArchivioContainer{
  height: 0px;
  transition: height 0.5s ease-out;
}

#mapArchivioContainer.active{
  height: 400px;
  transition: height 0.5s ease-out;
}

#archivioDati .toggle-map > a:first-child{
  display: block;
}
#archivioDati .toggle-map > a:last-child{
  display: none;
}
#archivioDati .toggle-map.active > a:first-child{
  display: none;
}
#archivioDati .toggle-map.active > a:last-child{
  display: block;
}
#archivioDati .filtri-wrapper.sticky-top{
  top: 80px!important;
  z-index: 0;
}

.legenda-item{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  color: var(--testo-grigio);
  font-size: 14px;
}

#archivioDati .icon{
  font-size: 18px;
  width: 36px;
  height: 36px;
  text-align: center;
  line-height: 1;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.legenda-item > .icon.com-residenziale:before,
.legenda-item > .icon.dip-residenziale:before{content: "r";}
.legenda-item > .icon.com-commerciale:before,
.legenda-item > .icon.dip-commerciale:before{content: "c";}

.icon.com-residenziale{ background-color: var(--primario-schiarito); }
.icon.com-commerciale{ background-color: var(--terziario-schiarito); }
.icon.dip-residenziale{ background-color: var(--dip-residenziale); }
.icon.dip-residenziale{ background-color: var(--dip-residenziale); }
.icon.dip-commerciale{ background-color: var(--dip-commerciale); }

.icon.button{
  cursor: pointer;
  pointer-events: all;
}
.icon.button:hover{
  border: 1px solid var(--testo-grigio);
}

.icon.button.com-residenziale{
  color: var(--primario);
}
.icon.button.com-commerciale{
  color: var(--terziario);
}
.icon.button.dip-residenziale{
  color: var(--dip-residenziale-scuro);
}
.icon.button.dip-commerciale{
  color: var(--dip-commerciale-scuro);
}

.icon.button.com-residenziale:hover{
  border-color: var(--primario);
}
.icon.button.com-commerciale:hover{
  border-color: var(--terziario);
}
.icon.button.dip-residenziale:hover{
  border-color: var(--dip-residenziale-scuro);
}
.icon.button.dip-commerciale:hover{
  border-color: var(--dip-commerciale-scuro);
}

.icon.com-residenziale{ background-color: var(--primario-schiarito); }
.icon.com-commerciale{ background-color: var(--terziario-schiarito); }
.icon.dip-residenziale{ background-color: var(--dip-residenziale); }
.icon.dip-commerciale{ background-color: var(--dip-commerciale); }

#archivioDati .table-archivio tbody tr.com-residenziale.active td{ background-color: var(--primario-bianco);}
#archivioDati .table-archivio tbody tr.com-commerciale.active td{ background-color: var(--terziario-bianco);}
#archivioDati .table-archivio tbody tr.dip-residenziale.active td{ background-color: var(--dip-residenziale-schiarito);}
#archivioDati .table-archivio tbody tr.dip-commerciale.active td{ background-color: var(--dip-commerciale-schiarito);}


.archivio-legenda{
  max-width: 800px;
}

.archivio-legenda .legenda-item:not(:last-child){
  margin-right: 10px;
}
.archivio-legenda .legenda-item{
  margin-bottom: 10px;
}

#archivioDati .table-archivio tr td{
  color: var(--testo-grigio);
  vertical-align: middle;
}

#archivioDati .table-archivio tr th{
  vertical-align: end;
  padding-bottom: 10px;
}
#archivioDati .table-archivio tr td,
#archivioDati .table-archivio tr th{
  height: 55px;
}

#archivioDati .table-archivio-wrapper{
  overflow-x: auto;
}

#archivioDati .archivio-footer a{
  min-width: 180px;
}
#archivioDati .table-archivio tbody tr:hover{
  cursor: pointer;
}
#archivioDati .table-archivio tbody tr:hover td{
  background-color: var(--grigio-chiaro);
}


/* Analisi di Mercato */

#analisiMercato .result-analisi-mercato .first-tables .table-result-analisi tr td{
  border-bottom: 0;
  height: 45px;
  vertical-align: middle;
  padding-left: 0px;
}

#analisiMercato .result-analisi-mercato .first-tables .table-result-analisi tr td:not(:last-child){
  padding-right: 10px;
}

#analisiMercato .map-analisi-dati{
  height: 400px;
}
@media only screen and (max-width: 767px){
  #analisiMercato .map-analisi-dati{
    height: 250px;
  }
}

#analisiMercato .result-analisi-mercato .table-analisi-mercato-dati td a{
  color: var(--primario);
}
#analisiMercato .result-analisi-mercato .table-analisi-mercato-dati td a:hover{
  color: var(--primario-scuro);
}

#analisiMercato .table-result-analisi-confronto{
  max-width: 600px;

}


/* News */

.news-side-menu{
  position: sticky;
  top: 80px;
  z-index: 0;
}

.news-categorie-list{
  padding: 0px;
  list-style: none;
  line-height: 1.8rem;
}
.news-categorie-list li a{
  padding: 5px 0px;
  display: block;
  text-decoration: none;
  color: var(--testo-grigio);
  transition: color 0.3s ease-in-out;

}

.news-categorie-list li a:hover{
  color: var(--primario);
  transition: color 0.3s ease-in-out;
}

.news-categorie-list li a:before{
  content: "\f285";
  display: inline-block;
  font-family: bootstrap-icons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -0.125em;
  margin-right: 5px;
}

.card .linked-image {
  overflow: hidden!important;
}

.card .linked-image:hover > img{
  transform: scale(1.1);
  transition: transform 0.2s ease-in-out;
}
.card .linked-image > img{
  transition: transform 0.2s ease-in-out;
}

.card.card-articolo .card-text{
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.card.card-articolo{
  border-radius: 10px 10px 10px 10px;
}

.card.card-articolo img{
  height: 250px;
  object-fit: cover;
  object-position: center;
  border-radius: 10px 10px 0px 0px;
}

.card.card-articolo .card-title a{
  font-weight: bold!important;
  text-decoration: none;
}
.card.card-articolo .card-title a:hover{
  color: var(--primario-scuro);
}
.card.card-articolo .card-text{
  color: var(--testo-grigio);
  font-size: 16px;
}
.card.card-articolo .card-link{
  color: var(--testo-grigio);
}

.card.card-articolo .badges{
  margin-top: -50px;
  z-index: 1;
}
.card.card-articolo .badges > .badge{
  border-radius: 10px;
}
.card.card-articolo .linked-image {
  border-radius: 10px 10px 0px 0px;
}

.card.mini-card-articolo{
  border-radius: 0px;
  border-width: 0px;
}
.card.mini-card-articolo:not(:last-child){
  border-radius: 0px;
  border-width: 0px 0px 1px 0px;
}

.card.mini-card-articolo .linked-image{
  border-radius: 5px;
  overflow: hidden;
  display: block;
}

.card.mini-card-articolo img{
  height: 80px;
  object-fit: cover;
  object-position: center;
  border-radius: 5px;
}

@media only screen and (max-width: 575px){
  .card.mini-card-articolo img{
    height: 150px;
  }
}
.card.mini-card-articolo .card-title{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--primario)
}



.card.mini-card-articolo .card-title a{
  font-weight: bold!important;
  text-decoration: none;
}
.card.mini-card-articolo .card-title a:hover{
  color: var(--primario-scuro);
}
.card.mini-card-articolo .card-text{
  color: var(--testo-grigio);
  font-size: 16px;
}
.card.mini-card-articolo .card-link{
  color: var(--testo-grigio);
}


nav.paginazione-news li > a{
  background: none;
  border: 0px;
  color: var(--primario);
  border-radius: 5px!important;
  margin: 0px 5px;
}
nav.paginazione-news li > a:hover,
nav.paginazione-news li.active a{
  background: var(--primario);
  color: var(--bianco);
}

nav.paginazione-news li a:focus{
  outline: none!important;
  box-shadow: none!important;
  background-color: var(--primario-chiaro);
  color: var(--bianco);
}

nav.paginazione-news li.disabled > a{
  background: none;
}


#articolo .page-content .img-articolo{
  height: 500px;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

@media only screen and (max-width: 575px){
  #articolo .page-content .img-articolo{
    height: 250px;
  }
}


/* Guide */

#guide .btn-toggle{
  color: var(--testo-grigio);
}

#guide .btn-toggle:hover,
#guide .btn-toggle:focus {
  color: var(--primario-scuro);
}

#guide .btn-toggle::before {
  content: "\f285";
  display: inline-block;
  font-family: bootstrap-icons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -0.125em;
  margin-right: 5px;
  transition: transform .35s ease;
  transform-origin: .5em 50%;
}

#guide .btn-toggle[aria-expanded="true"] {
  color: var(--primario);
}

#guide .btn-toggle[aria-expanded="true"]::before {
  transform: rotate(90deg);
  color: var(--primario)!important;

}

#guide .btn-toggle-nav a {
  padding: .1875rem .5rem;
  margin-top: .125rem;
  margin-left: 1.25rem;
}
#guide .btn-toggle-nav a:hover,
#guide .btn-toggle-nav a:focus {
  color: var(--primario)!important;
}

#guide .sticky-top{
  top: 80px!important;
  z-index: 0;
}

.mw-fit-content {
  max-width: fit-content;
}

/** Notifications Page */

.notifications-table {
  min-width: 800px;
  color: var(--testo-grigio);
}

.notifications-container .delete-notification {
  color: var(--grigio);
}

.notifications-container td {
  vertical-align: top;
}

/*.notifications-container .notification-item.read td {
  vertical-align: middle;
}*/

.notifications-container .icon i {
  font-size: 40px;
  padding-right: 60px;
}

.notification-item .icon .bi-envelope {
  color: var(--terziario);
}

.notification-item .icon .bi-envelope-check {
  display: none;
}

.notification-item .icon .bi-envelope-open {
  display: none;
}

.notification-item.read .icon .bi-envelope {
  display: none;
}

.notification-item.read .icon .bi-envelope-check {
  display: block;
}

.notification-item.read .icon .bi-envelope-open {
  display: block;
}

.notification-item p {
  margin-block-start: 0px;
}

.notification-item.read td:nth-child(2) div {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  /*white-space: nowrap;*/
  overflow: hidden;
  margin: 0px;
}

.notification-item.read {
  background-color: #f7f7f7;
}

.notification-item.read td p,
.notification-item.read td {
  color: #a6abae !important;
}


/** Geolocalizzati **/


#map_geolocalizzati {
  height: 500px;
}

#map_geolocalizzati>div {
  border-radius: 20px 20px;
  overflow: hidden;
}


.geolocalizzati-table {
  min-width: 800px;
  color: var(--testo-grigio);
}

.geolocalizzati-table td,
.geolocalizzati-table th {
  padding: 16px;
}

.geolocalizzati-table tbody tr:hover {
  background-color: var(--primario-schiarito);
}

/** Pagina Comparabile **/

#paginaComparabile>.container {
  max-width: 1000px;
  background-color: #ffffff;
}

#paginaComparabile hr {
  border-color: var(--border-line);
  opacity: 1;
}

#paginaComparabile .comparabile-note .btn>i {
  margin-right: 10px;
}

#paginaComparabile .comparabile-note .btn.stampa,
#paginaComparabile .comparabile-note .btn.download {
  color: var(--testo-grigio);
}

#paginaComparabile .comparabile-note .btn.analizza,
#paginaComparabile .comparabile-note .btn.completa {
  min-width: 30%;
}

#paginaComparabile .comparabile-note p {
  font-size: 14px;
  color: var(--grigio);
}

#paginaComparabile .comparabile-note .btn {
  margin: calc(0.5rem * .5);
}

@media (max-width: 767px) {
  #paginaComparabile .comparabile-note .btn {
    font-size: 14px;
  }
}

#paginaComparabile .comparabile-note .action-buttons {
  border-bottom: 1px solid var(--border-line);
}

#paginaComparabile .header-buttons,
#paginaComparabile .header-buttons a {
  color: var(--testo-grigio);
}

#paginaComparabile .header-buttons a:hover {
  color: var(--nero);
}

#paginaComparabile h4.text-with-icon {
  display: flex;
  align-items: center;
}

#paginaComparabile h4.text-with-icon>i {
  font-size: 20px;
  width: 30px;
  height: 30px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-right: 10px;
  border-radius: 50%;
}

#paginaComparabile h4.text-with-icon.text-success>i {
  background-color: rgb(25 135 84 / 30%);
}

#paginaComparabile h4.text-with-icon.text-danger>i {
  background-color: rgb(220 53 69 / 30%)
}

#paginaComparabile .comparabile-caratteristiche-qualitative .col-md-6:first-child,
#paginaComparabile .comparabile-servitu .col-md-6:first-child {
  border-right: 1px solid var(--border-line);
}

#paginaComparabile .comparabile-note .btn.stampa {
  color: white;
}


/** Pagina Grafico eDCF **/

#toolEdcf {
  display: flex;
  justify-content: stretch;
  align-items: stretch;
  flex-wrap: nowrap;
  flex-direction: row;
  width: 100%;
}

#toolEdcf .side-content {
  width: 500px;
  height: auto;
  background-color: var(--bianco);
  z-index: 0;
  color: var(--testo-grigio);
  transition: all 0.3s ease-in-out;
}

/* #toolEdcf .side-content>.container {} */

#toolEdcf .side-content .reddito-netto h4 {
  color: var(--dip-commerciale-scuro);
}

#toolEdcf .content-wrapper {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

#toolEdcf .content-wrapper table td {
  padding: 12px 20px;
  height: 55px;
}

#toolEdcf .content-wrapper table td input {
  color: var(--text-secondary);
  border: 0px;
  font-size: 20px;
  padding: 0px;
  font-weight: bolder;
  text-align: right;
}

#toolEdcf .content-wrapper table td input~span {
  border: 0px;
  font-size: 20px;
  padding: 0px 0px 0px 10px;
  background: none;
  min-width: 30px;
  text-align: center;
  display: block;
  color: var(--text-secondary);
}

#toolEdcf .content-wrapper table td:last-child {
  max-width: 140px;
}

#toolEdcf .content-wrapper table tr:last-child td {
  border-bottom: 0px;
}

#toolEdcf .content-wrapper table td.iniziale,
#toolEdcf .content-wrapper table td.finale {
  font-size: 20px;
  font-weight: bold;
}

@media (min-width: 1920px) {
  #toolEdcf .content-wrapper {
    margin-left: calc(50vw - 950px);
  }
}

#toolEdcf .side-content table tr.reddito-netto {
  background-color: var(--dip-commerciale-scuro);
}

#toolEdcf .side-content table .add-cell {
  width: 20px;
}

#toolEdcf .side-content input {
  font-size: 14px;
}

#toolEdcf .side-content>.container {
  overflow: auto;
  height: 100%;
}


@media (max-width: 1600px) {
  #toolEdcf .side-content {
    position: fixed;
    max-width: 400px;
    width: 100%;
    left: -400px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
    z-index: 2;
    height: 100vh;
  }

  #toolEdcf .side-content.active {
    left: 0px;
    transition: all 0.3s ease;
  }

  #toolEdcf .side-content:not(.active) .sidenav-toggle .left {
    display: none;
  }

  #toolEdcf .side-content.active .sidenav-toggle .right {
    display: none;
  }
}



#toolEdcf .side-content>.sidenav-toggle {
  position: absolute;
  right: 0px;
  left: 0px;
  top: -30px;
  display: inline-block;
  background-color: var(--primario);
  color: white;
  width: 100px;
  height: 30px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 10px 10px 0px 0px;
  transition: background-color 0.2s ease-in-out;
}

#toolEdcf .side-content .container>.sidenav-toggle:hover {
  background-color: var(--primario-scuro);
  color: white;
  transition: background-color 0.2s ease-in-out;
  cursor: pointer;
}

#toolEdcf .side-content .container>.sidenav-toggle>.badge {
  display: none;
}

#toolEdcf .side-content .container>.sidenav-toggle>.badge.active {
  display: block;
}


#toolEdcf .side-content .container>.sidenav-toggle {
  position: absolute;
  right: -20px;
  left: auto;
  top: calc(45vh - 58px);
  z-index: 9;
  display: inline-block;
  background-color: var(--primario);
  color: white;
  height: 100px;
  width: 20px;
  border-radius: 0px 10px 10px 0px;
  transition: background-color 0.2s ease-in-out;
}

@media (min-width: 1601px) {
  #toolEdcf .side-content .container>.sidenav-toggle {
    display: none!important;
  }
}

#toolEdcf .side-content .container>.sidenav-toggle:hover {
  background-color: var(--primario-scuro);
  color: white;
  transition: background-color 0.2s ease-in-out;
  cursor: pointer;
}

@media (max-width: 400px) {
  #toolEdcf .side-content {
    max-width: 400px;
    width: 100%;
    left: -100%;
  }

  #toolEdcf .side-content.active .sidenav-toggle {
    right: 0px;
    border-radius: 10px 0px 0px 10px;
  }
}

#toolEdcf .legenda {
  display: flex;
  justify-content: left;
  align-items: center;
  padding: 20px 0px;
  gap: 30px;
  flex-wrap: wrap;
}

#toolEdcf .legenda .legenda-item {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: 10px;
  color: var(--bs-secondary);
}

#toolEdcf .legenda .legenda-item .color {
  width: 30px;
  height: 30px;
}

#toolEdcf .legenda .legenda-item .color-netto {
  background-color: var(--dip-commerciale-scuro);
}

#toolEdcf .tabella-edcf th {
  position: sticky;
  left: 0;
  background-color: white;
  z-index: auto;
}

.services-group {
  position: relative;
  overflow: hidden;
}

.services-group::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 4px;
  width: 100%;
  background: var(--services-accent, var(--primario));
  opacity: 0.85;
}

.services-group[data-theme="primario"] {
  --services-accent: var(--primario);
}

.services-group[data-theme="secondario"] {
  --services-accent: var(--secondario);
}

.services-group[data-theme="terziario"] {
  --services-accent: var(--terziario);
}

.services-group[data-theme="success"] {
  --services-accent: var(--bs-success);
}

.services-group[data-theme="danger"] {
  --services-accent: var(--bs-danger);
}

.services-group-header {
  position: relative;
  z-index: 1;
}

.services-group-icon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 0.85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.services-primary {
  position: relative;
  overflow: hidden;
}

.services-primary::after {
  content: "";
  position: absolute;
  bottom: -40px;
  right: -40px;
  width: 140px;
  height: 140px;
  background: var(--services-accent, var(--primario));
  opacity: 0.12;
  border-radius: 50%;
  pointer-events: none;
}

.services-primary-icon {
  position: absolute;
  top: 0.9rem;
  right: 0.9rem;
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  color: var(--services-accent, var(--primario));
  background: rgba(255, 255, 255, 0.85);
  border: 2px solid currentColor;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.12);
}

.services-primary-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  margin-bottom: 0.75rem;
  border-radius: 0.85rem;
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(0, 0, 0, 0.05);
}

.services-primary-stat-value {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--services-accent, var(--primario));
}

.services-primary-stat-label {
  font-size: 0.75rem;
  color: var(--testo-grigio);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
