@keyframes FloatingY {
    0% {
        -webkit-transform: translate(0, 0px);
    }
    65% {
        -webkit-transform: translate(0, 15px);
    }
    100% {
        -webkit-transform: translate(0, 0px);
    }
}

html, body {
    height: 100%;
    width: 100%;
}

a, a.page-link {
    color: var(--is-green);
}

a:hover, a.page-link:hover, a:focus, a.page-link:focus {
    color: var(--is-text-dark);
}

i.tree-checkbox {
    width: 20px;
    height: 20px;
}

li.page-item.active .page-link {
    background-color: var(--is-green);
    border-color: var(--is-green);
}

button.material-scrolltop {
    background-color: var(--is-green);
}

button.material-scrolltop:hover {
    background-color: var(--is-green);
}

.pt-10 {
    padding-top: 6em;
}

.text-normal {
    font-family: 'NunitoSans', sans-serif;
    font-size: 16px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.33;
    letter-spacing: normal;
}

.bg-white {
    background-color: var(--is-white);
    color: var(--is-text-dark);
}

.bg-grey {
    background-color: var(--is-grey);
    color: var(--is-text-dark);
}

.bg-gradient-blue {
    background-color: #1BBB6B;
    color: var(--is-white);
}

.bg-light-blue {
    background-color: var(--is-light-blue);
    color: var(--is-text-dark);
}

.text-color-secondary {
    color: var(--is-text-grey);
}

.text-color-blue {
    color: var(--is-green);
}

.list-without-bullets {
    list-style-type: none;
}

.btn-primary {
    background-color: var(--is-green);
    color: var(--is-white);
    border: 1px solid var(--is-green);
}

