/* ABOUT */
h2 {
    width: 100%;
    font-size: var(--fs-30);
    font-weight: 600;
    color: var(--blue-accent);
    line-height: 1;
    text-transform: uppercase;
    margin-bottom: 20px;
    text-align: center;
}
section {
    scroll-margin-top: 44px;
}
.about {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
    background-color: var(--gray-light);
}
.about-hero {
    position: relative;
    width: 100%;
    height: calc(100svh - 44px);
    color: var(--gray-light);
}
.about-hero > img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    object-position: center;
    -o-object-position: center;
    filter: brightness(0.7) grayscale(0.3);
}
.about-hero_left, .about-hero_right {
    position: absolute;
    height: 100%;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 5vmin;
}
.about-hero_left {
    width: 60%;
    left: 0;
}
.about-hero_left > h1 {
    padding-left: 2vmin;
    margin-bottom: 2vmin;
    font-size: 7vmin;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
    border-left: 10px solid var(--blue-accent);
}
.about-hero_left > h1::first-letter {
    text-transform: uppercase;
}
.about-hero_left > h1 > small {
    font-size: 3vmin;
}
.about-hero_left > p {
    font-size: 2.5vmin;
    font-family: Calibri, sans-serif;
}
.about-hero_right { 
    width: 40%;
    right: 0;
}
.about-hero_right > ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5vmin;
}
.about-hero_right > ul > li > a {
    color: var(--gray-light);
    font-size: 3vmin;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: color 200ms;
}
.about-hero_right > ul > li > a > i {
    color: var(--gray-light);
    font-size: 5vmin;
    margin-bottom: 5px;
    transition: color 200ms;
}
.about-hero_right > ul > li > a:hover, .about-hero_right > ul > li > a > i:hover {
    color: var(--gray-mid);
}
.about-hero > a {
    background-color: var(--blue-accent);
    color: var(--gray-light);
    width: 25px;
    height: 25px;
    padding-top: 2px;
    font-size: 14px;
    position: absolute;
    z-index: 1;
    bottom: 3vmin;
    left: 5vmin;
    display: flex;
    justify-content: center;
    align-items: center;
}
#about-chart {
    padding: 40px 5vmin;
    color: var(--blue-accent);
}
#about-chart > ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 1fr;
    gap: 5vmin;
    text-align: center;
}
#about-chart > ul > li {
    padding: 5vmin;
    justify-self: center;
    width: 100%;
    background-color: #fff;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
