@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

@font-face {
    font-family: "CANOPEE";
    src: url("../fonts/CANOPEE/DESKTOP/Canopee.otf");
}

@font-face {
    font-family: "Roslindale Display Condensed";
    src: url("../fonts/Roslindale_Desktop/RoslindaleDisplayCondensed-Regular.otf")
}

:root {
    --main-font-family: "CANOPEE";
    --secondary-font-family: "Roslindale Display Condensed";
    --main-background-color: #489191; 
    --main-height: 0px;
}

*::before, 
*::after, 
* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
    overscroll-behavior: none;
}

html {
    font-size: 62.5%;
    height: 100%;
    scrollbar-width: none !important;
    background-color: white;
    overscroll-behavior: none;
}

body {
    font-family: var(--secondary-font-family);
    font-weight: 400;
    line-height: 1.4;
    color: white;
    background-color: white;
    font-kerning:none;
}
html, body {
    min-height: var(--main-height)
}

img {
    display: block;
    max-width: 100%;
}
a {
    color: white;
    text-decoration: none;
}
.container {
    max-width: 1440px;
    padding: 0 1rem;
    margin: 0 auto;
}
h1 {
    text-transform: uppercase;
    letter-spacing: -.5px;
}
._ {
    height: var(--main-height);
}
.active {
    text-decoration: line-through;
}
main {
    position: relative;
    z-index: 1;
    height: var(--main-height);
    background-image: url("../images/jesus-8853521_1920.png");
    background-size: cover;
}
main::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: black;
    opacity: .6;
}
header {
    height: 0;
    min-height: 15vh;
    opacity: 1;
    transition: all 850ms ease;
    color: white;
}
nav {
    height: 100%;
}
.navbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nav-logo > a {
    color: white;
}
.nav-logo > a > h1 {
    font-size: 3.5rem;
    overflow: hidden;
}
.nav-logo > a > h1 > span {
    position: relative;
    top: 10rem;
    transition: top 650ms ease;
}
.nav-toggle {
    display: flex;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
}
.nav-toggle > ion-icon {
    position: relative;
    /* top: 10rem; */
    font-size: 3rem;
    transition: top 650ms ease-in-out;
    color: white;
}

.nav-menu {
    top: 0;
    left: 0;
    background-color: transparent;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: -1;
    font-family: var(--main-font-family);
}
.nav-menu > .nav-menu-content {
    position: relative;
    height: 100%;
}
.nav-menu > .nav-menu-content > .nav-menu-list {
    position: absolute;
    top: 0;
    left: 0;
    clip-path: circle(0%);
    width: 100%;
    height: 100%;
    background-color: var(--main-background-color);
    transition: clip-path 1s ease-out;
    color: white;
}
.nav-menu > .nav-menu-content > .nav-menu-list > ul {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
    justify-content: center;
    align-items: center;
    list-style: none;
}
.nav-menu > .nav-menu-content > .nav-menu-list > ul > li {
    overflow: hidden;
}
.nav-menu > .nav-menu-content > .nav-menu-list > ul > li > a {
    font-size: 3.5rem;
    position: relative;
    top: 5rem;
    transition: top 650ms ease-out;
}
.close-menu {
    height: 10rem;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    align-content: center;
    overflow: hidden;
}
.close-menu > ion-icon {
    font-size: 3.5rem;
    position: relative;
    top: 5rem;
    transition: top 650ms ease-out;
    cursor: pointer;
}

.preloader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 4;
    background-color:#489191;
    color: white;
    clip-path: circle(100%);
    transition: clip-path 1s ease;
    font-family: var(--main-font-family);
}
.preloader > .content {
    height: 100%;
    display: grid;
    place-content: center;
    line-height: 1;
}
.text-header,.sub-header {
    text-align: center;
    overflow: hidden;
}

.text-header > h1 {
    font-size: 6rem;
}
.text-header > h1 > span {
    position: relative;
    top: 20rem;
    transition: top 850ms ease;
}
.sub-header > h3 {
    font-size: 2.4rem;
    position: relative;
    top: 20rem;
    transition: top 850ms ease;
}
main {
    transform: scale(.3);
    transition: transform 850ms linear;
    font-family: var(--main-font-family);
}
.intro {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.intro > h3 {
    font-size:2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 50%;
    margin: auto;
  
}
._ {
    height: var(--main-height);
}
.hero {
    height: var(--main-height);
    color: #489191;
    font-family: var(--main-font-family);
}
.hero-header {
    display: flex;
    justify-content: center;
    gap: .5rem;
    color: #489191;
    overflow: hidden;
    height: 15rem;
    align-items: center;
}

.hero-header > h1 {
    font-size: 3rem;
    position: relative;
}
/* .hero-header > h1:first-child {

}
.hero-header > h1:last-child {
    
} */
 .hero-slogan {
    height: calc(100% - 15rem);
    align-content: center;
    padding: 0 2rem;
 }
 .hero-slogan > h1 {
    text-align: center;
    font-size: 3rem;
    line-height: 1;
 }
 .hero-slogan > h1 > span {
    display: inline-block;
    margin: 0 2px;
    opacity: 0;
 }

 .t {
    height: calc(var(--main-height));
    color: #489191;
    font-family: var(--main-font-family);
 }
 .t > .t-marker {
    position: sticky;
    top: 0;
    overflow: hidden;
    height: 40rem;
    align-content: center;
 }
 
 .t > .t-marker > .t-num {
    font-size: 5rem;
    text-align: center;
    position: relative;
    top: 0rem;
    perspective: 100px;
    transform: scale(3.5);
    transition: top 650ms ease-in-out, transform 650ms ease;
    will-change: top, font-size;
 }
 .t > .t-marker > .t-card {
    margin: auto;
    max-width: 95%;
    height: calc(50% - 5rem);
    align-content: center;
    opacity: 0;
    transition: opacity 250ms ease;
 }
 .t > .t-marker > .t-card > h1 {
    text-align: center;
    position: relative;
    border: 2px solid;
    padding: 1.5rem;
    line-height: 1;
    font-weight: 100;
 }
 

 #follow-up {
    background-color: #489191;
    height: calc(var(--main-height) * 2);
    padding-top: 15rem;
 }
