/**
 * style.css
 *
 * Theme Name: Swimming Canada
 * Theme URI:   http://www.machine-agency.com
 * Author:      Machine
 * Author URI:  http://www.machine-agency.com
 * Description: Custom Theme for Swimming Canada
 * Version:     1.0
 * License:     GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Tags:        
 * Text Domain: machine
 */


 /* ==========================================================================
    Global
    ========================================================================== */


body {
    color: #1F1F1F;
    background: #FFFFFF;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: 'Rubik', sans-serif;
}

.grid-container{
    max-width: 80rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

.grid-container:not(.full) > .grid-padding-x {
    margin-right: -1rem;
    margin-left: -1rem;
}

.grid-padding-x > .cell {
    padding-right: 1rem;
    padding-left: 1rem;
}

section{
    padding: 4rem 0;
}

.grid-container.narrow{
    max-width: 60rem;
}

main > h1,
main > h2,
main > h3,
main > h4,
main > h5,
main > h6,
main > p,
main > ul,
main > ol,
main > a{
    max-width: 60rem;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto;
}

main > ul,
main > ol{
    padding-left: 2rem;
}

main > .wp-block-table{
    max-width: 60rem;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto;
}

main > .wp-block-quote{
    max-width: 60rem;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto;
}

main > .wp-block-columns{
    max-width: 60rem;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto;
}

main > .wp-block-columns.alignwide{
    max-width: 80rem;
}

main > .wp-block-columns.alignfull{
    max-width: none;
}

main > .wp-block-buttons{
    max-width: 60rem;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

figure.wp-block-embed{
    max-width: 60rem;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

figure.wp-block-embed.aligncenter{
    text-align: center;
}

 main > h1 + .wp-block-buttons,
 main > h2 + .wp-block-buttons,
 main > h3 + .wp-block-buttons,
 main > h4 + .wp-block-buttons,
 main > h5 + .wp-block-buttons,
 main > h6 + .wp-block-buttons,
 main > p + .wp-block-buttons,
 main > ul + .wp-block-buttons,
 main > ol + .wp-block-buttons{
     margin-top: 2.5rem;
 }
 
 main > .wp-block-buttons + h1,
 main > .wp-block-buttons + h2,
 main > .wp-block-buttons + h3,
 main > .wp-block-buttons + h4,
 main > .wp-block-buttons + h5,
 main > .wp-block-buttons + h6,
 main > .wp-block-buttons + p,
 main > .wp-block-buttons + ul,
 main > .wp-block-buttons + ol{
     margin-top: 2.5rem;
 }
 
.bold{
    font-weight: bold;
}

 /* ==========================================================================
    Typography
    ========================================================================== */

h1{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 65px;
    line-height: 77px;
    text-transform: uppercase;
    color: #1F1F1F;
    margin-bottom: 1rem;
}

h2{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 40px;
    line-height: 41px;
    text-transform: uppercase;
    color: #1F1F1F;
    margin-bottom: 1rem;
}

h3{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 30px;
    line-height: 36px;
    letter-spacing: -0.02em;
    color: #1F1F1F;
    margin-bottom: 1rem;
}

h4{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 28px;
    color: #1F1F1F;
    margin-bottom: 1rem;
}

h5{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 21px;
    color: #1F1F1F;
    margin-bottom: 1rem;
}

h6{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 19px;
    letter-spacing: 0.16em;
    color: #ED1941;
    margin-bottom: 1rem;
}

p, li{
    font-family: 'Rubik', sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    color: #1F1F1F;
}

p{
    margin-bottom: 1rem;
}

p.small,
.small > p{
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
}

a{
    font-family: 'Rubik', sans-serif;
    color: #1F1F1F;
}

a:hover,
a:focus{
    color: #1F1F1F;
}

p:last-child{
    margin-bottom: 0;
}

h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child{
   margin-bottom: 0; 
}

.uppercase{
    text-transform: uppercase;
}

.blue{
    color: #00ACDB;
}

.red{
    color: #ED1941;
}

main p a,
main h1 a,
main h2 a,
main h3 a,
main h4 a,
main h5 a,
main h6 a,
main li a{
    color: #00ACDB;
}

main p a:hover,
main p a:focus,
main h1 a:hover,
main h1 a:focus,
main h2 a:hover,
main h2 a:focus,
main h3 a:hover,
main h3 a:focus,
main h4 a:hover,
main h4 a:focus,
main h5 a:hover,
main h5 a:focus,
main h6 a:hover,
main h6 a:focus,
main li a:hover,
main li a:focus{
    color: #00ACDB;
    text-decoration: underline;
}

main > ul > li,
main > ol > li{
    padding-bottom: 1rem;
}

 /* ==========================================================================
    Header
    ========================================================================== */

.site-header{
    position: relative;
    z-index: 99;
}

.top-header{
    background-color: #00ACDB;
    padding: 1rem 0;
}

.social-nav{
    list-style: none;
    display: inline-flex;
    margin: 0;
}

.top-header .social-nav{
    margin-left: 1rem;
}

.social-nav li{
    padding-right: 1rem;
}

.top-header .menu.menu-inline{
    display: inline-flex;
}

.top-header li a{
    color: #fff;
    font-weight: 500;
    font-size: 12px;
    line-height: 14px;
    padding-top: 0;
    padding-bottom: 0;
}

.top-header ul:not(.social-nav) li a img{
    margin-left: 1rem;
}

.top-header .menu:not(.align-right) li:first-child a{
    padding-left: 0;
}

.top-header .menu.align-right li:last-child a{
    /*padding-right: 0;*/
}

.bottom-header{
    padding: 1rem 0;
}

.bottom-header li a{
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;
}

.bottom-header .menu.align-right > li:last-child > a{
    /*padding-right: 0;*/
}

.main-menu{
    position: relative;
    display: inline-flex;
    flex-wrap: nowrap;
    margin-right: -1rem;
}

.main-menu ul{
    margin: 0;
    text-align: left;
}

.main-menu > li > ul{
    display: none;
    opacity: 0;
}

.main-menu > li.is-open > ul{
    display: flex;
}

.main-menu > li > ul{
    position: absolute;
    left: 0;
    right: 0;
    background-color: #fff;
    top: 50px;
    z-index: 99;
    padding-top: 0;
    padding-bottom: 1rem;
    justify-content: flex-start;
}

.menu.main-menu > li > ul li{
    display: block;
}

.menu-after{
    content: "";
    background-color: #fff;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    z-index: 1;
}

.top-header,
.bottom-header .grid-container{
    position: relative;
    z-index: 2;
}

.main-menu > li > a{
    text-align: center;
}

.main-menu > li > ul > li > a{
    color: #ED1941;
    font-weight: 500;
    font-size: 18px;
    line-height: 30px;
    text-transform: uppercase;
    padding-bottom: 1rem;
}

.main-menu > li > ul > li > a img{
    margin-left: 0.5rem;
}

.main-menu > li > ul > li > ul > li > a{
    padding: 0.5rem 1rem;
}

.main-menu > li > ul > li.no-click > a{
    font-weight: 600;
    font-size: 16px;
    line-height: 19px;
    color: #A7A7A7;
    text-transform: none;
    pointer-events: none;
}

.main-menu > li > ul > li.no-click > a img{
    display: none;
}

.main-menu > li.has-submenu > a{
    position: relative;
}

.main-menu > li.has-submenu > a:after{
    content: "";
    display: block;
    height: 3px;
    background-color: #00ACDB;
    width: 0%;
    margin-bottom: -2px;
    margin-top: 2px;
    transition: all 0.3s ease;
}

.main-menu > li.has-submenu.is-open > a:after{
    /*width: calc(100% - 2rem);*/
    width: 100%;
}

.header-expanding-search .search-form {
    width: 0;
    position: absolute;
    right: 0;
    top: -6px;
    /*bottom: -3px;*/
    transition: all 0.3s ease;
    overflow: hidden;
}

.header-expanding-search .search-form .input-group{
    margin: 0;
}

.header-expanding-search{
    display: inline-block;
    position: relative;
}

.top-header-right{
    text-align: right;
}

.top-header-right .menu{
    display: inline-flex;
    justify-content: flex-end;
}

.expanding-search-button span{
    color: #fff;
    font-weight: 500;
    font-size: 12px;
    line-height: 14px;
    padding-top: 0;
    padding-bottom: 0;
}

.expanding-search-button img{
    margin-left: 1rem;
}

.expanding-search-button{
    padding-left: 0.7rem;
}

.header-expanding-search.is-open .expanding-search-button {
    /*display: none;*/
    visibility: hidden;
}

.header-expanding-search.is-open .search-form {
    width: 200px;
}

.header-expanding-search.is-open{
    width: 200px;
}

.header-expanding-search button[type="submit"]{
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    cursor: pointer;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
}

.header-expanding-search .search-form input[type="text"]{
    box-shadow: none;
    border: 1px solid #ccc;
}

 /* ==========================================================================
    Mobile Nav
    ========================================================================== */

.mobile-menu-button{
    display: none;
}

.mobile-menu-exit{
    display: none;
}

.back-text{
    display: none;
}

.main-menu > li > ul > li.submenu-back{
    display: none;
}

.menu.align-right .mobile-lang-link{
    display: none;
}

.menu.align-right .mobile-only-link{
    display: none;
}

.header-expanding-search.search-mobile{
    display: none;
}

@media only screen and (max-width: 1225px){
    .main-menu > li > ul{
        top: 70px;
    }
    
    .main-menu li a{
        padding: 0.5rem 0.7rem;
    }
    
    .main-menu > li > a{
        font-size: 13px;
    }
    
    .main-menu > li.has-submenu > a:after{
        left: 0.7rem;
    }
    
    .main-menu > li.has-submenu.is-open > a:after {
        /*width: calc(100% - 1.4rem);*/
    }
    
    .top-header .menu li a{
        padding: 0.7rem 0.5rem;
    }
    
}

@media only screen and (max-width: 1024px){

  

  .top-header .social-nav {
    margin-left: 0;
  }

  .main-menu{
    /*display: none;*/
  }
  
  .menu-after{
    display: none;
  }
  
  .mobile-menu-button{
    display: block;
    position: absolute;
    right: 1rem;
    top: 0;
    bottom: 0;
    margin: auto;
    cursor: pointer;
    z-index: 1;
  }
  
  .bottom-header{
    position: relative;
  }
  
  .menu-wrapper-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateX(100%);
    z-index: 100;
    display: block;
    width: 100%;
    background-color: #fff;
    padding: 0;
    z-index: 3;
  }
  
  .menu-wrapper-header.transition {
    transition: all 0.6s ease;
  }
  
  .menu-wrapper-header.is-open {
    transform: translateX(0%);
  }
  
  .main-menu {
    display: block;
    text-align: left;
    width: 100%;
    padding-top: 3rem;
  }
  
  .main-menu.align-right li {
    justify-content: flex-start;
  }
  
  .mobile-menu-exit{
    display: inline-block;
    margin: 0;
    cursor: pointer;
    z-index: 150;
    position: absolute;
    right: 1rem;
    top: 2.5rem;
  }
  
  .main-menu > li.has-submenu > ul {
    display: block;
    position: absolute;
    top: 3rem;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translatex(100%);
    transition: all 0.3s ease;
    overflow: auto;
    opacity: 1!important;
  }
  
  .main-menu > li.has-submenu.is-open > ul {
    transform: translatex(0%);
  }
  
  .main-menu {
    display: block;
    position: static;
    justify-content: flex-start;
    overflow: auto;
    height: calc(100% - 3rem);
  }
  
  .main-menu > li.has-submenu > a:after{
      content: none;
  }
  
  .main-menu > li > ul > li.submenu-back{
      display: inline-block;
  }
  
  .main-menu > li > ul > li.submenu-back > a{
    font-weight: 600;
    font-size: 16px;
    line-height: 19px;
    color: #A7A7A7;
    text-transform: none;
  }
  
  .main-menu > li > ul > li > ul > li > a {
    padding: 0.5rem 0.7rem;
  }
  
  .main-menu > li > a {
    color: #ED1941;
    font-weight: 500;
    font-size: 18px;
    line-height: 30px;
    text-transform: uppercase;
    padding-bottom: 1rem;
  }
  
  .main-menu > li.has-submenu:after{
      content: "";
      width: 20px;
      height: 20px;
      background-image: url(img/arrow-right-red.svg);
      background-size: contain;
      background-position: center center;
      background-repeat: no-repeat;
      position: relative;
      top: 0.8rem;
  }
  
  .main-menu > li > ul > li.submenu-back img{
    margin-left: 0;
    margin-right: 0.5rem;
    width: 20px;
    margin-top: -3px;
  }
  
}

@media only screen and (max-width: 640px){
    .top-header{
        display: none;
    }
    
  .menu.align-right .mobile-only-link{
    display: flex;
  }

  .menu.align-right .mobile-lang-link {
    display: flex;
  }  
  
  .header-expanding-search.search-mobile{
    display: inline-block;
    position: absolute;
    right: 4rem;
    top: 1.45rem;
  }
  
  .header-expanding-search img{
    width: 22px;
  }
    
}

 /* ==========================================================================
    Footer
    ========================================================================== */

.site-footer{
    background-color: #1F1F1F;
    padding: 4rem 0 4rem 0;
    margin-top: 4rem;
}

.site-footer .menu li a{
    font-weight: 500;
    font-size: 18px;
    line-height: 22px;
    color: #fff;
    text-transform: uppercase;
    padding: 0 1rem;
}

.site-footer .menu li:first-child a{
    padding-left: 0;
}

.sub-footer-text{
    display: flex;
    justify-content: flex-end;
    padding-top: 1rem;
    flex-wrap: wrap;
}

.sub-footer-text p{
    color: #fff;
    margin: 1rem 0 0 0;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    text-transform: uppercase;
}

.land-acknowledgement{
    color: #fff;
    margin-top: 3rem;
    font-size: 14px;
    line-height: 1.7;
    width: 100%;
    text-transform: none;
    text-align: left;
    max-width: 40rem;
}

@media only screen and (max-width: 640px){
    .land-acknowledgement{
        margin-bottom: 2rem!important;
    }
}




 /* ==========================================================================
    Buttons
    ========================================================================== */

.button,
main .wp-block-button__link{
    margin: 0;
    font-weight: 500;
    font-size: 14px;
    line-height: 17px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background-color: #ED1941;
    color: #fff;
    border: 1px solid #ED1941;
    border-radius: 0px;
    transition: all 0.3s ease;
}

.button:hover,
.button:focus,
main .wp-block-button__link:hover,
main .wp-block-button__link:focus{
    background-color: #d21034;
    color: #fff;
}


main .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color){
    background-color: #fff;
    border: 2px solid #ED1941;
    color: #ED1941;
}

main .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):hover,
main .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color):focus{
    background-color: #ED1941;
    color: #fff;
}