.btn-primary:hover {
    background-color: #159656;
    color: var(--is-white);
    border: 1px solid var(#159656);
}

.btn-outline-primary {
    color: var(--is-text-dark);
    border: 1px solid var(--is-text-grey);
}

.btn-outline-primary:hover {
    background-color: #EAEBEF;
    color: var(--is-text-dark);
    border-color: var(--is-text-dark);
}

.social-icon {
    width: 35px;
    height: 35px;
    background-color: var(--is-white);
    border-radius: 50%;
    display: inline-block;
}

.social-icon svg {
    width: 20px;
    height: 20px;
    margin-top: 7px;
    fill: var(--is-text-grey);
}

.social-icon:hover svg {
    fill: var(--is-text-dark);
}

.row-with-margin-top {
    margin-top: 30px;
}

.icon-md {
    width: 36px;
    height: 36px;
    vertical-align:middle;
}

.icon-sm {
    width: 18px;
    height: 18px;
    vertical-align:middle;
}

.main-featured-sec {
    width: auto;
    background-image: url('/images/ldpi/home.png');
    background-image: -webkit-image-set(
        url('/images/ldpi/home.png') 400w,
        url('/images/mdpi/home.png') 1000w,
        url('/images/hdpi/home.png') 2000w
    );
    /* This will be useful if image-set gets into the platform, unprefixed.
    Also include other prefixed versions of this */
    background-image: image-set(
        url('/images/ldpi/home.png') 400w,
        url('/images/mdpi/home.png') 1000w,
        url('/images/hdpi/home.png') 2000w
    );
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;

}

.about-featured-sec {
    width: auto;
    background-image: url('/images/ldpi/about.png');
    background-image: -webkit-image-set(
        url('/images/ldpi/about.png') 1x,
        url('/images/mdpi/about.png') 1.5x,
        url('/images/hdpi/about.png') 2x
        );
        /* This will be useful if image-set gets into the platform, unprefixed.
        Also include other prefixed versions of this */
        background-image: image-set(
            url('/images/ldpi/about.png') 1x,
            url('/images/mdpi/about.png') 1.5x,
            url('/images/hdpi/about.png') 2x
            );
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right center;
}

@media only screen and ( min-width: 1200px ) {
    .about-featured-sec {
        background-image: url('/images/hdpi/about.png');
    }
}

@media only screen and ( min-width: 1920px ) {
    .about-featured-sec {
        background-image: url('/images/hdpi/about.png');
    }
}

.how-it-works-featured-sec {
    width: auto;
    background-image: url('/images/hdpi/how-it-works.png');
    background-image: -webkit-image-set(
        url('/images/ldpi/how-it-works.png') 1x,
        url('/images/mdpi/how-it-works.png') 1.5x,
        url('/images/hdpi/how-it-works.png') 2x
    );
    /* This will be useful if image-set gets into the platform, unprefixed.
    Also include other prefixed versions of this */
    background-image: image-set(
        url('/images/ldpi/how-it-works.png') 1x,
        url('/images/mdpi/how-it-works.png') 1.5x,
        url('/images/hdpi/how-it-works.png') 2x
    );
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right center;
}

.main-search {
    height: initial;
}

@media (min-width: 1200px)
    {
    .main-search {
        height: 60px;
    }
}

.main-search .form-row>.col, .main-search .form-row>[class*=col-] {
    padding-right: 0;
    padding-left: 0;
}

.carousel.slide .carousel-item img {
    top: 0px;
    left: calc(50% - 45px);
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background-color: var(--is-white);
}

.carousel.slide .carousel-control-prev, .carousel.slide .carousel-control-next {
    color: var(--is-text-dark);
}

.carousel.slide .carousel-indicators li {
    width: 14px;
    height: 14px;
    background-color: var(--is-white);
    border: 1px solid var(--is-green);
    border-radius: 50%;
}

.carousel.slide .carousel-indicators li.active {
    background-color: var(--is-green);
}

.floating {
    -webkit-animation-name: FloatingY;
    -webkit-animation-duration: 3s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-name: FloatingY;
    -moz-animation-duration: 3s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: ease-in-out;
    animation-name: FloatingY;
    animation-duration: 3s;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}

.zoom-image {
    -webkit-transition: -webkit-transform 3s ease-out,filter 500ms ease-in-out,-webkit-filter 500ms ease-in-out;
    transition: transform 3s ease-out,filter 500ms ease-in-out,-webkit-filter 500ms ease-in-out;
}

.floating-button {
    color: var(--is-green);
}

.is-badge {
    font-size: 100%;
    font-weight: normal;
    color: var(--is-text-dark);
}

.category-card-box {
    overflow: hidden;
    border-radius: 0.5em;
}

.category-card-box a {
    display: inline-block;
    position: relative;
    height: 100%;
    width: 100%;
}

.category-card-box span {
    position: absolute;
    top: calc(50% - 0.5em);
    left: 0;
    color: var(--is-white);
    font-size: 2em;
    display: inline-block;
    width: 100%;

    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
}

.category-card-box div {
    top: 0;
    background-color: rgba(142, 166, 176, 0.5);
}

.category-card-box:hover span {
    top: 75%;
}

.category-card-box img {
    width: 100%;
}

.category-card-box:hover img {
    transform: scale3d(1.1,1.1,1.1);
}

.footer-items ul li a {
    color: var(--is-text-grey);
}

.footer-items ul li a:hover {
    color: var(--is-text-dark);
}

.card {
    border-radius: 10px;
}

.card .card-img-top {
    border-radius: 10px 10px 0 0;
}

.card .card-body {
    border-radius: 0 0 10px 10px;
}

.card-img-logo {
    top: -42px;
    right: 20px;
    background-color: white;
    max-height: 72px;
    max-width: 250px;
}

.featured-suppliers .card-title {
    margin-top: 1.05rem;
}

@media (min-width: 1200px)
{
    .navbar-expand-xlg {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .navbar-expand-xlg .navbar-toggler {
        display: none;
    }

    .navbar-expand-xlg .navbar-collapse {
        display: -ms-flexbox!important;
        display: flex!important;
        -ms-flex-preferred-size: auto;
        flex-basis: auto;
    }

    .navbar-expand-xlg .navbar-nav {
        -ms-flex-direction: row;
        flex-direction: row;
    }

    .navbar-expand-xlg .navbar-nav .nav-link {
        padding-right: .5rem;
        padding-left: .5rem;
    }
}

.navbar-light .navbar-nav .nav-link {
    color: var(--is-text-dark);
}

.navbar-light .navbar-nav .nav-link:hover {
    color: var(--is-green);
}

.navbar-light .navbar-nav .nav-link.active {
    color: var(--is-green);
    font-weight: bold;
}
.supplier-logo {
    max-width:100%;
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: pointer;
}

@media (min-width: 576px) {
    .is-bubble {
        width: 130px;
        height: 130px;

        top: calc(50% - 65px);
        right: 15%;
        transition: top 0.8s ease-in-out, right 0.8s ease-in-out;
    }
}

@media (max-width: 575px) {
    .is-bubble {
        width: 100px;
        height: 100px;
        font-size: 0.7em;

        top: calc(50% - 65px);
        right: 15%;
        transition: top 0.8s ease-in-out, right 0.8s ease-in-out;
    }
}

/* .is-bubble-building-management {
    top: calc(50% - 65px);
    right: 15%;
    transition: top 0.8s ease-in-out, right 0.8s ease-in-out;
} */

@media(min-width: 992px) {
    .is-bubble-container.active .is-bubble-building-management {
        top: 50%;
        right: 7%;
    }

    .is-bubble-container.active .is-bubble-cost-management {
        top: 70%;
        right: 30%;
    }

    .is-bubble-container.active .is-bubble-asset-management {
        top: 53%;
        right: 48%;
    }

    .is-bubble-container.active .is-bubble-preventive-maintenance {
        top: 30%;
        right: 50%;
    }

    .is-bubble-container.active .is-bubble-corrective-maintenance {
        top: 16%;
        right: 5%;
    }

    .is-bubble-container.active .is-bubble-audit {
        top: 5%;
        right: 30%;
    }

    .is-bubble-container.active .is-bubble-nfc-tags {
        top: 37%;
        right: 25%;
    }
}

@media(min-width: 768px) and (max-width: 991px) {
    .is-bubble-container.active .is-bubble-building-management {
        top: 50%;
        right: 7%;
    }

    .is-bubble-container.active .is-bubble-cost-management {
        top: 71%;
        right: 16%;
    }

    .is-bubble-container.active .is-bubble-asset-management {
        top: 52%;
        right: 26%;
    }

    .is-bubble-container.active .is-bubble-preventive-maintenance {
        top: 30%;
        right: 40%;
    }

    .is-bubble-container.active .is-bubble-corrective-maintenance {
        top: 16%;
        right: 5%;
    }

    .is-bubble-container.active .is-bubble-audit {
        top: 2%;
        right: 27%;
    }

    .is-bubble-container.active .is-bubble-nfc-tags {
        top: 30%;
        right: 19%;
    }
}

@media(max-width: 767px) {
    .is-bubble-container.active .is-bubble-building-management {
        top: 51%;
        right: 5%;
    }

    .is-bubble-container.active .is-bubble-cost-management {
        top: 72%;
        right: 9%;
    }

    .is-bubble-container.active .is-bubble-asset-management {
        top: 61%;
        right: 23%;
    }

    .is-bubble-container.active .is-bubble-preventive-maintenance {
        top: 42%;
        right: 27%;
    }

    .is-bubble-container.active .is-bubble-corrective-maintenance {
        top: 16%;
        right: 5%;
    }

    .is-bubble-container.active .is-bubble-audit {
        top: 2%;
        right: 18%;
    }

    .is-bubble-container.active .is-bubble-nfc-tags {
        top: 33%;
        right: 2%;
    }
}

.about-video-preview {
    /* bottom: -22%;
    left: 0;    */
}

.about-video-preview iframe {
    width: 90%;
    height: 50.625vw;
}

@media (min-width: 576px) {
    .about-video-preview iframe {
        width: 560px;
        height: 315px;
    }
}

@media (min-width: 992px) {
    .about-video-preview {

    }

    .about-video-preview iframe {
        width: 944px;
        height: 531px;
    }
}

@media (min-width: 768px) {
    .show-grid {
        margin-bottom: 30px!important;
    }
}

.vh-half {
    width: 100%;
    padding-top: 47.2%;
}

.categories-card-image {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
}

.categories-card-image:hover {
    transform: scale(1.1);
}

.categories-card-text-container {
    top: 50%;
}

.categories-card-text-container .categories-card-text {
    color: var(--is-white);
    font-size: 22px;
    font-weight: bold;
    font-style: normal;
    font-stretch: normal;
    line-height: 0.68;
    letter-spacing: normal;
}

 .supplier-horizontal-card {
    border-radius: 0.5em;
    background-color: var(--is-white);
    min-height: 210px;
    padding: 0.8em;
}
/*
.supplier-card-image {
    background-repeat: no-repeat;
    background-size: center;
    background-position: center;
    border-radius: 0.5em 0 0 0.5em;
} */

.supplier-horizontal-card-img-logo {
/*    top: 0px;
    right: 0px;*/
    vertical-align: middle;
    width: 1em;
    /* background-color: white; */
}

.category-card-container, .location-card-container {
    padding: 15px;
    min-height: 200px;
    overflow: hidden;
}

.category-card-container>div>div {
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
}

.category-card-container:hover>div>div {
    transform: scale(1.1);
}

.category-card-container .category-card-overlay {
    align-items: center;
    background-color: rgba(0, 0, 0, 0.3);
}

.category-card-container .category-card-overlay:hover {
    align-items: flex-end;
}

.category-card-container .category-card-overlay .category-card-text {
    color: var(--is-white);
    font-size: 22px;
    font-weight: bold;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.15;
    letter-spacing: normal;
    padding: 0.1rem;
}

@media (min-width: 768px) {
    .category-card-container {
        min-height: 250px;
    }
}

@media (min-width: 992px) {
    .category-card-container {
        min-height: 247px;
    }
}

@media (min-width: 1200px) {
    .category-card-container {
        min-height: 293px;
    }
}

.location-card-container {
    padding: 15px;
    min-height: 200px;
    overflow: hidden;
}

.location-card-container>div>div {
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
}

.location-card-container:hover>div>div {
    transform: scale(1.1);
}

.location-card-container .location-card-overlay {
    align-items: center;
    background-color: rgba(0, 0, 0, 0.3);
}

.location-card-container .location-card-overlay:hover {
    align-items: flex-end;
}

.location-card-container .location-card-overlay .location-card-text {
    color: var(--is-white);
    font-size: 22px;
    font-weight: bold;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.15;
    letter-spacing: normal;
    padding: 0.1rem;
}

@media (min-width: 768px) {
    .location-card-container {
        min-height: 250px;
    }
}

@media (min-width: 992px) {
    .location-card-container {
        min-height: 247px;
    }
}

@media (min-width: 1200px) {
    .location-card-container {
        min-height: 293px;
    }
}

.circle-with-line {
    width: 72px;
    height: 72px;
    display: inline-block;
    border-radius: 50%;
    background-color: var(--is-green);
    color: var(--is-white);
    font-size: 4.7em;
    line-height: 1.37;
    text-align: right;
}

@media (min-width: 768px) {
    .circle-with-line::after,
    .circle-with-line::before {
        content: '';
        border-bottom: 2px solid var(--is-green);
        width: 60%;
        position: absolute;
        top: 50%;
    }

    .circle-with-line::after {
        left: calc(50% + 70px);
    }

    .circle-with-line::before {
        right: calc(50% + 70px);
    }

    .circle-with-lines-container .hide-left.circle-with-line::before,
    .circle-with-lines-container .hide-right.circle-with-line::after {
        display: none;
    }
}




/* Customize the label (the container) */
.checkbox-container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    /* font-size: 22px; */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  /* Hide the browser's default checkbox */
  .checkbox-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
  }

  /* Create a custom checkbox */
  .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    /* background-color: #eee; */
    border-radius: 2px;
    border: 1px solid #dadada;
  }

  /* On mouse-over, add a grey background color */
  /* .checkbox-container:hover input ~ .checkmark {
    background-color: #ccc;
  } */

  /* When the checkbox is checked, add a green background */
  .checkbox-container input:checked ~ .checkmark {
    background-color: #159656;
    border-color: #159656;
  }

  /* Create the checkmark/indicator (hidden when not checked) */
  .checkmark:after {
    content: "";
    position: absolute;
    display: none;
  }

  /* Show the checkmark when checked */
  .checkbox-container input:checked ~ .checkmark:after {
    display: block;
  }

  /* Style the checkmark/indicator */
  .checkbox-container .checkmark:after,
  i.tree-checkbox.checked:after {
    left: 7px;
    top: 3px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    box-sizing: inherit;
  }

  .tree-checkbox.checked:after {
    border: solid white;
    border-width: 0 3px 3px 0;
    left: 7px;
    top: 3px;
    height: 10px;
    width: 5px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.filter-tag {
    display: inline-block;
    max-width: 150px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-right: 3px;
}

.badge-clear {
    font-size: 125%;
    padding: 0;
    cursor: pointer;
}

.filters-badge {
    margin-right: 5px;
    margin-bottom: 2px;
    border: 1px solid var(--is-text-grey);
}

.btn-phone-contact:focus {
    color: var(--is-white) !important;
}

@media (min-width: 992px) {
    .offset-lg-2 {
        margin-left: 16.666667%;
    }
}


/* NETWORK */

.navbar-brand svg {
    width: 100%;
}