#about-chart > ul > li > i {
    font-size: var(--fs-28);
}
#about-chart > ul > li > h4 {
    margin: 10px 0;
    font-size: var(--fs-32);
    font-weight: 500;
}
#about-chart > ul > li > p {
    text-transform: uppercase;
}
#about-approach {
    display: flex;
    flex-wrap: wrap;
    background-color: var(--blue-accent);
    color: var(--gray-light);
}
#about-approach > .left {
    width: 40%;
}
#about-approach > .left > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    object-position: center;
    -o-object-position: center;
}
#about-approach > .right {
    width: 60%;
    padding: 0 5vmin;
    font-family: Calibri, sans-serif;
}
#about-approach > .right > h2 {
    text-align: left;
    font-family: "Oswald", sans-serif;
    margin-top: 5vmin;
    color: var(--gray-light);
}
#about-approach > .right > p {
    margin-bottom: 10px;
    font-size: var(--fs-20);
    text-align: justify;
}
#about-approach > .right > p:last-of-type {
    margin-bottom: 5vmin;
}
#about-team > h2 {
    padding: 0 5vmin;
    padding-top: 40px;
}
.team-slider {
    position: relative;
}
.team-slider_item {
    width: 200px;
    aspect-ratio: 3 / 4;
    text-align: center;
    background-color: #fff;
    margin: 0 20px 30px 20px;
    padding: 20px;
    padding-top: 0;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.team-slider_item > img {
    width: 100%;
    border-radius: 50%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    object-position: top;
    padding: 20px;
}
.team-slider_item > h5 {
    text-transform: capitalize;
    font-size: var(--fs-20);
}
.team-slider_item > p {
    font-family: Calibri, sans-serif;
    margin: 10px 0;
}
.team-slider_item > ul {
    display: flex;
    justify-content: center;
    gap: 10px;
}
.team-slider_item:hover ul {
    display: flex;
}
.team-slider_item > ul > li {
    background-color: var(--gray-light);
    padding: 10px;
    transition: background 200ms;
    cursor: pointer;
}
.team-slider_item > ul > li:hover {
    background-color: var(--gray-mid);
}
.team-slider_item > ul > li > a {
    color: var(--blue-accent);
}
.team-slider .slick-dots {
    display: flex;
    justify-content: center;
    gap: 1vmin;
    margin-bottom: 40px;
}
.team-slider .slick-dots li button {
    font-size: 0;
    width: 8px;
    height: 8px;
    padding: 0;
    border-radius: 50%;
    border: 0;
    background-color: var(--gray-mid);
    transition: background 200ms;
}
.team-slider .slick-dots li button:hover {
    background-color: var(--blue-mid);
}
.team-slider .slick-dots .slick-active > button {
    background-color: var(--blue-transparent);
}
#about-reviews {
    padding: 40px;
}
.reviews-slider {
    position: relative;
    background-color: #fff;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.reviews-slider_item {
    padding: 8vmin;
    display: flex !important;
    flex-wrap: wrap;
    flex-direction: column;
    background-image: url('../img/about/white-map.png');
    background-position: center right;
    background-size: contain;
    background-repeat: no-repeat;
}
.reviews-slider_item > h4 {
    display: flex;
    font-size: var(--fs-30);
    text-transform: capitalize;
    color: var(--blue-accent);
}
.reviews-slider_item > h4 > i {
    align-self: flex-start;
    font-size: var(--fs-20);
    margin-right: 1vmin;
}
.reviews-slider_item > ul {
    display: flex;
    flex-direction: row;
    gap: 2px;
    margin: 2vmin 0;
}
.reviews-slider_item .fa-solid.fa-star, .reviews-slider_item .fa-regular.fa-star {
    color: #ffe600;
}
.reviews-slider_item > p {
    font-family: Calibri, sans-serif;
    font-size: var(--fs-18);
    width: 60%;
}
.reviews-slider .slick-prev, .reviews-slider .slick-next {
    position: absolute;
    z-index: 1;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--blue-dark);
    color: #fff;
    padding: 10px;
    cursor: pointer;
    transition: background 200ms;
}
.reviews-slider .slick-prev:hover, .reviews-slider .slick-next:hover {
    background-color: var(--blue-accent);
}
.reviews-slider .slick-prev {
    left: -2vmin;
}
.reviews-slider .slick-next {
    right: -2vmin;
}
@media screen and (max-width: 950px) {
    .about-hero_left, .about-hero_right {
        padding: 4vmin;
    }
    .about-hero_right {
        align-items: flex-end;
    }
    #about-approach > .left {
        width: 100%;
        max-height: 200px;
    }
    #about-approach > .right {
        width: 100%;
    }
    #about-team .team-slider_item {
        aspect-ratio: unset;
        margin: 0 15px 30px;
    }
}
@media screen and (max-width: 750px) {
    .about-hero_left {
        padding-right: 0;
    }
    #about-approach > .left {
        display: none;
    }
    .reviews-slider_item > p {
        width: 80%;
    }
}
@media screen and (max-width: 600px) {
    .about-hero_left, .about-hero_right {
        width: 100%;
        left: 0;
        height: auto;
    }
    .about-hero_left {
        padding: 4vmin;
        top: 30%;
    }
    .about-hero_left > h1 { 
        font-size: var(--fs-40);
    }
    .about-hero_left > p {
        font-size: var(--fs-18);
    }
    .about-hero_right {
        bottom: 30%;
        align-items: flex-start;
    }
    .about-hero_right > ul {
        grid-template-columns: repeat(4, 1fr);
    }
    .about-hero_right > ul > li > a {
        font-size: var(--fs-18);
    }
    .about-hero_right > ul > li > a > i {
        font-size: var(--fs-24);
    }
    #about-chart > ul {
        grid-template-columns: repeat(2, 1fr);
    }
    #about-chart > ul > li > i {
        font-size: var(--fs-22);
    }
    #about-chart > ul > li > h4 {
        font-size: var(--fs-26);
    }
    #about-approach > .right > p {
        font-size: var(--fs-18);
    }
    #about-reviews {
        padding: 20px;
        margin-bottom: 20px;
    }
    .reviews-slider_item > p {
        width: 90%;
    }
    .reviews-slider .slick-prev, .reviews-slider .slick-next {
        padding: 8px;
    }
}
@media screen and (max-width: 450px) {
    .about-hero_left > h1 {
        border-left-width: 5px;
    }
    #about-approach > .right > h2 {
        font-size: var(--fs-26);
    }
    .reviews-slider_item {
        padding: 8vmin 5vmin;
    }
    .reviews-slider_item > h4 {
        font-size: var(--fs-26);
    }
    .reviews-slider_item > h4 > i {
        font-size: 16px;
    }
    .reviews-slider_item > p {
        width: 100%;
    }
    .reviews-slider .slick-prev {
        left: -4vmin;
    }
    .reviews-slider .slick-next {
        right: -4vmin;
    }
}
@media screen and (max-width: 400px) {
    #about-chart > ul {
        grid-template-columns: repeat(1, 1fr);
    }
}
@media (prefers-color-scheme: dark) {
    #about-chart {
        background-color: var(--blue-accent);
    }
    #about-chart > ul > li {
        background-color: var(--blue-dark);
    }
    #about-chart > ul > li > i,
    #about-chart > ul > li > h4,
    #about-chart > ul > li > p {
        color: var(--gray-accent);
    }
    #about-approach {
        background-color: var(--blue-dark);
    }
    #about-team {
        background-color: var(--blue-accent);
    }
    #about-team > h2 {
        color: var(--gray-accent);
    }
    .team-slider_item {
        background-color: var(--blue-dark);
    }
    .team-slider_item > h5,
    .team-slider_item > p {
        color: var(--gray-accent);
    }
    .team-slider_item > ul > li {
        background-color: var(--blue-accent);
    }
    .team-slider_item > ul > li:hover {
        background-color: var(--blue-mid);
    }
    .team-slider_item > ul > li > a {
        color: var(--gray-accent);
    }
    .team-slider .slick-dots {
        margin-bottom: 0;
        padding-bottom: 40px;
    }
    .team-slider .slick-dots .slick-active > button {
        background-color: var(--blue-mid);
    }
    #about-reviews {
        background-color: var(--blue-accent);
    }
    #about-reviews > h2 {
        color: var(--gray-accent);
    }
    .reviews-slider {
        background-color: var(--blue-dark);
    }
    .reviews-slider_item {
        background-color: var(--blue-dark);
        background-blend-mode: color-burn;
    }
    .reviews-slider .slick-prev, .reviews-slider .slick-next {
        background-color: var(--blue-mid);
    }
    .reviews-slider .slick-prev:hover, .reviews-slider .slick-next:hover {
        background-color: var(--blue-light);
    }
    .reviews-slider_item > h4,
    .reviews-slider_item > p {
        color: var(--gray-accent);
    }
}