.button-blue{
    background-color: #00ACDB;
    border: 1px solid #00ACDB;
}

.button-blue:hover,
.button-blue:focus{
    background-color: #0096bf;
}

.button-group .button{
    margin-left: 0.25rem;
    margin-right: 0.25rem;
}

.button-group{
    margin: 0 -0.25rem;
}

.button-grey {
    color: #1F1F1F;
    background-color: #e1e1e1;
    border: 1px solid #e1e1e1;
    font-weight: 100;
}

.button-grey:hover,
.button-grey:focus{
    color: #1F1F1F;
    background-color: #e1e1e1;
    border: 1px solid #e1e1e1;
}

 /* ==========================================================================
    Sections
    ========================================================================== */

.slide-wrapper{
    position: relative;
    overflow: hidden;
    padding: 6rem 0;
}

.slide-wrapper h1,
.slide-wrapper h3{
    color: #fff;
}

.slide-wrapper .grid-container{
    position: relative;
    z-index: 2;
}

.slide-background{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 1;
}

.section--slider{
    padding: 0;
}

.section--impact-area{
    position: relative;
    overflow: hidden;
    padding: 0;
}


.section--impact-area + h1,
.section--impact-area + h2,
.section--impact-area + h3,
.section--impact-area + h4,
.section--impact-area + h5,
.section--impact-area + h6,
.section--impact-area + p,
.section--impact-area + ul,
.section--impact-area + ol,
.section--impact-area + a{
    margin-top: 4rem;
}

