:root {
    --cobalt: rgb(0,97,255);
    --cobalt-50: rgba(0,97,255,0.05);
    --navy: rgb(4,0,97);
    --purple: rgb(99,15,255);
    --light-blue: rgb(0,209,255);
    --light-green: rgb(64,242,191);
    --pink: rgb(194,106,255);
    --dark-grey:rgb(16,24,40);
    --light-grey:rgb(234,236,240);

    --gray-900:#030039;
    --gray-600:#475467 ;
    --orange:#F97B2C;
    --dark-orange:rgb(239, 75, 21);
  }

/* Font Family */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

h1,h2,h3,h4,h5,h6,p,a,span,strong,ul,li,ol {
    font-family: 'Montserrat', sans-serif !important;
    margin:0;
    padding:0;
}

::selection {
    background: var(--cobalt) !important;
    color:white;
  }




.caps {
    text-transform:uppercase; 
    letter-spacing:0.35rem;
    font-weight:400;
    font-size:2.5rem;
    line-height:2.5rem;
    padding-top:8px;
    display:inline-block;
}

@media(max-width:767px) {
    .desktop {
        display:none;
    }
    .display-lg {
        font-size: 1.625rem;
    }
    .display-md {
        font-size: 1.5rem;
    }
    .display-sm {
        font-size: 1.375rem;
    }
    .display-xs {
        font-size: 1.25rem;
    }
    .text-xl {
        font-size: 1.125rem;
    }
    .text-lg {
        font-size: 1rem;
    }
    .text-md {
        font-size: 1rem;
    }
    .text-sm {
        font-size: 0.875rem;
    }
    .caps {
        font-size:1.5rem;
        line-height:1.5rem;
        margin-top:4px;
    }
}

ul {
    list-style:disc;
    padding-left:1.25rem;
}
ol {
    list-style:decimal;
    padding-left:1.25rem;
}



/* Text Align */

.text-center {text-align:center;}
.text-left {text-align:left;}


/* Text Weights */
.bold {font-weight:700;}
.semibold {font-weight:600;}
.medium {font-weight:500;}
.regular {font-weight:400;}


.rounded {
    border-radius:1rem;
}

