@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-Book.otf') format('opentype');

    font-weight: normal;

    font-style: normal;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-RegularItalic.otf') format('opentype');

    font-weight: normal;

    font-style: italic;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-Bold.otf') format('opentype');

    font-weight: bold;

    font-style: normal;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-BoldItalic.otf') format('opentype');

    font-weight: bold;

    font-style: italic;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-Light.otf') format('opentype');

    font-weight: 300;

    font-style: normal;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-LightItalic.otf') format('opentype');

    font-weight: 300;

    font-style: italic;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-Medium.otf') format('opentype');

    font-weight: 500;

    font-style: normal;

}

@font-face {

    font-family: 'Gotham';

    src: url('../fonts/Gotham/Gotham-MediumItalic.otf') format('opentype');

    font-weight: 500;

    font-style: italic;

}



.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start) {

    transform: translateX(-100%)

}



.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end) {

    transform: translateX(100%)

}



body{

    border-color: var(--bs-primary);

}

body, body * {

    -webkit-transition: all 300ms ease;

    -moz-transition: all 300ms ease;

    -ms-transition: all 300ms ease;

    -o-transition: all 300ms ease;

    transition: all 300ms ease;

}

.btn, .btn span, .btn i {

    will-change: background-color, color;

}



.imi-header-logo {

    max-width: 100px;

}

.imi-header-btn {

    padding-left: 56px;

}

.imi-header-btn,

button.btn.btn-outline-primary {

    min-height: 58px;

}

button.btn.btn-secondary {

     min-height: 50px;

}

.imi-header-btn i {

    position: absolute;

    top: 50%;

    left: 10px;

    width: 34px;

    height: 34px;

    transform: translateY(-50%);

    line-height: 34px;

}

.collapse:not(.show) {

    display: none !important;

}



.imi-slide-content {



}





.carousel-control-prev,

.carousel-control-next {

    width: 5%;

}

.carousel-control-prev-icon,

.carousel-control-next-icon {

    position: relative;

    background-image: none;

}



.carousel-control-prev-icon i:after,

.carousel-control-next-icon i:after {

    content: '';

    background-color: #fff;

    position: absolute;

    top: 50%;

    left: 50%;

    z-index: -1;

    border-radius: 50%;

    width: 90%;

    height: 90%;

    transform: translate(-50%, -50%);

}

.imi-slide-image img {

    width: 100%;

    position: relative;

}



.imi-threeboxes-single {

    padding-top: 12rem;

}



.imi-threeboxes-heading,

.imi-threeboxes-text {

    text-decoration: none !important;

    text-decoration-line: none !important;

    text-decoration-thickness: 0 !important;

    text-decoration-color: transparent !important;

}



.imi-threeboxes-single .imi-threeboxes-text *{

    font-weight: inherit;

    color: inherit;

    font-size: inherit;

    line-height: inherit;

    margin: 0;

    padding: 0;

}





.imi-threeboxes-single:hover .imi-threeboxes-heading {

    color: var(--bs-secondary) !important;

}

.imi-threeboxes-single:hover .imi-threeboxes-text {

    max-height: 500px;

    opacity: 1;

}





a:link {

    text-decoration: none !important;

}

a.imi-threeboxes-single:hover {

    z-index: 10;

}



#servizi button.btn.btn-outline-primary {

    min-height: 80px;

}



#portfolio .card:not(:hover) .card-img-overlay {

    transform: translateY(100%);

}

#portfolio .imi-portfolio-single .ratio,

.imi-threeboxes-single .ratio {

    overflow: hidden;

}

#portfolio .card,

.imi-threeboxes-single img {

    transform: scale(1.00) !important;

}



#portfolio .card:hover,

.imi-threeboxes-single:hover img {

    transform: scale(1.05) !important;

}



.imi-portfolio-single:not(:hover) {

    z-index: 1;

}

.imi-portfolio-single {

    z-index: 10;

}

.imi-team-icons {

    max-width: 100px;

}





.text-columns {

    -webkit-column-count: 1;

    -moz-column-count: 1;

    column-count: 1;

    -webkit-column-gap: 3em;

    -moz-column-gap: 3em;

    column-gap: 3em;
	line-height: 2rem;

}





footer .imi-header-logo {

    max-width: 100px;

}





[data-animation-type]:not(.animate__animated){

    opacity: 0;

}



.btn {

    transition: background-color 300ms ease, border-color 300ms ease;

}

.btn span{

     transition: color 300ms ease;

 }