a:hover{
    text-decoration:none;
}
a:focus,
button:focus{
    outline:0;
}

.Main-Nav{
    width:auto;
}
.Main-Nav .logo{
    position: static;
    margin:auto 16px;
}
.home-page{
    padding-top:0;
}
.home-page .Header{
    position:absolute;
    background-color:transparent;
    box-shadow:none;
}
.home-page .Click-Off-Overlay{
    visibility:hidden;
    opacity:0;
}
@media only screen and (min-width: 1024px){
    .Header{
        overflow:visible;
    }
}

.Header .logo h1{
    color:#70375e;
}
.has-submenu{
    position:relative;
}
.Main-Nav .-item{
    white-space:nowrap;
}
.has-submenu .submenu{
    position:absolute;
    z-index:10;
    top:90%;
    opacity:0;
    visibility: hidden;
    background-color:#fff;
    box-shadow:0 0 7px 0 rgb(0 0 0 / 10%);
    transition:all .35s ease;
    padding:1rem;
}

.submenu a.-item{
    display:inline-block;
    white-space:nowrap;
    margin:0 0 5px 0;
    line-height:40px;
}
.has-submenu:hover  .submenu,
.has-submenu:focus .submenu,
.has-submenu:active .submenu{
    top:calc(100% + 3px);
    visibility:visible;
    opacity:1;
}
.Menu-Drawer .submenu{
    position:relative;
    max-height:0;
    padding:0 1rem;
    overflow: hidden;
    background-color:transparent;
}
.Menu-Drawer .submenu a.-item{
    font-size:1rem;
}
.Menu-Drawer .has-submenu:hover  .submenu,
.Menu-Drawer .has-submenu:focus .submenu,
.Menu-Drawer .has-submenu:active .submenu{
    max-height:1000px;
    /*padding:0.5rem;*/
}
.footer-mark span:last-of-type{
    letter-spacing: .3rem;
    font-weight:900;
}
.ion{
    font-size:1rem;
    display:inline-flex;
    align-items:center;
}
.ion-xs{
    font-size:.8rem;
}
.ion-lg{
    font-size:1.2rem;
}
.ion-2x{
    font-size:1.5rem;
}
.button:hover{
    color:#221f1f;
}
.button .ion.animate{
    transition:.3s ease-in-out;
}
.button:hover .ion.animate{
    margin-left:1rem !important;
}
.featured-book-img{
    width:100% !important;
    object-fit: cover;
}
.featured-resource__media .media-video{
    position:relative;
    width:100%;
    height:100%;
}
.featured-resource__media .media-video:hover,
.featured-resource__media .media-video:active{
    cursor:pointer;
}
.featured-resource__media .media-video::before,
.featured-resource__media .media-video::after{
    content:"";
    display:flex;
    align-items: center;
    justify-content: center;
    text-align:center;
    position:absolute;
    z-index:5;
    transition:all .4s ease-in-out;
}
.featured-resource__media .media-video::before{
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgb(0,0,0);
    opacity: .5;
}
.featured-resource__media .media-video::after{
    --size:70px;
    content:"\f488";
    font-family:"Ionicons";
    font-size:52px;
    width:var(--size);
    height:var(--size);
    border-radius:50%;
    border:4px solid;
    color:#fff;
    top:calc(50% - calc(var(--size)/2));
    left:calc(50% - calc(var(--size)/2));
    opacity:.7;
    z-index:10;
}
.featured-resource__media:hover .media-video::before{
    opacity: .6;
}
.featured-resource__media:hover .media-video::after{
    opacity:.9;
}
.featured-resource__media .media-video::after:hover{
    transform:scale(1.3);
}
.floating-btn{
    position:fixed;
    bottom:0;
    right:0;
    margin:2rem;
    z-index:10000;
    display:flex;
    align-items:center;
    justify-content: center;
    font-size:.8rem;
    background-color:var(--dark);
    color:#fff;
    border-radius:25px;
    /*width:60px;*/
    padding:0 1rem;
    height:50px;
    transition:.3s ease;
    box-shadow: 0 0 1rem 0.5rem rgba(0,0,0,0.2);
}
.floating-btn .icon{
    font-size:1.2rem;
}
.floating-btn:hover{
    color:#fff;
    background-color: var(--secondary);
}
.media-modal{
    position:fixed;
    left:0;
    top:0;
    z-index:10000;
    visibility: hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    width:100%;
    height:100%;
    transition:.5s ease;
}
.media-modal.show{
    background-color:rgba(0,0,0,0.8);
    visibility: visible;
    opacity: 1;
}
.media-modal .close-btn{
    position:absolute;
    top:0;
    right:-100px;
    font-size:5rem;
    color:#fff;
    background-color:transparent;
    padding:0.5rem 2rem;
    border:0;
    transition:.3s ease;
}
.media-modal.show .close-btn{
    right:0;
    transition:.3s ease .4s;
}
#download-book {
    position: fixed;
    z-index: 9000;
    height:100vh;
    width:100vw;
    top: 0;
    left: 0;
    background-color: rgba(220, 220, 220, .6);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: .3s ease .3s;
    perspective-origin: top center;
    perspective: 1000px;
}