main .section--resources:last-child{
    padding-bottom: 0;
}

.impact-background{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    z-index: 1;    
}

.impact-overlay{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background-color: rgba(0,0,0,0.5);
    z-index: 2;  
}

.section--impact-area .grid-container{
    position: relative;
    z-index: 3;
}

.impact-inner{
    position: relative;
    overflow: hidden;
    padding: 8rem 0;
}

.impact-inner h1,
.impact-inner h3{
    color: #fff;
}



.post-block a,
.featured-post a{
    text-decoration: underline;
    text-transform: uppercase;
    color: #ED1941;
    font-weight: 500;
    font-size: 14px;
    line-height: 17px;
}


.featured-post--image{
    padding: 12rem 0;
    margin-bottom: 1rem;
}

.grid-news{
    margin-top: 3rem;
}

.grid-news .button{
    margin-top: 3rem;
}

.post-block{
    display: flex;
}

.post-block--image{
    padding: 4rem 0;
    margin-bottom: 1rem;
    width: 30%;
}

.post-block-text{
    width: 70%;
    margin-left: 1rem;
    border-top: 1px solid #E1E1E1;
    padding: 1rem 0 0 0;
}

.post-block:last-child .post-block--image{
    margin-bottom: 0;
}

.post-list-cell{
    border-left: 1px solid #E1E1E1;
}

.grid-container.events-logos{
    text-align: center;
    max-width: 40rem;
    padding-bottom: 3rem;
}

.grid-container.events-logos h2{
    margin-bottom: 2rem;
}

.grid-container.events-countdown{
    text-align: center;
    max-width: 60rem;
    padding-bottom: 2rem;
}


.grid-container.event-description{
    text-align: center;
    max-width: 40rem;
    /*padding-bottom: 4rem;*/
}

.countdown-wrapper{
    display: flex;
    justify-content: center;
    margin-top: 2rem;
}

.event-countdown-number{
    text-align: center;
    border-right: 2px solid #E1E1E1;
    padding: 1rem 2rem;
}

.event-countdown-number:last-child{
    border-right: none;
}

.event-countdown-number .number{
    font-weight: 400;
    font-size: 60px;
    line-height: 71px;
    display: block;
}

.event-countdown-number .title{
    font-weight: 600;
    font-size: 18px;
    line-height: 21px;
    text-transform: uppercase;
    display: block;
}

.team-highlights table img{
    width: 30px;
}

.grid-container.team-highlights{
    max-width: 60rem;
}

.team-highlights .table-header{
    background-color: #ED1941;
    padding: 2rem;
}

.team-highlights .table-header h2{
    color: #fff;
    margin: 0;
}

.team-highlights table tr,
.team-highlights table td,
.team-highlights table th{
    background-color: #fff;
}

.team-highlights table,
.team-highlights th,
.team-highlights td {
  border: 1px solid #E1E1E1;
  border-collapse: collapse;
}

.team-highlights th{
    color: #00ACDB;
    text-transform: uppercase;
}

.team-highlights th,
.team-highlights td{
    padding: 1rem;
    text-align: center;
}

.team-highlights th.text-left,
.team-highlights td.text-left{
    text-align: left;
}

.sidebar-clubs-list{
    max-height: 30.5rem;
    /*overflow: auto;*/
    /*padding: 0 1rem 1rem 1rem;*/
}

.sidebar-clubs-list > ul {
    max-height: 30rem;
    overflow: auto;
}

.filter-category.is-active {
    font-weight: bold;
}

.section--find-a-club{
    background-color: #F1FCFF;
}

.find-a-club-sidebar{
    
    background-color: #fff;
}

.club-list-item{
    border-top: 2px solid #E5E5E5;
    padding: 1rem 0;
}

.club-list-item h4{
    text-transform: uppercase;
    color: #00ACDB;
}

.find-a-club-form .button{
    width: 49%;
    margin: 0;
}

.acf-map-static{
    height: 30rem;
}

