/** @format */

@import "bootstrap/bootstrap";
@import "variables";
@import "header";
@import "footer";
@import "homepage";
@import "defaultPage";
@import "faqs";
@import "contact";
@import "dashboard";
@import "components/buttons";
@import "components/badge";
@import "components/card";
@import "components/pagination";
@import "components/lists";
@import "components/photoGallery";
@import "components/stats";
@import "components/icons";
@import "components/slick";
@import "components/blockquote";
@import "components/input";
@import "components/modal";
@import "components/breadcrumbs";
@import "components/table";
@import "components/wizard";
@import "components/chosen";

.visible--xs {
    display: none;
    @include media-breakpoint-down(sm) {
        display: block;
    }
}
.hidden--xs {
    @include media-breakpoint-down(sm) {
        display: none;
    }
}

img {
    @include img-fluid();
}

p {
    font-size: 18px;
    line-height: 1.5em;
    color: $navy;
}
a {
    color: $black;
    transition: color 300ms ease-in-out, background-color 300ms ease-in-out;
    &:hover {
        color: $black;
    }
}

b,
strong {
    font-weight: 700;
}
.font-medium {
    font-weight: 500;
}

.faintBlue {
    background-color: #ebeeef;
}

.fainterBlue {
    background-color: $ultralight_grey;
}
body {
    font-family: $primaryFont;
    -webkit-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden;
    background-color: $white;
    font-size: 18px;
    line-height: 1.5em;
}
h1 {
    font-size: 56px;
    line-height: 1.2em;
    color: $navy;
}
h2 {
    font-size: 36px;
    line-height: 1.2em;
    color: $navy;
}
h3 {
    font-family: $primaryFont;
    font-size: 26px;
    font-weight: bold !important;
    line-height: 1.2em;
    color: $navy;
}
main {
    position: relative;
}
.roundedCorner {
    border-top-left-radius: 2em;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

ul {
    &.inlineList {
        list-style: none;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: row;
        gap: 0.5em;
    }
}

h2 {
    font-size: 2.5em;
    line-height: 1.2em;
    @include media-breakpoint-down(md) {
        font-size: 2em;
    }
}
ul.features {
    padding-left: 1em;
    li {
        margin-bottom: 0.75em;
    }
}

.text-sm {
    font-size: 15px;
}
.text-xs {
    font-size: 14px;
}
.w-full {
    width: 100%;
}
.min-h-50 {
    min-height: 50vh;
}
.min-h-75 {
    min-height: 75vh;
}
.border-round {
    border-radius: 0.5em;
    overflow: hidden;
}
.border-round-sm {
    border-radius: 0.25em;
    overflow: hidden;
}
.shadow--bottom {
    box-shadow: 0px 3px 1px #00000029;
}

.section--underlaps {
    position: relative;
    z-index: 3;
    margin-top: -14em;
    padding-top: 10em;
}

.highlight {
    font-weight: 600;
    position: relative;
    // z-index: 10;
    // &:after {
    //     content: " ";
    //     background-color: rgba($green, 0.25);
    //     position: absolute;
    //     left: -2px;
    //     right: -2px;
    //     bottom: 0;
    //     height: 8px;
    //     z-index: -1;
    // }
}
section.default,
section.kindness,
section.partners {
    padding-bottom: 5em;
    padding-top: 4em;
}

section.intro {
    padding-bottom: 5em;
    padding-top: 5em;
    h2 {
        margin-bottom: 0.5em;
    }
}
section.contact {
    margin-top: -8em;
    position: relative;
    z-index: 10;
    margin-bottom: 5em;
}

.br_5 {
    border-radius: 0.5em;
}

ul {
    &.checklist {
        list-style: none;
        padding-left: 0;
        margin: 0;
        li {
            position: relative;
            padding-left: 1.5em;
            margin-bottom: 0.5em;
            &:before {
                content: "\2713";
                position: absolute;
                left: 0;
                top: 0;
                color: $green;
                font-weight: bold;
            }
        }
    }
}
.partners {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    li {
        width: 33.3333%;
        padding: 0.25em;
    }
}
.press__title {
    @include media-breakpoint-down(md) {
        margin-top: 1.5em;
    }
    @include media-breakpoint-up(md) {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
    }
}
.pressSlider {
    position: relative;
    padding-top: 0;
    @include media-breakpoint-up(md) {
        margin-top: 4em;
        margin-left: 36%;
    }
    .pressSlide {
        padding: 0.375em;
        img {
            opacity: 0.5;
        }
        &.slick-current {
            img {
                opacity: 1;
            }
        }
    }
    .slick-list {
        padding: 0 20% 0 0 !important;
    }
}
.globalProjects {
    @include media-breakpoint-down(md) {
        .row {
            flex-direction: column-reverse;
            .gradient--overlay {
                &:before {
                    background: linear-gradient(
                        0deg,
                        #22293c 0%,
                        rgba(34, 41, 60, 0) 60%
                    ) !important;
                }
            }
            .p--3 {
                padding: 2em 2em 3em 2em !important;
            }
        }
    }
}
.kindnessCounter--wrap {
    @include media-breakpoint-down(lg) {
        text-align: center;
    }
}
.kindnessCounter {
    display: inline-block;
    @include media-breakpoint-down(lg) {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 3em;
    }

    &--header {
        display: flex;
        justify-content: space-between;
        span {
            font-size: 0.7em;
            font-weight: bold;
        }
        i {
            font-size: 0.6em;
        }
    }
    &--counter {
        font-size: 2em;
        @include media-breakpoint-up(md) {
            font-size: 3em;
        }
        font-weight: 700;
        line-height: 1em;
        display: flex;
        gap: 0.125em;

        span {
            padding: 0.125em 0 0 0;
            display: flex;
            min-width: 30px;

            @include media-breakpoint-up(md) {
                min-width: 50px;
            }
            align-items: center;
            justify-content: center;
            background-color: $white;
            border-radius: 0.25em;
        }
    }
}
.speakers {
    overflow: hidden;
}
.speakersSlider {
    @include media-breakpoint-up(md) {
        position: absolute !important;
        top: 0;
        right: 0;
        left: 0;
        padding-top: 0;
        margin-top: 0;
        margin-left: 50%;
    }
    .speakerSlide {
        padding: 0.375em;
    }
    .slick-list {
        padding: 0 15% 0 0 !important;
    }
}
.speakersSliderControl {
    padding-left: 0.5em;
    @include media-breakpoint-up(md) {
        margin-left: 50%;
        margin-top: 3.5em !important;
    }
}

.pressSamples {
    margin-top: 2em;
    margin-bottom: 5em;
    .col-md-6:nth-of-type(even) {
        @include media-breakpoint-up(md) {
            margin-top: 5em;
        }
    }
    .card {
        img {
            max-width: 200px;
            max-height: 100px;
        }
    }
}

.kindnessCool {
    font-size: 2.5em;

    @include media-breakpoint-up(md) {
        font-size: 3.5em;
    }
    line-height: 1.2em;
    font-weight: 500;
    text-align: center;
    img {
        height: 46px;
    }
    .text--light__teal {
        text-decoration: underline;
        font-weight: normal;
    }
}

.form {
    .form__item {
        input,
        textarea {
            background-color: $green_lightest;
            display: block;
            width: 100%;
            margin-bottom: 1em;
            border: none;
            border-radius: 0.5em;
            padding: 1em;
            transition: background-color 300ms ease-in-out;
            box-shadow: 0px 3px 1px #00000029;

            &:focus {
                background-color: $white;
            }
        }
    }
    &--lightGrey {
        .form__item {
            input,
            textarea {
                background-color: $grey_lightest;
            }
        }
    }
}

figure {
    margin-bottom: 1em;
    img {
        margin-bottom: 0.75em;
    }
    figcaption {
        font-style: italic;
    }
}

.transition {
    transition-property: all;
}

.duration-300 {
    transition-duration: 300ms;
}

.ease-out {
    transition-timing-function: ease-out;
}

.transform {
    transform: translateX(0) translateY(0) rotate(0) skewX(0) skewY(0) scaleX(1)
        scaleY(1);
}

.opacity-0 {
    opacity: 0;
}

.opacity-100 {
    opacity: 1;
}

.scale-95 {
    transform: scale(0.95);
}

.scale-100 {
    transform: scale(1);
}

.sticky {
    position: sticky;
    top: 1em;
}