/* Colors */
.gray-900 {color:#101828;}
.gray-600 {color:#475467;}
.gray-300 {color:#D0D5DD}

.gray-200 {color:#EAECF0;}
.gray-50 {color:#F9FAFB}
.white {color:white}
.gray-900-bg {background-color:#101828;}
.gray-600-bg {background-color:#475467;}
.gray-300-bg {background-color:#D0D5DD}
.gray-200-bg {background-color:#EAECF0;}
.gray-50-bg {background-color:#F9FAFB}
.white-bg {background-color:white;}

.midnight-blue {color:#140A50}
.midnight-blue-bg {background-color:#140A50}
.cobalt {color:var(--cobalt);}
.cobalt-bg {background-color:var(--cobalt);}
.cobalt-bg-50 {background-color:#f5f9fe;}
.cobalt-bg-100 {background-color:#ecf3ff;}
.sky {color:var(--sky);}
.sky-bg {background-color:var(--sky);}
.sky-bg-100 {background-color:#F1F7FF;}
.sky-bg-50 {background-color:#F4F9FF;}
.aqua {color:var(--aqua);}
.aqua-bg {background-color:var(--aqua);}
.aqua-bg-100 {background-color:#EDFBFF;}
.gradient-bg {background: linear-gradient(90deg, rgb(239, 75, 21) 0%, rgb(255, 144, 10) 100%)}

.cobalt {color:var(--cobalt)};
.navy {color:var(--navy)};
.purple {color:var(--purple)};
.light-blue {color:var(--light-blue)};
.light-green {color:var(--light-green)};
.pink {color:var(--pink)};
.dark-grey {color:var(--dark-grey)};
.light-grey {color:var(--light-grey)};
.bg-cobalt  {background-color:var(--cobalt)};
.bg-navy {background-color:var(--navy)};
.bg-purple {background-color:var(--purple)};
.bg-light-blue {background-color:var(--light-blue)};
.bg-light-green {background-color:var(--light-green)};
.bg-pink {background-color:var(--pink)};
.bg-dark-grey {background-color:var(--dark-grey)};
.bg-light-grey {background-color:var(--light-grey)};


/* Spacing */
.row-gap-8 {row-gap:8px;}
.column-gap-8 {column-gap:8px;}
.row-gap-16 {row-gap:16px;}
.column-gap-16 {column-gap:16px;}
.grid-gap-16 {grid-gap:16px;}
.row-gap-24 {row-gap:24px;}
.column-gap-24 {column-gap:24px;}
.grid-gap-24 {row-gap:24px;column-gap:24px;}
.row-gap-32 {row-gap:32px;}
.column-gap-32 {column-gap:32px;}
.grid-gap-32 {row-gap:32px;column-gap:32px;}
.row-gap-48 {row-gap:48px;}
.column-gap-48 {column-gap:48px;}
.row-gap-64 {row-gap:64px;}
.column-gap-64 {column-gap:64px;}
.column-gap-96 {column-gap:96px;}

@media(max-width:767px) {
    .row-gap-8 {row-gap:4px;}
    .column-gap-8 {column-gap:4px;}
    .row-gap-16 {row-gap:8px;}
    .column-gap-16 {column-gap:8px;}
    .grid-gap-16 {grid-gap:8px;}
    .row-gap-24 {row-gap:16px;}
    .column-gap-24 {column-gap:16px;row-gap:16px;}
    .grid-gap-24 {row-gap:16px;column-gap:16px;}
    .row-gap-32 {row-gap:24px;}
    .column-gap-32 {column-gap:24px;}
    .grid-gap-32 {row-gap:24px;column-gap:24px;}
    .row-gap-48 {row-gap:32px;}
    .column-gap-48 {column-gap:32px;}
    .row-gap-64 {row-gap:48px;}
    .column-gap-64 {column-gap:48px;}
    .column-gap-96 {column-gap:64px;}
}


/* Grid */
.grid {display:grid;}
.inline-grid {display:inline-grid}
.grid-2 {grid-template-columns:1fr 1fr;grid-template-rows:auto;}
.grid-3 {grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto;}
.grid-4 {grid-template-columns:1fr 1fr 1fr 1fr;grid-template-rows:auto;}
.grid-5 {grid-template-columns:1fr 1fr 1fr 1fr 1fr;grid-template-rows:auto;}

@media(max-width:821px) {
    .grid-4 {grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto;}
}

@media(max-width:767px) {
    .grid-2,
    .grid-3,
    .grid-4 {grid-template-columns:1fr;grid-template-rows:auto;row-gap:24px;}
}


/* Flex */
.flex {display:flex;}
.inline-flex {display:inline-flex;}
.flex-row {flex-direction:row;}
.flex-column {flex-direction:column;}
.align-center {align-items:center;}
.justify-space-between {justify-content:space-between}
.justify-space-around {justify-content:space-around}
.justify-center {justify-content:center}
.align-start {
    align-items:flex-start;
}

@media(max-width:767px) {
    .flex-row {
        flex-direction:column;}

        .mobile-align-start {
            align-items:flex-start;
        }
}

/* Buttons */
.button {
    text-decoration:none !important;
    -webkit-transition:all .3s ease !important;
    -o-transition:all .3s ease !important;
    transition:all .3s ease !important;
    border-radius:10px;
    font-weight:600;
	font-family: 'Montserrat', sans-serif; 
    padding:6px 20px;
    font-size:18px; 
    display:inline-block;
    cursor:pointer;
    min-width:100px;
    color:#fff;
    border:2px solid var(--cobalt);
}
.button img {
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
}
.button:hover,
.button:active,
.button:focus,
.button:focus-within {
    border:2px solid var(--purple);
    color:#fff;
}
.button__solid {
    background-color:var(--cobalt);
    color:#fff;
}
.button__solid:hover,
.button__solid:active,
.button__solid:focus,
.button__solid:focus-within {
    background-color:transparent;
    color:var(--purple);
    border-color:var(--purple);
}
.button__outline {
    color:var(--cobalt);
    background-color:rgba(0,0,0,0);
    border:2px solid var(--cobalt);
}
.button__outline:hover,
.button__outline:active,
.button__outline:focus,
.button__outline:focus-within {
    background-color:var(--purple);
    border:2px solid var(--purple);
}
a {
    transition:.3s ease;
    color:var(--cobalt)
}
a:hover,
a:active,
a:focus,
a:focus-within {
    color:var(--purple);
}

/* Shadow */
.box-shadow {
    box-shadow:0px 4px 8px rgb(0 0 0 / 8%);
}

/* Padding */
.padding-xl {padding:156px 5vw;}
.padding-lg {padding:128px 5vw;}
.padding-md {padding:96px 5vw;}
.padding-24 {padding:24px}
.padding-32 {padding:32px;}
.padding-48 {padding:48px;}

@media(max-width:767px) {
    .padding-24 {padding:24px}
    .padding-32 {padding:24px;}
    .padding-48 {padding:32px;}
    .padding-xl {padding:96px 5vw;}
    .padding-lg {padding:72px 5vw;}
}

/* Margin */
.mt-4 {margin-top:4px;}
.mt-8 {margin-top:8px;}
.mt-16 {margin-top:16px;}
.mt-24 {margin-top:24px;}
.mt-32 {margin-top:32px;}
.mt-48 {margin-top:48px;}
.mt-64 {margin-top:64px;}
.mt-96 {margin-top:96px;}
.mb-4 {margin-bottom:4px;}
.mb-8 {margin-bottom:8px;}
.mb-16 {margin-bottom:16px;}
.mb-24 {margin-bottom:24px;}
.mb-32 {margin-bottom:32px;}
.mb-48 {margin-bottom:48px;}
.mb-64 {margin-bottom:64px;}
.mb-96 {margin-bottom:96px;}

.pt-4 {padding-top:4px;}
.pt-8 {padding-top:8px;}
.pt-16 {padding-top:16px;}
.pt-24 {padding-top:24px;}
.pt-32 {padding-top:32px;}
.pt-48 {padding-top:48px;}
.pt-64 {padding-top:64px;}
.pt-96 {padding-top:96px;}
.pb-4 {padding-bottom:4px;}
.pb-8 {padding-bottom:8px;}
.pb-16 {padding-bottom:16px;}
.pb-24 {padding-bottom:24px;}
.pb-32 {padding-bottom:32px;}
.pb-48 {padding-bottom:48px;}
.pb-64 {padding-bottom:64px;}
.pb-96 {padding-bottom:96px;}

@media(max-width:767px) {
    .mt-4 {margin-top:4px;}
    .mt-8 {margin-top:8px;}
    .mt-16 {margin-top:16px;}
    .mt-24 {margin-top:24px;}
    .mt-32 {margin-top:24px;}
    .mt-48 {margin-top:32px;}
    .mt-64 {margin-top:48px;}
    .mt-96 {margin-top:64px;}
    .mb-4 {margin-bottom:4px;}
    .mb-8 {margin-bottom:8px;}
    .mb-16 {margin-bottom:16px;}
    .mb-24 {margin-bottom:24px;}
    .mb-32 {margin-bottom:24px;}
    .mb-48 {margin-bottom:32px;}
    .mb-64 {margin-bottom:48px;}
    .mb-96 {margin-bottom:64px;}
}

/* Icons + Avatars */
.icon-lg {
    width:56px;
    height:56px;
    border-radius:100px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.icon-lg img {
    width:24px;
    height:auto;
}
.avatar-lg {
    width:72px;
    height:72px;
    border-radius:100px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.avatar-xl {
    width:96px;
    height:96px;
    border-radius:100px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.avatar-xl img {
    width:100%;
    height:100%;
    object-fit:contain;
    border-radius:100000px;
}
.avatar-sm {
    width:42px;
    height:42px;
    min-width:42px;
    min-height:42px;
    border-radius:100px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}
.avatar-md {
    width:56px;
    height:56px;
    min-width:56px;
    min-height:56px;
    border-radius:100px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}



/* Containers */
.container,
.container-1300,
.container-900 {
    max-width:95%;
}
.container-1300 {width:1400px;}
.container-900 {width:900px;}

@media(max-width:810px) {
    .container-1300 {
        padding-left:5vw !important;
        padding-right:5vw !important;
        border-radius:0;
        max-width:100vw;
        width:100vw;
    }
    .container-900 {
        width:100%;
    }
}

/* Dividers */
.divider {
    display:block;
    width:100%;
    height:1px;
}

/* Logo */
#cra-logo {
    width:340px;
    max-width:100%;
    height:auto;
}
@media(max-width:767px) {
    #cra-logo {
        width:280px;
        margin-bottom:16px;
    }
    #nav .text-md {
        font-size:0.875rem;
    }
}



/* Image Slider */
.pill {
    padding:0.25rem 0.75rem !important;
    border-radius: 6.25rem;
}

@media(max-width:767px) {
    .pill {
        font-size:0.825rem !important;
    }
}
.image-slider-outer {
    width:100vw;
    height:420px;
    overflow:hidden;
}

.image-slider-inner {
    width:8176px;
    animation:scroll 48s linear infinite;
}

@keyframes scroll {
    0% {
        transform:translateX(0px);
    }
    100% {
        transform:translateX(-4120px);
    }
}

@keyframes logo-scroll-1 {
    0% {
        transform:translateX(0px);
    }
    100% {
        transform:translateX(-3030px);
    }
}

@keyframes logo-scroll-2 {
    0% {
        transform:translateX(0px);
    }
    100% {
        transform:translateX(3260px);
    }
}

@keyframes logo-scroll-3 {
    0% {
        transform:translateX(0px);
    }
    100% {
        transform:translateX(-6620px);
    }
}

@keyframes logo-scroll-4 {
    0% {
        transform:translateX(0px);
    }
    100% {
        transform:translateX(6535px);
    }
}

.slider-image {
    height:420px;
    width:auto;
    float:left;
    border-radius:16px;
    margin-left:32px;
}

@media(max-width:767px) {
    .image-slider-outer {
        height:250px;
    }
    .slider-image {
        height:250px;
        margin-left:24px;
    }
}


/* Features Section */
.feature-checkmark {
    width:32px;
    height:32px;
}


/* Testimonials Section */

.testimonials-grid {
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
    column-gap:32px;
}
.testimonials-column {
    display:flex;
    flex-direction:column;
    row-gap:32px;
}
.testimonials-grid img {
    object-fit:cover;
}
@media(max-width:767px) { 
    .testimonials-grid {
        grid-template-columns:1fr;
    }
    .testimonials-column {
        row-gap:16px;
    }
    .testimonials-column:last-child {
        margin-top:16px;
    }
}



/* FAQs Section */
.faq {
    padding:32px 0;
    border-bottom:1px solid #EAECF0;
    cursor:pointer
}
.faq:last-child {
    border-bottom:0;
}

.faq p,
.faq ul,
.faq ol {
    display:none;
}

.faq.expand p,
.faq.expand ul,
.faq.expand ol {
    display:block;
}
.faq-open {
    min-width:24px;
    width:24px;
    height:24px;
    border-radius:100px;
    border:2px solid var(--cobalt);
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
}
.faq-open > div:first-child {
    width:10px;
    height:2px;
    background-color:var(--cobalt);
}
.faq-open > div:last-child {
    width:10px;
    height:2px;
    background-color:var(--cobalt);
    position:absolute;
    top:9px;
    left:5px;
    transform:rotate(90deg);
    transition:all .2 ease;
}
.faq.expand .faq-open > div:last-child {
    transform:rotate(0deg);
}

@media(max-width:767px) {
    .faq {
        flex-direction:row !important;
    }

}



/* Sponsors Section */
.sponsors {
    width:900px;
    max-width:95vw;
}

.sponsor {
    display:inline-flex;
    float:left;
    flex-direction:column;
    row-gap:16px;
}
.sponsor.silver {
    width:100%;
    margin-top:32px;
}

.sponsor.host {
    width:100%;
    max-width:100%;
}
.sponsor img {
    width:360px;
    max-width:100%;
}
.sponsor.host img {
    max-height:none;
}

@media(min-width:768px) and (max-width:1200px) {
    .sponsor a {
        width:20%;
        text-align:center;
    }
    .sponsor a img {
        width:100% !important;
    }
}

@media(max-width:767px) { 
    .sponsor.silver {
        width:100%;
        margin-top:16px;
    }


}


/* Logo Slider */
.tbr-slider {
    height: 100px;
    position: relative;
    width: 100%;
    display: grid;
    place-items: center;
    overflow: hidden;
}
.tbr-slider.slider1 {
    margin-top:36px;
}
.ca-slider,
.usa-slider {
    margin-top: 50px;
    height: 80px;
    position: relative;
    width: 100%;
    display: grid;
    place-items: center;
    overflow: hidden;
}
.tbr-slider::before, .tbr-slider::after,
.usa-slider::before, .usa-slider::after,
.ca-slider::before, .ca-slider::after {
    position: absolute;
    background-image: linear-gradient(to right,rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
    content: '';
    height: 100%;
    width: 25%;
    z-index: 2;
    pointer-events: none;
}
.tbr-slider::before,
.usa-slider::before,
.ca-slider::before  {
    left: 0;
    top: 0;
}
.ca-slider .slide-track {
    width: 6000px;
    display: flex;
    animation: logo-scroll-1 22s linear infinite;
    justify-content: space-between;
}
.ca-slider .slide-track2 {
    width: 6400px;
    display: flex;
    animation: logo-scroll-2 21s linear infinite;
    justify-content: space-between;
    margin-left: -3500px;
}
.usa-slider .slide-track {
    width: 13240px;
    display: flex;
    animation: logo-scroll-3 60s linear infinite;
    justify-content: space-between;
}
.usa-slider .slide-track2 {
    width: 13070px;
    display: flex;
    animation: logo-scroll-4 60s linear infinite;
    justify-content: space-between;
    margin-left:-6536px
}

.slide {
    width: auto;
    height: 80px;
    display: grid;
    place-items: center;
    transition: 0.5s;
    padding:0 20px;
}

.tbr-slider .slide {
    width: auto;
    height: 100px;
    display: grid;
    place-items: center;
    transition: 0.5s;
    padding:0 20px;
}


.tbr-slider::after,
.usa-slider::after,
.ca-slider::after {
    right: 0;
    top: 0;
    transform: rotateZ(180deg);
}

.tbr-slider .slide-track {
    width: 12000px;
    display: flex;
    animation: tbr-scroll-1 54s linear infinite;
    justify-content: space-between;
}
.tbr-slider .slide-track2 {
    width: 12000px;
    display: flex;
    animation: tbr-scroll-2 54s linear infinite;
    justify-content: space-between;
    margin-left:-6000px;
}

@keyframes tbr-scroll-1 {
    0% {
      transform: translateX(0px);
    }
    100% {
      transform: translateX(-6000px);
    }
  }

  @keyframes tbr-scroll-2 {
    0% {
      transform: translateX(0px);
    }
    100% {
      transform: translateX(6000px);
    }
  }




@media screen and (max-width: 768px) {
    .ca-slider,
    .usa-slider {
        margin-top: 24px;
    }
    .ca-slider .slide-track {
      width: 4545px;
    }
    .ca-slider .slide-track2 {
      width: 3375px;
    }
    .slide {
        width: auto;
        height:90px;
        padding: 0 5px;
      }
    .slide img {
        height:75px;
        width:auto;
        max-width:none;
        image-rendering:auto;
    }
  
    @keyframes logo-scroll-1 {
      0% {
        transform: translateX(0px);
      }
      100% {
        transform: translateX(-2272px);
      }
    }
  
    @keyframes logo-scroll-2 {
      0% {
        transform: translateX(0px);
      }
      100% {
        transform: translateX(1687px);
      }
    } 
    .usa-slider .slide-track {
        width: 10100px;
      }
      .usa-slider .slide-track2 {
        width: 10200px;
          margin-left: -5100px;
      }
  
      @keyframes logo-scroll-3 {
        0% {
          transform: translateX(0px);
        }
        100% {
          transform: translateX(-4850px);
        }
      }
  
      @keyframes logo-scroll-4 {
        0% {
          transform: translateX(0px);
        }
        100% {
          transform: translateX(5100px);
        }
      }

      .tbr-slider .slide-track {
        width: 8600px;
        animation: tbr-scroll-1 40s linear infinite;
    }
    .tbr-slider .slide-track2 {
        width: 8600px;
        animation: tbr-scroll-2 40s linear infinite;
        margin-left:-4300px;
    }

    @keyframes tbr-scroll-1 {
        0% {
          transform: translateX(0px);
        }
        100% {
          transform: translateX(-4300px);
        }
      }
    
      @keyframes tbr-scroll-2 {
        0% {
          transform: translateX(0px);
        }
        100% {
          transform: translateX(4300px);
        }
      }
      
}


/* Presenters */
@media(max-width:767px) {
    #presenters {
        padding:0 5vw !important;
    }
}

/* Where & When */
.event-cover {
    display:block;
    width:100%;
    aspect-ratio:16/9;
    height:auto;
    object-fit:cover;
}
@media(max-width:767px) {
    #where .padding-24 {
        padding:16px;
    }
}


/* Country Popup */
.country-popup {
    display:flex;
    width:100%;
    align-items:center;
    justify-content:center;
    height:100vh;
    position:fixed;
    top:0;
    left:0;
    z-index:9999999;
    background-color:rgba(0,0,0,0.85);
    opacity:0;
    transition: opacity 0.6s ease;
}
.inactive.country-popup {
    display:none;
}

.country-popup__body {
    text-align:center;
    width:90%;
    max-width:650px;
}




.popup-button-container {
    display:inline-flex;
    width:100%;
    align-items:center;
    justify-content:center;
}

.country-popup__dismiss {
    margin-left:24px;
    cursor:pointer;
}



@media(max-width:767px) {
    .country-popup__body {
        padding:30px;
    }

    .popup-button-container {
        display:inline-block;
        text-align:center;
    }

    .popup-button-container .registration-button {
        float:none;
    }

    .country-popup__dismiss {
        margin-left:0;
        clear:both;
        margin-top:20px;
        display:inline-block;
    }
    #registration {
        margin-bottom:0 !important;
    }
}


/* Footer SEction */

/* Footer */


.footer-logo {
    width:220px;
    height:auto;    
}
.footer-text {
    display:inline-flex;
    width:auto;
}
.footer-text {
    font-size: 1rem;
    line-height: 1.54rem;
}
.footer-text p {
    font-size: 1rem;
    line-height: 1.54rem;
}
@media(max-width:768px) {
    #footer-bar .flex {
        flex-direction:column;
        row-gap:16px;
        align-items:flex-start;
    }
    #footer-bar  .footer-text {
        flex-direction:column;
        row-gap:8px;
    }
    #footer-bar  .footer-text p {
        margin-right:0;
    }
}


@media(max-width:767px) {
    #ecosystem .icon-lg,
    #scorecard .icon-lg,
    #action-plan .icon-lg {
        display:none !important;
    }
    #ecosystem h2,
    #scorecard h2,
    #action-plan h2 {
        margin-top:0 !important;
    }
    #ecosystem .container-1300,
    #action-plan .container-1300 {
        padding:0 5vw !important;
        display:flex;
        flex-direction:column-reverse;
    }
    #scorecard .container-1300 {
        padding:0 5vw !important;
        display:flex;
        flex-direction:column;
    }
    #ecosystem .container-1300 * {
        text-align:center;
        align-items:center;
    }
    #scorecard .container-1300 img,
    #action-plan .container-1300 img {
        height:300px !important;
    }

    #registration .padding-48 {
        padding: 48px 0 !important;
    }
}