.find-a-club-form .button-group{
    justify-content: space-between;
    margin: 0;
}

.find-a-club-form .button-group .button{
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
}

.find-a-club-form .button-group .button:first-child img{
    margin-right: 0.5rem;
}

.find-a-club-form .button-group .button:last-child img{
    margin-left: 0.5rem;
}

.find-a-club-form{
    padding: 1rem;
}

.find-a-club-form input[type="text"]{
    border: 2px solid #00ACDB;
    background-color: #fff;
    box-shadow: none;
    background-image: url(img/search-blue.svg);
    background-size: 18px;
    background-position: 2% 50%;
    background-repeat: no-repeat;
    padding-left: 2rem;
}

.find-a-club-form .dropdown-pane{
    width: 178px;
    padding: 0;
}

.section--find-a-club h2{
    margin-bottom: 2rem;
}

.grid-container.video-description{
    max-width: 40rem;
    padding-top: 3rem;
}

.video-parent{
    position: relative;
    padding: 12rem 0;
    cursor: pointer;
}

.video-parent.is-active{
    padding: 0;
}

.video-poster-bg{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background-color: #D9D9D9;
}

.section--video-feature h2{
    margin-bottom: 2rem;
}

.video-play-button{
    position: relative;
    z-index: 2;
}

.video-description h3{
    text-transform: uppercase;
}

.video-parent iframe{
    width: 100%;
    height: 30rem;
    display: none;
}

.video-parent video{
    width: 100%;
    height: 30rem;
    display: none;
}

.video-reveal iframe{
    width: 100%;
    height: 30rem;
}

.program-inner{
    position: relative;
    padding: 15rem 0 0 0;
}

.program-image{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.program-title{
    background: rgba(255, 255, 255, 0.9);
    padding: 1rem 3rem 1rem 1rem;
    position: relative;
    z-index: 2;
    max-width: calc(100% - 17rem);
}

.program-title h3{
    text-transform: uppercase;
}

.program-title a{
    text-transform: uppercase;
    color: #ED1941;
    font-weight: 500;
    font-size: 18px;
    line-height: 50px;
}

.program-title a img{
    margin-left: 1rem;
}

.icon-callout-inner{
    text-align: center;
    padding: 2rem;
    background-color: #F1FCFF;
}

.icon-callout-inner h5{
    text-transform: uppercase;
    color: #00ACDB;
}

.icon-callout-inner img{
    margin-bottom: 2rem;
    height: 7rem;
    max-width: none;
}

.section--icon-callouts .button{
    width: 100%;
}

.section--icon-callouts .button img{
    margin-left: 1rem;
}

.ad-banner{
    background-color: #D9D9D9;
    padding: 3rem;
    text-align: center;
}

.ad-banner h3{
    color: #fff;
}

.section--slider{
    margin-bottom: 4rem;
}

.section--slider h1,
.section--slider h3{
    margin-bottom: 2rem;
}

.slick-slide,
.slick-slider .slick-track,
.slick-slider .slick-list{
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);

  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);

  -webkit-perspective: 1000;
  -moz-perspective: 1000;
  -ms-perspective: 1000;
  perspective: 1000;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  backface-visibility: hidden;
}

ul.slick-dots{
    list-style: none;
    margin: 0;
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 2rem;
    left: 0;
    right: 0;
}

ul.slick-dots li{
    width: 22px;
    height: 22px;
    border: 2px solid #fff;
    border-radius: 100%;
    margin: 0 0.35rem;
    transition: all 0.3s ease;
    cursor: pointer;
}

ul.slick-dots li.slick-active{
    background-color: #fff;
}

ul.slick-dots li button{
    display: none;
}

.share-buttons{
    list-style: none;
    margin: 0;
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 0;
    z-index: 2;
    width: 100%;
}

.share-buttons li a{
    padding: 0.5rem 1.5rem;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    font-size: 1rem;
    line-height: 1;
}

.share-buttons li{
    transition: all 0.3s ease;
}

.share-buttons li.share-facebook {
    background-color: #3b5998;
}

.share-buttons li.share-tweet {
    background-color: #55acee;
}

.share-buttons li.share-email {
    background-color: #bbb;
}

.share-buttons li.share-print {
    background-color: #d7d7d7;
}


.share-buttons li.share-facebook:hover {
    background-color: #4264aa;
}

.share-buttons li.share-tweet:hover {
    background-color: #6cb7f0;
}

.share-buttons li.share-email:hover {
    background-color: #c8c8c8;
}

.share-buttons li.share-print:hover {
    background-color: #e4e4e4;
}


.featured-post-inner{
    display: flex;
    /*padding-bottom: 2rem;*/
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-top: 1px solid #ccc;
}


.featured-post-image-wrapper{
    width: 50%;
}

.featured-post-image{
    height: 100%;
}

.featured-post-text{
    padding: 6rem 4rem;
    width: 50%;
}


.post-inner{
    display: flex;
    /*padding: 2rem 0;*/
    /*border-bottom: 1px solid #ccc;*/
    /*border-right: 1px solid #ccc;*/
}

.post-inner.swimmer .post-image{
    /*padding: 12rem 0;*/
    background-position: top center !important;
}

.post-image-wrapper{
    width: 48%;
}

.post-image{
    height: 100%;
}

.post-text{
    padding: 1rem 2rem;
    width: 52%;
}

.post-text h3 {
    font-size: 26px;
    line-height: 28px;
}

.load-more{
    padding-top: 4rem;
}

.post-inner:hover,
.featured-post-inner:hover{
    background-color: #fafafa;
}

.post-inner,
.featured-post-inner{
    padding: 2rem;
    height: 100%;
    cursor: pointer;
    transition: all 0.3s ease;
}

.section--news{
    padding: 0;
}

.details-list{
    list-style: none;
    margin: 0;
    border-top: 1px solid #e1e1e1;
}

.details-list li {
    border-bottom: 1px solid #e1e1e1;
}

.details-label {
    font-weight: 700;
    text-transform: uppercase;
    color: #1f1f1f;
    width: 180px;
}

.details-label,
.details-value{
    padding: 0.5rem;
    display: inline-block;
    position: relative;
    font-size: 0.9rem;
}

.details-label:after {
    content: "";
    position: absolute;
    top: -1px;
    bottom: -1px;
    width: 5px;
    background-color: #00aad8;
    right: 0;
}

.section--padded-content .grid-container > a,
.section--padded-content .grid-container > p a{
    display: inline-block;
    color: #0094c8;
    font-weight: 500;
    font-size: 14px;
}

.section--padded-content .grid-container > p a:hover,
.section--padded-content .grid-container > p a:focus,
.section--padded-content > a:hover,
.section--padded-content > a:focus{
    text-decoration: underline;
}

.section--coach-details h2{
    margin-bottom: 2rem;
}

