/* ------------------------------------------------ */
/* html elements defaults */
/* ------------------------------------------------ */
html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

*,
*:before,
*:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}

body:not(.home) header {
    height: 140px !important;
    min-height: 140px;
    max-height: 140px;
}
body:not(.home) header .media img, 
body:not(.home) header .media picture, 
body:not(.home) header .media video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}
body:not(.home) header nav .brand .logo {
    height: 90px;
}
body:not(.home) header nav {
    padding: 25px 36px;
}
body:not(.home) footer {
    height: auto;
    min-height: 228px;
    padding: 0;
}
@media (max-width: 1199.98px) {
	body:not(.home) footer .partners {
		margin-top: 0;
	}
}
body:not(.home) h1 {font-size:38px;}
body:not(.home) h3 {font-size: 30px;}
body:not(.home) .wrapper .section a {
    color: #cc4f51 !important;
}
body:not(.home) svg#shapes-header {
    display: none;
}

/* ------------------------------------------------ */
/* custom layouts */
/* ------------------------------------------------ */
#example-navigation {
    position: absolute;
    height: 128px;
    z-index: 2;
}

#example-navigation .row {
    align-items: center;
}

#example-navigation .links {
    height: 56px;
}

#example-navigation .row > div.logo {
    padding: 24px 0;
}
#example-navigation #logo {
    height: 128px
}

#example-navigation nav li {
    display: inline-block;
}

#example-navigation nav li + li {
    margin-left: 24px;
}

#example-navigation nav li a {
    transition: .5s all cubic-bezier(0.34, 0, 0, 1);
    padding: 8px;
    color: white;
    font-size: 24px;
    text-decoration: none;
}

#example-navigation nav li a:hover {
    opacity: .6;
}

#example-navigation hr {
    background: white;
    opacity: .2;
}

.container-fluid quote,
.container quote {
    position: relative;
    display: block;
    margin: 16px 0 24px;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1;
}

.container-fluid quote::before,
.container quote::before {
    content: "\201C";
    position: absolute;
    top: 0px;
    left: -12px;
    color: hsl(0, 0%, 90%);
    font-size: 80px;
    z-index: -1;
}

.container-fluid quote::after,
.container quote::after {
    content: "\201D";
    position: absolute;
    bottom: -64px;
    right: -12px;
    color: hsl(0, 0%, 90%);
    font-size: 80px;
    z-index: -1;
}

/* ------------------------------------------------ */
/* cards */
/* ------------------------------------------------ */
.drop-shadow, 
.card {
    -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.04), 0 8px 16px rgba(0, 0, 0, 0.04);
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.06), 0 8px 20px rgba(0, 0, 0, 0.06);
}

.card {
    margin: 15px 0;
    border-radius: 3px;
    overflow: hidden;
}

.card img {
    width: 100%;
    height: auto;
}

.card .content {
    padding: 15px;
}

.card .placeholder {
    width: 100%;
    height: 156px;
    background: #f5f5f5;
    border-bottom: 1px solid #e6e6e6;
}

.card .placeholder img {
    display: none;
}


/* ------------------------------------------------ */
/* carousel layout */
/* ------------------------------------------------ */
/* carousel layout - general */
/* ------------------------------------------------ */
.e-anim .carousel {
    overflow: hidden;
}

.e-anim .carousel .carousel-inner .carousel-item .fill {
    background-position: center;
    background-size: cover !important;
}

/* ------------------------------------------------ */
/* carousel layout - indicators */
/* ------------------------------------------------ */
.e-anim .carousel .carousel-indicators.left,
.e-anim .carousel .carousel-indicators.right {
    top: 0;
    width: 24px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}

.e-anim .carousel .carousel-indicators.left {
    left: 0;
    margin: 0 0 0 24px;
}

.e-anim .carousel .carousel-indicators.right {
    left: auto;
    right: 0;
    margin: 0 24px 0 0;
}

.e-anim .carousel .carousel-indicators li {
    width: 56px;
}

.e-anim .carousel .carousel-indicators.left li,
.e-anim .carousel .carousel-indicators.right li {
    margin-top: 3px;
    height: 56px;
    width: 3px;
    border: 0;
    ;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
}

.e-anim .carousel .carousel-indicators.left li.active,
.e-anim .carousel .carousel-indicators.right li.active {
    width: 5px;
}

.e-anim .carousel .carousel-indicators:not(.left):not(.right) li.active {
    height: 5px;
}

/* ------------------------------------------------ */
/* carousel layout - control */
/* ------------------------------------------------ */
.e-anim .carousel-control-prev-icon,
.e-anim .carousel-control-next-icon {
    width: 64px;
    height: 64px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 64 64'%3e %3Cg id%3D%22Group%22 transform%3D%22translate%2830.500000%2C 32.000000%29 rotate%28-270.000000%29 translate%28-30.500000%2C -32.000000%29 translate%2813.500000%2C 22.500000%29%22 fill%3D%22%23FFFFFF%22%3E%0A            %3Cpolygon id%3D%22Path%22 points%3D%2234 2.43986055 17 19 0 2.43986055 2.50466667 0 17 14.1209221 31.4953333 6.93358669e-15%22%3E%3C%2Fpolygon%3E%0A        %3C%2Fg%3E%3c/svg%3e");
}

.e-anim .carousel-control-next-icon {
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1);
}

/* ------------------------------------------------ */
/* carousel layout - scroll target */
/* ------------------------------------------------ */
.e-anim .carousel .scroll-down {
    position: absolute;
    right: 0;
    bottom: 24px;
    left: 0;
    z-index: 25;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.e-anim .carousel .scroll-down .trigger {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: white;
    width: 64px;
    height: 64px;
    border-radius: 32px;
}

.e-anim .carousel .scroll-down .trigger::after {
    content: "";
    width: 100%;
    height: 100%;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 64 64'%3e %3Cpolygon id%3D%22Path%22 fill%3D%22%23000000%22 points%3D%2249 26.4398605 32 43 15 26.4398605 17.5046667 24 32 38.1209221 46.4953333 24%22%3E%3C%2Fpolygon%3E%3c/svg%3e");
    /* background-size: ; */
}

/* ------------------------------------------------ */
/* carousel layout - inner - item */
/* ------------------------------------------------ */
.e-anim .carousel .carousel-inner,
.e-anim .carousel .carousel-inner .carousel-item,
.e-anim .carousel .carousel-inner .carousel-item .fill {
    height: 100%;
}

/* ------------------------------------------------ */
/* carousel layout - slide content */
/* ------------------------------------------------ */
.e-anim .carousel .carousel-item .container-fluid {
    position: absolute;
    color: white;
    height: 100%;
    padding: 28px;
}

.e-anim .carousel .carousel-item .container-fluid > div {
    height: 100%;
}

.e-anim .carousel .carousel-item .container-fluid .slide-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
}

.e-anim .carousel .carousel-item .container-fluid .slide-content {
    margin: auto;
}

@media (min-width: 1200px) {
    .container-fluid quote:before,
    .container quote:before {
        padding: 16px 0;
    }
}