#download-book.show {
    opacity: 1;
    visibility: visible;
    transition: .3s ease;
}
.img-flex{
    min-width:100%;
    height:100%;
    object-fit: cover;
    object-position: center;
}
#download-book .content {
    /*width:100%;*/
    max-height:100vh;
    overflow:auto;
    max-width: 1000px;
    background-color: #fff;
    padding: 2rem;
    /*border: solid 1px rgba(160, 160, 160, 0.3);*/
    visibility:hidden;
    opacity: 0;
    will-change: transform;
    transform-style: preserve-3d;
    transform-origin: 50% bottom;
    transform: rotateX(30deg) translate(0, 210px) scale(0.7);
    transition: all 0.3s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.35s ease-out;
}

#download-book.show .content {
    visibility:visible;
    opacity: 1;
    transform: rotateX(0) scale(1) translate(0, 0);
    transition: all 0.3s cubic-bezier(0.5, 0, 0, 1.25) .2s, opacity 0.25s ease-out .2s;
}

#question-form .indicator,
#post-prayer-request .indicator{
    font-size:1.5rem;
}
#question-form .label,
#post-prayer-request .label{
    display:flex;
    align-items:center;
    line-height:28px;
}
#user-questions,
#prayer-requests{
    max-height:500px;
    overflow:auto;
}
#user-questions .question:nth-child(even){
    background-color:#f5f5f5;
}
.contributions{
    max-height:800px;
    overflow:auto;
}
.contribution blockquote{
    width:90%;
    margin:auto;
    position:relative;
    color:var(--secondary);
}
.contribution blockquote::before,
.contribution blockquote::after{
    content:"\f347";
    display:block;
    position:absolute;
    font-family:"Ionicons";
}
.contribution blockquote::after{
    top:0;
    left:0;
}
.contribution blockquote::before{
    bottom:0;
    right:0;
    transform:rotateY(180deg);
}
.photo{
    cursor:pointer;
}
.photo .caption {
    display:none;
}
.photo a{
    display:block;
}
.photo img{
    display:block;
    width:100%;
    height:100%;
    object-fit: cover;
    object-position: center;
}

.testimonials{
    /*display:flex;
    align-items:center;*/
    position: relative;
}
.testimonials .card-img{
    width:100%;
    height:auto;
    object-fit:cover;
}
.testimonials .card__shadow,
.question.card__shadow{
    cursor:default;
}
.testimonials .slides{
    margin:0 0 0 0 !important;
}
.testimonials .slides .slide{
    overflow: hidden;
    width:100%;
    min-height:120px;
    display:flex;
    flex-direction:column;
    justify-content: flex-end;
    font-size:1.1rem;
}
.testimonials .slides .slide:focus{
    border:0;
    outline:0;
}
.testimonials .slides .slide p{
    font-family:Helvetica;
    /*font-style:italic;*/
    /*text-align:justify;*/
    font-weight:normal;
}
.slide .avatar{
    border-radius:50%;
    overflow:hidden;
    width:50px;
    flex-shrink: 0;
}
.slide .avatar img{
    min-width:100%;
    min-height:100%;
    object-fit: cover;
    object-position: center;
}
.testimonial-pagination{
    position:absolute;
    right:0;
    top:0;
    height:100%;
    display:flex;
    align-items:center;
}
.testimonial-pagination .slick-dots{
    position:static;
    display:flex;
    flex-direction:column;
    justify-content: center;
}
.testimonial-pagination .slick-dots li{
    margin:5px 0;
}
.testimonial-pagination .slick-dots li button::before{
    font-size:12px;
}
.testimonial-pagination .slick-dots li.slick-active button::before{
    color:var(--danger);
}

.blob::after{
    content:"";
    display:block;
    width:500px;
    height:500px;
    transform:rotate(30deg);
    background-color:#ab7177;
    opacity:.2;
    position: absolute;
    top:50%;
    left:70%;
}