.share-buttons svg {
    fill: #fff;
    width: 21px;
    height: 21px;
}

.share-buttons li a span{
    line-height: 21px;
    padding: 0 9px;
}

.event-dates{
    position: relative;
    background-color: #1f1f1f;
    padding: 2rem;
    margin-bottom: 4rem;
}

.event-dates *{
    color: #fff;
}

.section--resources .grid-container{
    max-width: 60rem;
}

.section--impact-area + section{
    margin-top: 4rem;
}

.section--impact-area + section.section--ad-banner{
    margin-top: 0;
}

.section--related-news{
    padding: 0;
}

.section--related-news:last-child{
    margin-bottom: -4rem;
}

.section--related-news .post-inner{
    border-top: 1px solid #ccc;
}

.page-action-link{
    background-color: #00aad8;
    display: block;
    padding: 2rem;
    position: relative;
    transition: all 0.3s ease;
}

.page-action-link > div{
    display: flex;
    align-items: center;
    max-width: 500px;
}

.page-action-link > img{
    position: absolute;
    right: 2rem;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 1rem;
}

.page-action-link:hover {
    background-color: #0096bf;
}

.page-action-link.light-blue {
    background-color: #63cbe8;
}

.page-action-link.light-blue:hover {
    background-color: #37bce1;
}

.page-action-link h4{
    color: #fff;
    text-transform: uppercase;
}

.rankings-content{
    padding-bottom: 3rem;
}

.rankings-content .cell{
    padding-bottom: 2rem;
}

.select-form{
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
}

.select-form a.button.button-grey.button-back-to-meet {
    white-space: nowrap;
}

.select-form .select2-container{
    margin: 0;
    width: 25%!important;
}

.section--swimmer-rankings .select-form .select2-container{
    margin: 0;
    width: 20%!important;
}

.select2-container--default .select2-selection--single{
    border-radius: 0px;
    border: 1px solid #00ACDB;
    color: #00ACDB;
    padding: 0.5rem;
    height: auto;
    position: relative;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 1px;
    right: 1px;
    bottom: 0;
    margin: auto;
}

.select2-container--default .select2-selection--single .select2-selection__rendered{
    color: #00ACDB;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #00ACDB transparent transparent transparent;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent #00ACDB transparent;
}

.wp-block-image{
    padding: 2rem 0;
}