.c-up {
    height: 100%;
    display: grid;
}
.c-up > .c-header {
    display: flex;
    flex-direction: column;
    line-height: .9;
    /* grid-row-gap: .5rem; */
    font-size: 5.5rem;
    align-items: center;
    position: sticky;
    top: 3rem;
    height: min-content;
    z-index: 1;
    will-change: transform;
}
.c-up > .c-header > h1 {
    overflow: hidden;
    font-family: var(--main-font-family);
    /* border: 1px solid red; */
}
.c-up > .c-header > h1 > span {
    position: relative;
    top: 20rem;
    transition: top 650ms ease;
}
.c-logo {
    text-align: center;
    display: grid;
    place-content: center;
    place-items: center;
    /* align-content: center; */
    z-index: 2;
    position: relative;
    background-color: #489191;
    overflow: hidden;
    /* max-width: calc(100% - 3.5rem); */
    /* margin: auto; */
    /* height: min-content; */
}
.c-logo > a {
    height: 100%;
    display: inline-block;
    position: relative;
}
.c-logo > a > ion-icon {
    font-size: 20rem;
}

#about-key {
    height: calc(var(--main-height));
    background-color: #489191;
}
.about-key {
    height: 100%;
    position: relative;
}
.star-icon {
    position: absolute;
}
.star-icon:nth-child(1) {
    top: 25%;
    left: calc(100% - 50px);
}
.star-icon:nth-child(2) {
    top: 5%;
    left: 20%;
}
.star-icon:nth-child(3) {
    top: 80%;
    left: 5%;
}
.star-icon:nth-child(4) {
    top: 90%;
    left: 85%
}
.star-icon > ion-icon {
    font-size: 2rem;
}
.about-quote {
    height: 100%;
    display: grid;
    place-content: center;
}
.about-quote > h1 {
    text-align: center;
    font-size: 2rem;
}
#testimonial-3 {
    /* background: var(--main-background-color); */
    position: relative;
    height: calc(var(--main-height) * 2);
    margin-top: 20rem;
}
#testimonial-3::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: black;
    opacity: .8;
    z-index: 2;
}
#testimonial-3.container {
    margin: 20rem 0 0;
    padding: 0;
}
#testimonial-3 > video {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#testimonial-3 > .overflow {
    background: white;
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    max-width: 75%;
    margin: 0 auto;
    height: 100%;
    transform: translateX(-50%);
    background-color: white;
    z-index: 3;
    color: #489191;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}
#testimonial-3 > .overflow > .card {
    display: grid;
    gap: 2rem;
    place-content: center;
    place-items: center;
    padding: 0 1rem;
}

#testimonial-3 > .overflow > .card > h1 {
    font-size: 3rem;
}
#testimonial-3 > .overflow > .card > .t-card > h1 {
    text-align: center;
    line-height: 1;
    letter-spacing: 1px;
}

footer {
    height: calc(var(--main-height) / 2);
    margin-top: 20rem;
    background: #489191;
    color: white;
    border-top-right-radius: 50px;
    border-top-left-radius: 50px;
    font-family: var(--main-font-family);
}
footer > h1 {
    font-size: 3rem;
    letter-spacing: -1px;
    text-align: center;
    height: 10rem;
    align-content: center;
    font-weight: 100;
}
.footer-content {
    display: flex;
    justify-content: space-between;
    font-size: 1.3rem;
    font-weight: 100;
    padding: 2rem;
}
.contact-value > h2 {
    text-align: end;
    font-weight: 100;
}
.contact-key > h2 {
    font-weight: 100;
}
.contact-value > h2:nth-child(2) {
    font-size: 1.5rem;
}
footer > h2 {
    text-align: center;
    font-weight: 100;
    align-content: end;
    height: calc(100% - 250px);
    
}

@media (max-width: 768px) {
   .c-up > .c-header {
    font-size: 4rem;
   }
   #testimonial-3 > .overflow > .card > .t-card > h1 {
    font-size: 1.5rem;
   }
}


@media (max-height: 500px) {
  
    footer {
        height: auto;
    }
}