@media screen and (min-width:400px) {
    .featured-resource__text h1{
        font-size:xxx-large;
    }
}
@keyframes spin{
    from{
        transform:rotate(0);
    }
    to{
        transform:rotate(360deg);
    }
}
.ion-spin::before{
    animation-name:spin;
    animation-duration:1.5s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

/*Contact page*/
.contact-page{
    --overflow:150px;
    position:relative;
    margin-top:-80px;
}
.contact-page::after{
    content:"";
    display:block;
    background-color:var(--light);
    height:var(--overflow);
    width:100%;
    bottom:0;
    left:0;
    z-index:100;
}
.contact-page .nav-item{
    display:flex;
    align-items:center;
}
.contact-page .nav-item+.nav-item{
    margin-top:1.3rem;
}
.contact-page .nav-link{
    font-size:1.1rem;
}
.contact-page .nav-item i{
    font-size:2.5rem;
    color:var(--danger);
    width:30px;
    padding:0;
    margin:0 2.5rem 0 0;
}
.contact-form{
    background-color: #fff;
    border-radius:5px;
    padding:3.5rem;
}
.contact-form,
.left-section{
    position:relative;
    bottom:calc(0px - calc(var(--overflow)/1.5));
}
.contact-form label{
    position:relative;
    width:100%;
    margin:2rem 0;
    display:block;
}
.contact-form .form-control{
    margin:0 0 0 0;
}
.contact-form .label{
    position:absolute;
    z-index:10;
    color:var(--secondary);
    transition:all .3s ease;
    background-color:transparent;
    border:0;
    display:block;
    top:0;
    transform-origin: 0 0;
    transform:scale(0.9);
}

.contact-form .form-control:focus+.label,
.contact-form .form-control:not(:placeholder-shown)+.label{
    color:var(--dark);
    top:-1.3rem;
    transform:scale(0.85);
    padding-left:0;
}

/*Messages*/
.message{
    width:100%;
    padding:0 0;
}
.message .card-img-top{
    position:relative;
    overflow:hidden;
    width:100%;
}
.message .card-img-top::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    background-color:#000000aa;
    opacity:.4;
    z-index:2;
    width:100%;
    height:100%;
    transition:all .3s ease;
}

.message .play{
    width:50px;
    height:50px;
    display:flex;
    align-items: center;
    justify-content: center;
    text-align:center;
    font-size:28px;
    border-radius:50%;
    border:2px solid;
    transition:all .3s ease;
}
.message .card-img-top .play{
    z-index:10;
    top:calc(50% - 25px);
    left:calc(50% - 25px);
    color:#fff;
    opacity:.5;
    transform:scale(0.8);
    position:absolute;
}
.message .play{
    padding-left:.25rem!important;
}
.message .card-img-top:hover::before,
.message .card-img-top:focus::before{
    opacity:1;
}
.message .card-img-top .play:hover,
.message .card-img-top .play:focus{
    transform:scale(1);
    opacity:1;
}
.flow-wrap{
    /*shape-outside: circle(30%);*/
    shape-outside: ellipse(50px 50px at 50% 50%) padding-box;
    float:right;
    padding:.3rem;
    width:100px;
    height:100px;
    margin-top:calc(0px - calc(1.25rem + 35px));
    margin-right:calc(0px - calc(1.25rem + 35px));
    display:flex;
    align-items:center;
    justify-content: center;
    background-color:var(--light);
    border-radius: 70%;
}
.card-body{
    position:relative;
    overflow:hidden;
}
.flow-wrap .play{
    width:35px;
    height:35px;
    margin:10px;
    position:absolute;
    top:0;
    right:0;
    font-size:25px;
}
.media-modal{
    padding:2vh 10%;
}
.media-modal iframe.player{
    display:block;
    /*width:100%;*/
    /*max-width:800px;*/
    margin:auto;
    /*height:50%;*/
    border:0;
    overflow: hidden;
}
.share-widget{
    position:fixed;
    bottom:0;
    left:0;
    z-index:99999;
    height:100vh;
    width:100vw;
    padding:3% 5.5%;
    background-color:rgba(0,0,0,0.7);
    opacity:0;
    visibility:hidden;
    transition:all .3s ease-in .3s;
    display:flex;
    align-items:center;
    justify-content:center;
}
.share-widget .content{
    max-width:600px;
    background-color:#ffffff;
    opacity:0;
    visibility:hidden;
    transition:all .3s ease-in;
}
.share-widget.show{
    opacity:1;
    visibility:visible;
    transition:all .3s ease-out;
}
.share-widget.show .content{
    opacity:1;
    visibility:visible;
    transition:all .3s ease-out .3s;
}
.page-background.blur{
    filter:blur(3px);
}
.testimonials.container-fluid{
    max-width:1200px;
}
.testimonials .video-placeholder{
    object-fit:cover;
    object-position:center;
    height:100%;
    width:100%;
    min-height:300px;
    display:flex;
    align-items;center;
    justify-content:center;
    overflow:hidden;
}
.testimonials .video-placeholder img{
    position:absolute;
    display:block;
    min-width:100%;
    min-height:100%;
    top:50%;
    object-fit:cover;
    object-position:center;
    left:50%;
    transform:translate(-50%,-50%);
}
.card--resource__image--portrait img{
    width:auto;
}
.card--resource__image--landscape img{
    height:auto;
}
.resources .resource__header .resource__image{
    max-height:400px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}
.resources .resource__image__img {
    /*object-fit:cover;*/
}