.sponsor-list{
    list-style: none;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.sponsor-list li{
    width: 50%;
    /*height: 240px;*/
    display: flex;
    justify-content: center;
    align-items: center;
}

.sponsor-list li.medium-6{
    width: 50%;
}

.sponsor-list li.medium-4{
    width: 33.333%;
}

.sponsor-list li.medium-12{
    width: 100%;
}


.sponsor-list li a{
    padding: 1rem;
    display: inline-block;
}

.section-heading{
    border-bottom: 1px solid #e1e1e1;
    border-top: 1px solid #e1e1e1;
    padding: 2rem 0;
}

 /* ==========================================================================
    Sidebar Nav
    ========================================================================== */


.sidebar-nav{
    background-color: #00aad8;
    height: 100%;
}

.sidebar-nav ul.accordion{
    margin: 0;
}

.sidebar-nav .accordion-title{
    background-color: #0094c8;
    border: none;
    border-bottom: 1px solid #00aad8;
    border-top: none;
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 14px;
}

.sidebar-nav ul.accordion li:last-child > .accordion-title{
    border-bottom: 1px solid #00aad8;
}

.sidebar-nav ul.accordion li:last-child > .accordion-content:last-child {
    border-bottom: 1px solid #00aad8;
}

.page-template-template-resource-nav .site-footer{
    margin-top: 0;
}

.sidebar-nav .accordion-item.is-active .accordion-title {
    background-color: #00aad8;
}

.sidebar-nav .accordion-content{
    background-color: #00aad8;
    border-color: #00aad8;
}

.sidebar-nav .accordion-content ul{
    list-style: none;
    margin: 0;
}

.sidebar-nav .accordion-content ul li{
    padding-bottom: 1rem;
}

.sidebar-nav .accordion-content ul li a{
    color: #fff;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 14px;
}

.sidebar-template-content{
    padding-bottom: 4rem;
}

.partner-inner{
    display: flex;
    align-items: center;
    padding: 2rem;
    border-bottom: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
    height: 100%;
}

.partners-grid{
    border-top: 1px solid #e1e1e1;
}

.partners-grid .cell:nth-child(even) .partner-inner{
    border-right: 1px solid #e1e1e1;
}

.partner-info{
    padding-left: 2rem;
}

.section--partners h2{
    margin-bottom: 3rem;
}

.partner-comms p{
    margin: 0;
}

.section--impact-area .button{
    margin-top: 2rem;
}

.section--impact-area.large-impact .impact-inner{
    padding: 15rem 0;
}

.accordion-contact-us{
    margin-top: 3rem;
}

.accordion-contact-us .accordion-title{
    text-transform: uppercase;
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
    /*color: #00ACDB;*/
    border: none;
}

.accordion-contact-us .accordion-title:hover,
.accordion-contact-us .accordion-title:focus{
    background-color: transparent;
    color: #00ACDB;
}

.accordion-contact-us h4{
    font-weight: 600;
    font-size: 20px;
    line-height: 24px;
}

.accordion-contact-us .accordion-content{
    padding: 3rem 3rem 0 3rem;
    border: none;
}

.accordion-contact-us .accordion-content .cell{
    padding-bottom: 3rem;
}

.accordion-contact-us .accordion-item:last-child:not(.is-active) > .accordion-title{
    border: none;
}

.accordion-contact-us .accordion-item:last-child > .accordion-content:last-child{
    border: none;
}

.accordion-contact-us .accordion-item{
    border-bottom: 1px solid #e1e1e1;
}

.accordion-contact-us .accordion-item:first-child{
    border-top: 1px solid #e1e1e1;
}

.image-callout-inner{
    position: relative;
    text-align: center;
    min-height: 90vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem 4rem;
    overflow: hidden;
}

.image-callout-background{
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    transition: all 0.3s ease;
}

.image-callout-overlay{
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   z-index: 2;
   background-color: rgba(0,0,0,0.5);
   transition: all 0.3s ease;
}

.image-callout-inner h2,
.image-callout-inner p,
.image-callout-inner ul{
    position: relative;
    z-index: 5;
    color: #fff;
}

.image-callout-inner h2{
    margin-bottom: 2rem;
}

.image-callout-inner p{
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
}

.image-callout-inner ul{
    list-style: none;
}

.image-callout-inner ul li{
    margin-bottom: 2rem;
}

.image-callout-inner ul li a{
    text-transform: uppercase;
    font-weight: 600;
    display: flex;
    color: #fff;
}

.image-callout-inner ul li a:hover,
.image-callout-inner ul li a:focus{
    text-decoration: underline;
}

.image-callout-inner p img,
.image-callout-inner a img{
    margin-left: 0.5rem;
    width: 10px;
}

.section--image-callouts{
    padding: 0;
}

.section--image-callouts:last-child{
    margin-bottom: -4rem;
}

.image-callout-inner a.full-link{
   position: absolute;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   z-index: 6;
}

.image-callout-inner:hover .image-callout-overlay{
    background-color: rgba(0,0,0,0.75);
}

.image-callout-inner:hover .image-callout-background{
    transform: scale(1.1);
}

.hpc-inner{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    border-bottom: 1px solid #e1e1e1;
}

.hpc-content{
    width: 30%;
    padding-right: 2rem;
}

.hpc-image{
    width: 70%;
}

.section--high-performance-centres .cell:first-child .hpc-inner{
    border-top: 1px solid #e1e1e1;
}

.inline-form-select{
    display: flex;
    justify-content: flex-end;
}

.news-search{
    position: relative
}

.news-search button{
    position: absolute;
    right: 0.5rem;
    top: 0;
    bottom: 0;
    cursor: pointer;
}

.news-search input[type="text"]{
    margin: 0;
    border: 1px solid #00ACDB;
    box-shadow: none;
}

.news-search{
    padding-left: 1rem;
}

.filter-search{
    position: relative
}

.filter-search button{
    position: absolute;
    right: 0.5rem;
    top: 0;
    bottom: 0;
    cursor: pointer;
}

.filter-search input[type="text"]{
    margin: 0;
    border: 1px solid #00ACDB;
    box-shadow: none;
}

.filter-search{
    padding-left: 1rem;
}

.active-para-search input[type="text"]{
    margin: 0;
    border: 1px solid #00ACDB;
    box-shadow: none;
    background-image: url(img/icon-search-blue.svg);
    background-size: 20px;
    background-position: right 10px center;
    background-repeat: no-repeat;
    padding-right: 2rem;
}

.active-para-search{
    padding-bottom: 2rem;
}

.active-para-search .cell{
    margin-left: auto;
}

.news-header .select2-container{
    width: 200px!important;
}

.news-header{
    padding-bottom: 2rem;
    padding-top: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

.inline-form-select .select2-container--default .select2-selection--single{
    padding: 0.282rem;
    height: auto;
}

.inline-form-select .select2-container--default .select2-selection--single .select2-selection__arrow{
    top: 0;
    bottom: 0;
    margin: auto;
}

.inline-form-select input::placeholder {
    color: #00ACDB;
}

.youtube-pdf-item-info{
    padding-bottom: 2rem;
}

.youtube-pdf-item-info p{
    margin: 0;
}

.youtube-pdf-icon-links{
    display: flex;
    justify-content: center;
    margin-top: 1rem;
}

.youtube-pdf-icon-links img{
    max-width: 40px;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}

.youtube-pdf-embed{
    text-align: center;
    padding-bottom: 2rem;
}

.youtube-pdf-embed iframe{
    max-width: 100%;
}

.youtube-repeater-thumbnail{
    padding: 6rem 0;
    cursor: pointer;
}

.youtube-repeater-thumbnail img{
    max-width: 4rem;
}

.section--youtube-pdf-repeater{
    padding-bottom: 2rem;
}

.annual-report-thumbnail{
    padding: 7rem 0;
    margin-bottom: 2rem;
}

.section--annual-reports .cell{
    padding-bottom: 2rem;
}

.section--annual-reports{
    padding-bottom: 2rem;
}

.annual-report-thumbnail{
    border: 2px solid #fff;
    transition: all 0.3s ease;
}

.annual-report-link:hover .annual-report-thumbnail{
    border: 2px solid #00ACDB;
}

.section--link-groups ul{
    list-style: none;
    margin: 0;
}

.section--link-groups ul li a{
    display: inline-block;
    padding: 0.5rem 0.5rem;
    margin-bottom: 0.5rem;
    background-color: rgba(99, 203, 232, .1);
    color: #3c3c3c;
    text-decoration: none;
    transition: color .1s ease, background-color .1s ease;
    font-size: 12px;
    border-radius: 17px;
}

.section--link-groups ul li a:hover,
.section--link-groups ul li a:focus{
    color: #3c3c3c;
    background-color: rgba(99, 203, 232, .5);
}

.section--link-groups ul li{
    display: block;
}

.section--link-groups ul li:last-child{
    margin-bottom: 0;
}

.link-group-inner{
    border: 2px solid #00ACDB;
    padding: 2rem;
    height: 100%;
    border-radius: 10px;
}


.box-callout{
    text-align: center;
    border: 2px solid #00ACDB;
    padding: 2rem;
    height: 100%;
}

.section--box-callouts .cell{
    padding-bottom: 2rem;
}

.section--box-callouts{
    padding-bottom: 2rem;
}

.box-callout.large h4{
    font-size: 40px;
    line-height: 50px;
    font-weight: 600;
}

.box-callout.large h5{
    font-size: 40px;
    line-height: 50px;
    font-weight: 600;
}

.box-callout.large .button{
    font-size: 22px;
    line-height: 24px;
    margin-top: 1rem;
}

.section--meets table + table,
.section--events table + table{
    margin-top: 3rem;
}


.partner-logo img{
    max-height: 12rem;
}

.partner-logo {
    max-width: 25%;
}

.section.section--single-team{
    padding-bottom: 4rem;
}

.section--search{
    padding-top: 0;
}

.section--search .news-header{
    border-bottom: 1px solid #ccc;
}

.section--404 svg{
    margin-bottom: 2rem;
}

.acf-map {
    width: 100%;
    height: 400px;
}

.acf-map img {
   max-width: inherit!important;
}

.section--teams table .button{
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.section--latest-events table{
    table-layout: fixed;
}

.dynamic-clubs-list{
    list-style: none;
    margin: 0;
}

.dynamic-clubs-list > li {
    padding: 1rem 0;
    border-top: 2px solid #E5E5E5;
}

.dynamic-clubs-list > li {
    transition: all 0.3s ease;
    padding-left: 1rem;
    padding-right: 1rem;
}

.dynamic-clubs-list > li.view-location {
    cursor: pointer;
}

.view-location:hover, 
.view-location.is-active {
    background-color: #00ACDB;
}

.view-location:hover *, 
.view-location.is-active * {
    color: #fff;
}

.dynamic-clubs-list > li h3 {
    font-style: normal;
    font-weight: normal;
    font-size: 18px;
    line-height: 30px;
    text-transform: uppercase;
    color: #00ACDB;
}


.accordion-title{
    background-color: #00aad8;
    color: #fff;
    font-size: 1.5em;
    text-align: left;
    text-transform: uppercase;
    border: none;
    border-bottom: 2px solid #fff;
    font-weight: bold;
}

.accordion-title:hover,
.accordion-title:focus{
     background-color: #00aad8;
    color: #fff;
}

.accordion-content{
    border: none;
    padding: 2rem 1rem;
}

:last-child > .accordion-content:last-child {
    border-bottom: none;
}

.event-expired-info{
    display: none;
    padding-top: 2rem;
}

.social-nav li a[data-type="linkedin"] img{
    margin-top: -2px;
}

.filter-header{
    padding-bottom: 3rem;
}

.filter-header .select2-container,
.filter-header form{
    margin-left: 1rem;
    /*width: 25%!important;*/
    padding-left: 0;
}

/*french header*/

.site-header-fr .bottom-header li a{
    padding: 0.7rem 0.75rem;
    font-size: 13px;
}

@media only screen and (max-width: 1160px){
    .site-header-fr .bottom-header li a{
        padding: 0.7rem 0.5rem;
        font-size: 13px;
    }
}

@media only screen and (max-width: 1091px){
    .site-header-fr .bottom-header li a{
        padding: 0.7rem 0.25rem;
        font-size: 12px;
    }
}

@media only screen and (max-width: 1024px){
    
    .site-header-fr .bottom-header li a {
        font-weight: 400;
        font-size: 14px;
        line-height: 17px;
        padding: 0.5rem 0.7rem;
    }
    
    .site-header-fr .main-menu > li > ul > li > a {
        color: #ED1941;
        font-weight: 500;
        font-size: 18px;
        line-height: 30px;
        text-transform: uppercase;
        padding-bottom: 1rem;
    }
    
    .site-header-fr .main-menu > li > ul > li.submenu-back > a {
        font-weight: 600;
        font-size: 16px;
        line-height: 19px;
        color: #A7A7A7;
        text-transform: none;
    }
    
    .site-header-fr .main-menu > li > a {
        color: #ED1941;
        font-weight: 500;
        font-size: 18px;
        line-height: 30px;
        text-transform: uppercase;
        padding-bottom: 1rem;
    }
}


.section--impact-area + .wp-block-buttons{
    margin-top: 2rem;
}

 /* ==========================================================================
    Charts/Tables
    ========================================================================== */

table td,
table th{
    color: #636363;
}

table th{
    text-transform: uppercase;
}

caption {
    position: relative;
    caption-side: top;
    margin-bottom: 1rem;
    padding: 0.5em;
    background-color: #00aad8;
    color: #fff;
    font-size: 1.5em;
    text-align: left;
    text-transform: uppercase;
}

.table-half{
    width: 50%;
}

.table-third{
    width: 33.333%;
}

.table-row{
    display: flex;
}

caption .light-text {
    font-size: .65em;
    font-weight: 400;
}

tbody th,
tbody td{
    text-align: left;
    padding-bottom: 1rem;
    padding-top: 1rem;
}

tbody td {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

tbody tr,
thead,
tbody tr:nth-child(even){
    background-color: #fff;
}

thead, 
tbody, 
tfoot{
    border: none;
}

thead th {
    border-bottom: 5px solid #00aad8;
}

tbody .row-heading th {
    color: #00aad8;
    border-bottom: 3px solid #00aad8;
    padding-top: 2rem;
}


table a {
    padding: 0.1em 0.3em 0.3em;
    background-color: rgba(99, 203, 232, .1);
    color: #3c3c3c;
    text-decoration: none;
    transition: color .1s ease, background-color .1s ease;
    font-size: 1rem;
}

table a:focus, 
table a:hover {
    color: #3c3c3c;
    background-color: rgba(99, 203, 232, .5);
}


.table-caption .c1-3, 
.table-caption .c2-3, 
.table-caption .c3-3, 
caption .c1-3, 
caption .c2-3, 
caption .c3-3 {
    width: 33.33333%;
    display: inline-block;
}

caption .c1-2, 
caption .c2-2{
    width: 50%;
    display: inline-block;
}

.table-caption .c3-3, caption .c3-3,
.table-caption .c2-2, caption .c2-2 {
    text-align: right;
}

.section--records tbody th {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.table-caption .c2-3, caption .c2-3 {
    text-align: center;
}

.wp-block-table {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.wp-block-table tr td, 
.wp-block-table tr th{
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.wp-block-table tr th{
    border-bottom: 3px solid #00aad8;
}

.video-reveal video{
    max-width: 100%;
}

.video-reveal{
    padding: 2.5rem;
}

.video-reveal iframe{
    aspect-ratio: 16/9;
    height: auto;
}

.section--latest-events + .section--team-highlights{
    padding-top: 0;
}

.section--team-members .grid-x{
    padding-bottom: 4rem;
}

.section--team-members{
    padding-bottom: 0;
}

.team-member-photo{
    padding: 12rem 0;
}

i.fa.fa-upload{
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    background-image: url(img/icon-upload.svg);
    background-size: 15px;
    background-position: center center;
    background-repeat: no-repeat;
}

i.fa.fa-download{
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0;
    background-image: url(img/icon-download.svg);
    background-size: 15px;
    background-position: center center;
    background-repeat: no-repeat;
}

span.tablesaw-cell-content {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

span.tablesaw-cell-content span.right{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

span.tablesaw-cell-content span.right a{
    line-height: 1;
}

 /* ==========================================================================
    Responsive
    ========================================================================== */

@media only screen and (max-width: 1024px){

    h1{
        font-weight: 600;
        font-size: 45px;
        line-height: 57px;
    }
    
    h2{
        font-weight: 600;
        font-size: 30px;
        line-height: 35px;
    }
    
    h3{
        font-weight: 600;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.02em;
    }
    
    h4{
        font-weight: 600;
        font-size: 22px;
        line-height: 24px;
    }
    
    h5{
        font-weight: 600;
        font-size: 16px;
        line-height: 19px;
    }
    
    h6{
        font-weight: 600;
        font-size: 16px;
        line-height: 19px;
        letter-spacing: 0.16em;
    }
    
    p, li{
        font-weight: 400;
        font-size: 16px;
        line-height: 19px;
    }
    
    p.small,
    .small > p{
        font-weight: 400;
        font-size: 12px;
        line-height: 14px;
    }
    
    a{
        font-weight: 400;
        font-size: 12px;
        line-height: 14px;
    }
    
    .event-countdown-number .number {
        font-weight: 400;
        font-size: 50px;
        line-height: 60px;
    }
    
    .section--icon-callouts .cell{
        padding-bottom: 2rem;
    }
    
    .section--icon-callouts{
        padding-bottom: 2rem;
    }
    
    .program-title{
        max-width: 100%;
    }
    
    .site-footer .menu li a{
        padding-left: 0;
    }
   
}

@media only screen and (max-width: 640px){
    .events-logos img{
        margin-bottom: 1rem;
    }
    
    .featured-post{
        padding-bottom: 2rem;
    }
    
    .program-title{
        max-width: 100%;
    }
    
    .program-inner{
        margin-bottom: 2rem;
    }
    
    .cell:last-child .program-inner{
        margin-bottom: 0;
    }
    
    .map-wrapper{
        margin-top: 2rem;
    }
    
    .event-countdown-number{
        padding: 1rem;
    }
    
    .site-footer .cell{
        text-align: center;
    }
    
    .site-footer .menu{
        justify-content: center;
        margin-bottom: 2rem;
    }
    
    .sub-footer-text{
        display: block;
    }
    
    .site-footer .menu li a{
        padding: 0.5rem;
    }
    
    .video-parent {
        position: relative;
        padding: 5rem 0;
    }
    
    
    .sponsor-list li.medium-6{
        width: 100%;
    }
    
    .sponsor-list li.medium-4{
        width: 100%;
    }
    
    .sponsor-list li.medium-12{
        width: 100%;
    }
}


 @media print {
    header{
        display: none;
    }
     
    footer{
        display: none;
    }
     
    .sidebar-nav{
        display: none;
    }
    
    .impact-inner{
        padding: 2rem 0 0 0;
    }
    
    .section--impact-area + section{
        margin-top: 0;
    }
    
    .share-buttons{
        display: none;
    }
    
    h1{
        font-weight: 600;
        font-size: 45px;
        line-height: 57px;
    }
    
    h2{
        font-weight: 600;
        font-size: 30px;
        line-height: 35px;
    }
    
    h3{
        font-weight: 600;
        font-size: 25px;
        line-height: 30px;
        letter-spacing: -0.02em;
    }
    
    h4{
        font-weight: 600;
        font-size: 22px;
        line-height: 24px;
    }
    
    h5{
        font-weight: 600;
        font-size: 16px;
        line-height: 19px;
    }
    
    h6{
        font-weight: 600;
        font-size: 16px;
        line-height: 19px;
        letter-spacing: 0.16em;
    }
    
    p, li{
        font-weight: 400;
        font-size: 16px;
        line-height: 19px;
    }
 }
 
 
 .table-result-single thead th{
    padding-top: 1rem;
 }
 
 .table-result-single caption{
    margin-bottom: 0;
 }
 
 .section--swimmer-rankings h4{
     margin-top: 2rem;
 }
 
 .section--swimmer-rankings h4:first-child{
     margin-top: 0;
 }
 
 
.section--swimmer-rankings .details-list a {
    padding: 0.1em 0.3em 0.3em;
    background-color: rgba(99, 203, 232, .1);
    color: #3c3c3c;
    text-decoration: none;
    transition: color .1s ease, background-color .1s ease;
    font-size: 1rem;
    display: inline-block;
    margin: 0.5rem 0;
}

 .section--swimmer-rankings h4 a{
     color: #1f1f1f;
 }
 
 .section--swimmer-rankings h4 a:hover,
 .section--swimmer-rankings h4 a:focus{
     color: #1f1f1f;
 }

.rankings-content--title{
    padding-bottom: 2rem;
    padding-left: 0;
    padding-right: 0;
}

.rankings-content--title h4,
.rankings-content--title p{
    margin: 0;
}

.rankings-content--title p{
    font-weight: 600;
}

.rankings-content--time{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 40px;
    line-height: 41px;
    text-transform: uppercase;
    color: #00ACDB;
}

.section--swimmer-rankings table + table{
    margin-top: 2rem;
}

span.tablesaw-cell-content img.medal-icon{
    margin-left: 0.25rem;
}

/*select2 fix*/

/*html {*/
/*    margin-top: 0!important;*/
/*}*/

.js-select{
    opacity: 0!important;
}

.filter-header form[role="search"]{
    opacity: 0;
}

.section--rankings form.filter-search.inline-form-select,
.filter-header .select2 + form{
    opacity: 1;
}

.filter-header select {
    border-radius: 0px;
    border: 1px solid #00ACDB;
    color: #00ACDB;
    padding: 0.5rem;
    height: auto;
    position: relative;
}

.section--swimmer-rankings[data-ranking="swimmer"] .select-form .select2-container{
    width: 25%!important;
}

.section--rankings h2 + .select-form{
    margin-top: 2rem;
}

.section--swimmer-bios h2{
    margin-bottom: 2rem;
}


div#wpadminbar ~ span.select2-container, 
body.admin-bar > span.select2-container {
	padding-top: 32px !important;
}

@media screen and ( max-width: 782px ) {
	div#wpadminbar ~ span.select2-container, 
	body.admin-bar > span.select2-container {
		padding-top: 46px !important;
	}
}


@media screen and ( max-width: 640px ) {
    .grid-container:has(table){
        overflow-x: auto;
    }
    
    .team-highlights th, .team-highlights td {
        padding: 0.5rem;
        text-align: center;
    }
    
    .team-highlights table img {
        width: 20px;
        max-width: 20px;
    }
}

.pagination{
    display: flex;
    justify-content: center;
    margin-top: 4rem;
}


div#BambooHR{
    padding-right: 1rem;
    padding-left: 1rem;
    padding-top: 4rem;
    max-width: 80rem;
    margin: 0 auto;
}

div#BambooHR .BambooHR-ATS-board > h2{
    font-family: 'Rubik', sans-serif;
    font-weight: 600;
    font-size: 40px;
    line-height: 41px;
    text-transform: uppercase;
    color: #00ACDB;
    margin-bottom: 1rem;
}

div#BambooHR ul.BambooHR-ATS-Jobs-List{
    padding-left: 0!important;
    margin-left: 0!important;
}

div#BambooHR .BambooHR-ATS-Jobs-Item {
    padding-top: 0.5rem;
}

th[data-sort]{
    position: relative;
    cursor: pointer;
}

th[data-sort]:before{
    content: "";
    border-color: #00ACDB transparent transparent transparent;
    width: 10px;
    height: 10px;
    display: block;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    position: absolute;
    right: 10px;
    bottom: 8px;
}

th[data-sort]:after{
    content: "";
    border-color: #00ACDB transparent transparent transparent;
    width: 10px;
    height: 10px;
    display: block;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    position: absolute;
    right: 10px;
    top: 8px;
    transform: rotate(180deg);
}

th[data-order="desc"]:after{
    opacity: 0;
}

th[data-order="asc"]:before{
    opacity: 0;
}

h3.placeholder-text{
    text-transform: uppercase;
}

.section--find-a-club .map-trigger .find-a-club-sidebar{
    display: none;
}

.section--find-a-club .cell > h3.placeholder-text{
    display: none;
}

.section--find-a-club .map-trigger  .cell > h3.placeholder-text{
    display: block;
}

.map-trigger{
    cursor: pointer;
}

.dynamic-clubs-list.is-loading .no-clubs-text{
    display: none;
}