/*
Theme Name: Bravad
Theme URI: https://bravad.ca
Author: Sébastien Gagné
Author URI: https://bravad.ca
Description: Wordpress bravad theme (Bravad)
Version: 2.3.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bravad
*/

:root{
    --dark-blue: #234589;
    --light-blue: #32B0C8;
    --white: #fff;
    --black: #000;
}

.image img{
    object-fit: contain!important;
    max-height: 500px;
}

.block-image{
    max-height: 500px;
}

.history{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.horizontal-line{
    width: 100%;
    margin: 0 auto;
    height: 1px;
    background-color: white;
}

.text-box{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}
.text-box h2 em{
    font-family: "ivypresto-headline", serif;
}
.text-box h2{
    color: var(--dark-blue);
}

.text-image-text{
    margin-bottom: 40px;
    text-align: left;
}

.img-box{
    display: flex;
    justify-content: center;
    align-items: center;
}

.text-image-img{
    max-height: 600px;
    border-radius: 20px;
}

@media only screen and (max-width: 768px){
    .text-image-img{
        padding-top: 4rem;
    }
}

.search-form .form-control{
    border-bottom: 2px solid #fff!important;
    border-radius: 0!important;
}

.invalid-feedback{
    color: #30465d!important;
    font-weight: bold!important;
}

.tribe-events-c-top-bar__datepicker-button-icon-svg{
    display: none!important;
}
.tribe-events .tribe-events-c-top-bar__datepicker-button:focus, .tribe-events .tribe-events-c-top-bar__datepicker-button:hover{
    opacity: inherit;
    cursor: default;
}

.gm-style-iw-d{
    color: #30465d;
}

.block-form select{
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
    background: transparent;
    background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
    background-repeat: no-repeat;
    background-position-x: 97%;
    background-position-y: 50%;
}

.block-form select:after{
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: url('/wp-content/themes/bravad/assets/img/pin.svg');
    background-size: contain;
}

.phone, .mailto{
    color: white;
    transition: all 0.3s;
}
.phone:hover, .mailto:hover{
    color: white;
    border: 1px solid white;
    background-color: #30465d;
    padding: 2px 5px;
    border-radius: 5px;
    transition: all .3s;
    font-weight: bold;
}


.block-image img{
    padding-bottom: 4rem;
}
@media only screen and (min-width: 768px){
    .block-image img{
        padding: 4rem 0;
    }
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:hover{
    background-color: #30465d!important;
    border-color: #30465d!important;
}


/* Hide the links in block-links */
.block-links a{
    text-decoration: none;
}
.block-links li a:hover{
    color: #30465d!important;
    cursor: default;
}

body{
    font-family: 'Outfit', sans-serif;
}
.btn-secondary{
    background-color: var(--dark-blue);
    border-color: var(--dark-blue);
    font-weight: 400;
    text-transform: none;
    font-size: 20px;
}
.btn-secondary:hover{
    background-color: #132850;
    border-color: #132850;
}
.btn-primary{
    background-color: var(--light-blue);
    border-color: var(--light-blue);
     font-weight: 400;
    text-transform: none;
    font-size: 20px;
}
.btn-primary:hover{
    background-color: #1e8fa0!important;
    border-color: #1e8fa0!important;
}
.btn-white{
    background-color: var(--white);
    border-color: var(--white);
    font-weight: 400;
    text-transform: none;
    font-size: 20px;
}
h1, h2, h3, h4, h5, h6{
    font-weight: 400;
}
h2{
    font-size: 3.5rem;
}
h2 em{
    font-style: italic;
    font-family: "ivypresto-headline", serif;
}
h3{
    font-size: 2.5rem;
}

/* Menu */
.secondary-menu{
    background: rgba(255,255,255, 0.6)!important;
    display: flex;
    border-radius: 32px;
    padding: 0.5rem 1rem;
}
@media(min-width: 992px){
    .search-form .form-control{
        color: var(--dark-blue)!important;
        border: none;
        border-bottom: 2px solid var(--dark-blue)!important;
        background-color: transparent;
        font-weight: 400;
        padding: 1rem 1rem;
    }
    .search-form .form-control::placeholder{
        color: var(--dark-blue)!important;
    }
    .search-form .btn{
        fill: var(--dark-blue);
        font-weight: 400;
    }
}
.secondary-nav li{
    display: flex!important;
    align-items: center;
}
.secondary-nav a{
    color: var(--dark-blue)!important;
    font-weight: 400;
    fill: var(--dark-blue)!important;
    line-height: 1;
}
.site-logo img{
    max-width: 230px;
}
.menu-item a{
    color: var(--dark-blue);
    font-weight: 400;
    transition: all 0.3s;
}
.primary-nav li.current-menu-item > a, .menu-item a:hover{
    color: var(--light-blue);
    font-weight: 400;
}
.secondary-nav .social-icon{
    width: 3rem;
    margin-right: 1rem;
}

/* HERO */
.hero{
    background: transparent linear-gradient(119deg, #A6D5B7 0%, #32B0C8 51%, #234589 100%) 0% 0% no-repeat padding-box;
}
.hero-content{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    height: 100%;
}
@media(max-width: 992px){
    .hero-content{
        padding: 4rem 0;
    }
}
.hero-content h1 em{
    font-family: "ivypresto-headline", serif;
}
.hero-image{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.hero-image .image-container{
    position: relative;
}
.hero-image .image-container::before{
    content: "";
    position: absolute;
    bottom: 0; left: 0;
    width: 100%;
    height: 90%;
    background: transparent linear-gradient(49deg, #32B0C8 0%, #FFFFFF 100%) 0% 0% no-repeat padding-box;
    border-radius: 20px 200px 20px 20px;
}
.hero-image img{
    position: relative;
}

/* Hero Carousel */
.hero-carousel {
    background: transparent linear-gradient(119deg, #A6D5B7 0%, #32B0C8 51%, #234589 100%) 0% 0% no-repeat padding-box;
    position: relative;
    display: flex;
    flex-direction: column;
}
.hero-carousel .swiper-container {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.hero-carousel .swiper-wrapper {
    flex: 1;
    align-items: stretch;
}
.hero-carousel .swiper-slide {
    height: auto;
    display: flex;
    flex-direction: column;
}
.hero-carousel .swiper-slide .container {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-bottom: 3.5rem;
}
.hero-carousel .swiper-slide .row {
    flex: 1;
    align-items: center;
}
.hero-carousel .swiper-pagination {
    bottom: 1rem;
}
.hero-carousel .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: rgba(255, 255, 255, 0.5);
    opacity: 1;
}
.hero-carousel .swiper-pagination-bullet-active {
    background: #fff;
    transform: scale(1.3);
}
.hero-carousel .swiper-button-prev,
.hero-carousel .swiper-button-next {
    color: #fff;
    background: rgba(255, 255, 255, 0.2);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    transition: background 0.3s;
}
.hero-carousel .swiper-button-prev:hover,
.hero-carousel .swiper-button-next:hover {
    background: rgba(255, 255, 255, 0.4);
}
.hero-carousel .swiper-button-prev::after,
.hero-carousel .swiper-button-next::after {
    font-size: 16px;
    font-weight: bold;
}
.hero-carousel .swiper-button-prev svg,
.hero-carousel .swiper-button-next svg {
    height: 20px;
}
@media (max-width: 992px) {
    .hero-carousel .swiper-button-prev,
    .hero-carousel .swiper-button-next {
        display: none;
    }
}

/*CTA*/
.has-cols:before{
    background: var(--dark-blue);
}
.bg-secondary{
    background-color: var(--dark-blue)!important;
}
.bg-primary{
    background-color: var(--light-blue)!important;
}
.block-title::before{
    display: none;
}
.block-cta h2{
    font-family: 'ivypresto-headline', serif;
    font-style: italic;
}
.block-cta .block-title{
    text-align: center;
}
.block-cta .cta-subtitle{
    font-size: 4.5rem;
}
.loading-screen{
    z-index: -1;
}
.logo-transparent{
    position: absolute;
    bottom: -60px; left: 20px;
    z-index: -1;
}

/*Footer*/
.logo-transparent-footer{
    position: absolute;
    top: 50%; left: 60%;
    transform: translate(-50%, -50%);
    height: 120%;
    z-index: 1;
}

/*Partners*/
.partners-title{
    font-size: 3rem;
    font-weight: 400;
    color: var(--dark-blue);
    text-align: center!important;
    margin-bottom: 7rem!important;
}
.bg-off-white{
    background-color: #EBF6EF!important;
}
.bg-off-white.text-white, .bg-off-white.text-white .block-title{
    color: var(--dark-blue)!important;
}
.block-title{
    text-align: left;
    margin-bottom: 20px;
    color: var(--dark-blue);
}
.block-title em{
    font-family: "ivypresto-headline", serif;
    font-style: italic;
}

.h3{
    font-size: 3.5rem;
    font-weight: 400;
    
}
.text-white .block-title{
    color: white!important;
}

/*Mission*/
.block-mission{
    background: #EBF6EF;
    padding: 100px 0;
}
@media(max-width: 768px){
    .block-mission{
        padding: 4rem 0;
    }
}
.mission-text{
    column-count: 2;
    column-gap: 60px;
    margin-bottom: 80px;
}
.mission-image img{
    aspect-ratio: 400/350;
    width: 100%;
    height: auto;
    border-radius: 20px;
    object-fit: cover;
    margin-bottom: 20px;
}
.mission-title{
    color: var(--light-blue);
}
.mission-description{
    font-weight: 300;
}

/*Team*/
.block-subtitle{
    color: var(--light-blue);
    padding-bottom: 10px;
    border-bottom: 1px solid var(--dark-blue);
    font-weight: 400;
}
.team-item h3{
    font-family: "ivypresto-headline", serif;
    font-style: italic;
    font-weight: 500;
    font-size: 2.5rem;
}
.team-item p{
    text-transform: none;
}
.block-team .content-intro{
    margin-bottom: 60px;
}

/* Mobile Font Adjustments */
@media (max-width: 768px) {
    h1 {
        font-size: 3.2rem !important;
    }
    h1 p{
        font-size: 3.2rem !important;
    }
    h2 {
        font-size: 3rem !important;
    }
    h3 {
        font-size: 2.5rem !important;
    }
    h4 {
        font-size: 2rem !important;
    }
    h5 {
        font-size: 1.8rem !important;
    }
    h6 {
        font-size: 1.6rem !important;
    }
    .block-cta .cta-subtitle {
        font-size: 3rem !important;
    }
    .partners-title {
        font-size: 2.5rem !important;
        margin-bottom: 4rem !important;
    }
    .h3 {
        font-size: 2.5rem !important;
    }
    .team-item h3 {
        font-size: 2.5rem !important;
    }
    .block-title {
        font-size: 2.7rem !important;
    }
    .block-subtitle {
        font-size: 2rem !important;
    }
    .btn-primary,
    .btn-secondary,
    .btn-white {
        font-size: 18px !important;
        padding: 0.7rem 1.3rem !important;
    }
    .mission-text {
        column-count: 1;
        margin-bottom: 40px;
    }
    body {
        font-size: 16px;
    }
    p {
        font-size: 16px;
        line-height: 1.6;
    }
    .impact-item .impact-title {
        font-size: 1.8rem !important;
    }
    .impact-main-title {
        font-size: 3rem !important;
    }
}
.site-header{
    z-index: 999;
}
.primary-nav{
    z-index: 999;
}