@font-face {
    font-family: 'graphik';
    src: url("http://www.ucocsi.com/proxy.php?url=https%3A%2F%2Fen.usports.ca%2Fgraphik-regular-webfont.woff2") format('woff2'),
         url("http://www.ucocsi.com/proxy.php?url=https%3A%2F%2Fen.usports.ca%2Fgraphik-regular-webfont.woff") format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'graphiksemibold';
    src: url("http://www.ucocsi.com/proxy.php?url=https%3A%2F%2Fen.usports.ca%2Fgraphik-semibold-webfont.woff2") format('woff2'),
         url("http://www.ucocsi.com/proxy.php?url=https%3A%2F%2Fen.usports.ca%2Fgraphik-semibold-webfont.woff") format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'timmonsny';
    src: url("http://www.ucocsi.com/proxy.php?url=https%3A%2F%2Fen.usports.ca%2Ftimmons_ny_final-webfont.woff2") format('woff2'),
         url("http://www.ucocsi.com/proxy.php?url=https%3A%2F%2Fen.usports.ca%2Ftimmons_ny_final-webfont.woff") format('woff');
    font-weight: normal;
    font-style: normal;

}

.wiki-hidden a[rel='wiki-link'] { display:none } 

.loading-bars {
  width: var(--loading-bars-width, 40px);
  aspect-ratio: 1;
  --c: no-repeat linear-gradient(var(--bs-primary) 0 0);
  background: 
    var(--c) 0%   50%,
    var(--c) 50%  50%,
    var(--c) 100% 50%;
  background-size: 20% 100%;
  animation: b1 1s infinite linear;
}
@keyframes b1 {
  0%  {background-size: 20% 100%,20% 100%,20% 100%}
  33% {background-size: 20% 10% ,20% 100%,20% 100%}
  50% {background-size: 20% 100%,20% 10% ,20% 100%}
  66% {background-size: 20% 100%,20% 100%,20% 10% }
  100%{background-size: 20% 100%,20% 100%,20% 100%}
}

:root {
  --primary-font: "graphik", sans-serif;
  --secondary-font: "graphiksemibold", sans-serif;
  --tertiary-font: "timmonsny", sans-serif;
  --hamburger-color:var(--bs-secondary);
}

* { margin:0; padding:0; box-sizing:border-box }
html { scroll-padding-top:80px; scroll-behavior:smooth }
body { font-family:var(--primary-font), sans-serif }
h1,h2,h3,h4,h5,h6 { font-family:var(--secondary-font) }
.landing h2 { font-family:var(--tertiary-font); text-transform:uppercase }
img { max-width:100% }
:focus-visible { outline:solid 3px var(--bs-secondary) !important; box-shadow:none !important }

.landing select { font-family:var(--secondary-font); color:#444 }
.landing ul,
.landing li { margin:0; padding:0; list-style:none }

.modal-title { font-family:var(--secondary-font) !important }
.form-select-sm { padding-left:0.25rem }

.page { position:relative }
.internal-page .page-main { margin:1rem 0 } 
.internal-page .page-main > div { min-height:400px }

.landing .archive-link { text-align:center }
.landing .archive-link .btn-link { --bs-btn-bg:var(--bs-primary); --bs-btn-color:#fff; --bs-btn-border-radius:1rem; --bs-btn-hover-border-color:var(--bs-primary); font-family:var(--secondary-font); font-size:1rem; padding:8px 24px; line-height:1; text-decoration:none; text-transform:uppercase }
.landing .archive-link .btn-link:focus-visible { border-color:var(--bs-secondary); color:var(--bs-primary) }

.landing .hx-req-holder { --loading-bars-width:36px; min-height:100px; display:flex; justify-content:center; align-items:center }

.landing .section-head { display:flex; align-items:center; margin-bottom:0.5rem }
.landing .section-head h2 { margin:0; font-size:3.2rem; line-height:1 }
.landing .section-head div { flex:1; display:flex; justify-content:flex-end; height:2.4rem; margin-left:1rem; background:var(--bs-primary) }

.landing .nav-tabs { display:flex; margin-bottom:0.625rem; --bs-nav-tabs-border-width:0; --nav-tabs-border-radius:0; --bs-nav-tabs-link-color:var(--bs-tertiary); --bs-nav-tabs-link-active-color:#000 }
.landing .nav-tabs .nav-link { padding:0; color:#777; border:none; border-radius:0 }
.landing .nav-tabs .nav-item.active .nav-link { color:var(--bs-primary); background:none }
.landing .nav-tabs .nav-item { position:relative; padding-bottom:2px; display:flex; align-items:center }
.landing .nav-tabs .nav-item .nav-link::after { content:''; position:absolute; left:0; bottom:0; width:100%; height:3px; transform-origin:bottom left }
.landing .nav-tabs .nav-item:not(:first-child)::before { content:'|'; margin:0 1rem; color:#999 }
.landing .nav-tabs .nav-item .nav-link:hover::after { width:0; background:#cfcfcf; animation-name:growLine; animation-duration:.4s; animation-fill-mode:forwards }
.landing .nav-tabs .nav-item.active .nav-link::after { width:100%; background:var(--bs-secondary) }

@keyframes growLine {
  to {
    width:100%
  }
}

/* HTMX TABS SWAPPING */
.htmx-content { opacity:1;  transition:opacity .25s } 
.htmx-swapping .htmx-content,
.htmx-added .htmx-content { opacity:0 }

/* HIDE THE SWITCHER SELECT ELEMENT */
.hx-tabs > select { display:none }

/* HEADER */
.header .header-top { border-bottom:solid 1px #fff; background:var(--bs-primary); color:#fff; --bs-link-color:#fff; --bs-link-hover-color:#fff }
.header .cols { display:flex; justify-content:space-between; align-items:center }
.header .menu-col,
.header .links-col { flex:1 }
.header .links-col { display:flex; align-items:center; justify-content:flex-end; align-self:stretch }
.header .logo-col { position:relative; z-index:9; flex:0 0 160px; height:76px; padding:0 1rem; text-align:center }
.header .logo-col img { max-width:100%; height:56px; transform:translateY(10px); transition:all .2s ease }

.header .links { display:flex; align-items:center; gap:2rem }
.header .nav-list { margin:0; padding:0; list-style:none; display:flex; align-items:center; flex-wrap:nowrap }

.header .menu-col { display:flex; align-items:center; gap:10px }
.header .lang-btn { background:#fff; font-family:var(--secondary-font); line-height:1; --bs-btn-font-size:0.86rem; --bs-btn-padding-x:5px; --bs-btn-padding-y:5px; --bs-btn-color:var(--bs-primary); --bs-btn-hover-color:var(--bs-primary); --bs-btn-border-radius:0; filter:none }
.header .lang-btn:hover { background:var(--bs-secondary) }

.header .site-links,
.header .social-links { display:none }

.header .header-search a[rel="wiki-link"] { display:none }

.navbar-secondary { position:relative; margin:0.5rem 0; --bs-secondary-rgb:#fff; --bs-navbar-padding-y:0; --bs-navbar-brand-color:var(--bs-primary); --bs-navbar-brand-hover-color:#333; --bs-navbar-active-color:var(--bs-primary); font-family:var(--secondary-font) }
.navbar-secondary .navbar-page-title { /* min-width:50%; */ margin:0; padding:0; text-transform:uppercase; font-size:1.1875rem; line-height:1.2 }
.navbar-secondary .navbar-nav { align-items:center }
.navbar-secondary > .container-fluid { gap:2rem }
.navbar-secondary .nav-item { padding:0 0.5rem }
.navbar-secondary .nav-link { position:relative; --bs-nav-link-color:var(--bs-primary); --bs-nav-link-hover-color:var(--bs-primary); --bs-navbar-active-color:var(--bs-primary); --bs-navbar-nav-link-padding-x:0; --bs-nav-link-padding-y:0; text-transform:uppercase }
.navbar-secondary .nav-link::after { content:''; position:absolute; left:0; width:100%; bottom:0; height:2px; background:var(--bs-primary); transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
.navbar-secondary .nav-link.active { color:var(--bs-primary) }
.navbar-secondary .nav-link:hover::after,
.navbar-secondary .nav-link:focus::after,
.navbar-secondary .nav-link.active::after { transform:scaleX(1) }
.navbar-secondary .nav-item:hover > .dropdown {  }
.navbar-secondary .dropdown-menu { margin:0 1rem; padding:0 1rem !important; background:white !important; box-shadow:0 3px 3px rgba(200,200,200,0.5) }
.navbar-secondary .dropdown-menu .nav-item { margin:0; min-height:0; flex-direction:row; justify-content:flex-end; border-color:#cfcfcf !important }
.navbar-secondary .dropdown-menu .nav-link { --bs-nav-link-padding-y:10px }
.navbar-secondary .nav-item.dropdown .nav-link::after,
.navbar-secondary .dropdown-menu .nav-link::after { content:none }

.navbar-secondary .nav-link svg { width:32px }
.navbar-secondary .nav-link .line { height:6px; fill:var(--bs-primary); transform-origin:center }
.navbar-secondary .nav-link .line { transition:y 200ms ease-in 200ms, rotate 200ms ease-in, opacity 0ms 200ms } 
.navbar-secondary .nav-link.show .top { y:45; rotate:45deg }
.navbar-secondary .nav-link.show .middle { opacity:0 }
.navbar-secondary .nav-link.show .bottom { y:45; rotate:-45deg }

@media (min-width:992px) {
    .navbar-secondary .navbar-page-title { font-size:1.5rem }
}

.social-links .nav-list { display:flex }
.social-links .nav-link { --bs-nav-link-color:#fff; --bs-nav-link-hover-color:#fff; padding:4px; font-size:0.9rem; line-height:1; background:var(--bs-primary); border-radius:50%; transition:all .4s ease }
.social-links .nav-icon { display:block; min-width:1rem; text-align:center }
.social-links .nav-label { display:none }

.social-links .nav-link:hover,
.social-links .nav-link:focus { filter:brightness(80%) }

.site-links .nav-list { gap:15px }
.site-links .nav-item { position:relative; font-family:var(--secondary-font); font-size:0.9rem; text-transform:uppercase }
.site-links .nav-item::after { content:''; position:absolute; left:0; width:100%; bottom:0; height:2px; background:#ccc; transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
.site-links .nav-item:hover::after { transform:scaleX(1) }

.color-bars { --bar-color:#fff; --bar-border:solid 6px var(--bs-secondary); align-self:stretch; display:flex; justify-content:space-between; border-left:var(--bar-border); border-right:var(--bar-border) }
.color-bars::before { content:''; width:26px; margin:0 3px; background:var(--bar-color) }

.hamburger-box { display:flex; align-items:center; line-height:1 }
.hamburger-box .label  { display:none; font-family:var(--tertiary-font); font-size:2.1rem; text-transform:uppercase }
.hamburger { display:flex; flex-direction:column; border:none; background:transparent }
.hamburger .line { fill:var(--hamburger-color, #fff); transform-origin:center }
.hamburger .line { transition:y 200ms ease-in 200ms, rotate 200ms ease-in, opacity 0ms 200ms } 
.hamburger.active .line { transition:y 200ms ease-in, rotate 200ms ease-in 200ms, opacity 0ms 200ms }

.hamburger.active .top { y:45; rotate:45deg }
.hamburger.active .middle { opacity:0 }
.hamburger.active .bottom { y:45; rotate:-45deg }

@media (min-width:768px) {
  .header .social-links { display:block; margin-right:10px }
  .header .logo-col img { height:76px; transform:translateY(15px) }
  .sticky-header .header .logo-col img { height:56px; transform:translateY(10px) }
}

@media (min-width:992px) {
  .header .cols { padding:0 }
  .header .menu-col { padding-left:1.5rem }
  .header .lang-btn { position:absolute; left:0; top:0 }
  .sticky-header .header .lang-btn { opacity:0 }
  .hamburger-box .label  { display:block }
}

@media (min-width:1200px) {
  .header .site-links { display:block }
}

/* MICRO SITE HEADER */
.micro .header .color-bars { display:none }

@media (min-width:992px) {
  .landing.micro .header { margin-bottom:-40px }
  .landing.micro .header-top { position:relative; background:transparent; border-bottom:none; isolation:isolate }
  .landing.micro .header-top::before { content:''; position:absolute; inset:0; bottom:-20px; z-index:-1; background:linear-gradient(to bottom, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 100%); border-bottom:none }
  /*.micro .header-top > * { position:relative }*/
  .micro .header .menu-col { flex:0 0 auto }
  .micro .hamburger-box { display:none }

  .micro .sticky-header .header-top { background:var(--bs-primary); border-bottom:solid 1px #fff }
  .micro .sticky-header .header-top::before { content:none }
}

/* GLOBAL NAVIGATION */
html.menu-active { overflow:hidden }
.flyout-menu { --menu-offset:77px; position:fixed; left:0; right:0; top:0; max-height:0; overflow:hidden; z-index:3; background:var(--bs-primary); opacity:0; transition:top .4s ease-in, opacity .4s ease .1s, max-height 0s linear .4s; }
.flyout-menu.active { max-height:9999px; bottom:0; overflow:auto; min-height:calc(100vh - var(--menu-offset)); top:var(--menu-offset); opacity:1; transition:max-height 0s, top .4s ease-out, opacity .4s ease .2s }

.nav { font-family:var(--secondary-font); --bs-nav-link-padding-x:10px; --bs-nav-link-padding-y:10px; --bs-nav-link-font-size:1.2rem }
.nav .menu { width:100vw; min-height:calc(100vh - var(--menu-offset)); background:#fff; transform:translateX(-280px); transition:transform .2s ease-out .4s }
.flyout-menu.active .nav .menu { transform:translateX(0) }

.flyout-menu.active .menu > .nav-list::after { content:''; display:block; width:150px; height:150px; margin:2rem auto; background-image:var(--site-logo-url); background-repeat:no-repeat; background-size:cover }

.nav .nav-list { margin:0; padding:0; list-style:none; overflow:hidden }
.nav .nav-link { --bs-nav-link-padding-x:15px; --bs-nav-link-padding-y:0.8rem; position:relative; border-bottom:solid 1px #cfcfcf; text-transform:uppercase; transition:all .4s }
.nav .nav-item.active > .nav-link { background:#f0f0f0 }
.nav .nav-link .icon { position:absolute; right:0; top:0; bottom:0; width:3rem; display:flex; align-items:center; justify-content:center; z-index:2 }
.nav .nav-link .icon::before { transition:rotate .4s ease; rotate:90deg }
.nav .nav-item.active > .nav-link > .icon::before { rotate:270deg }
.nav .nav-item.active > .nav-link.hyperlink > .icon::before { rotate:0deg }

.nav .submenu { visibility:hidden; display:grid; grid-template-rows:0fr; transition:grid-template-rows .4s ease-out }
.nav .nav-item.active > .submenu { visibility:visible; grid-template-rows:1fr; margin:0.5rem 1rem }

.nav .submenu.level1 { --bs-nav-link-font-size:1rem }
.nav .submenu.level2 { --bs-nav-link-font-size:0.95rem  }
.nav .submenu.level3 { --bs-nav-link-font-size:0.875rem  }

.nav .submenu.level1 .nav-link { --bs-nav-link-padding-x:20px }
.nav .submenu.level2 .nav-link { --bs-nav-link-padding-y:10px }
.nav .submenu.level3 .nav-link { --bs-nav-link-padding-y:10px }

@media (min-width:1200px) {
  .nav .menu { max-width:280px }
  .nav .nav-link { display:inline-block; border-bottom:none }
  .nav .nav-item.active .submenu { margin:0 }
  .nav .submenu { display:block }
  .nav .submenu.level1 { position:absolute; left:280px; top:0; display:block; width:calc(100vw - 280px); padding:3rem; visibility:hidden; opacity:0; transition:opacity .4s ease-out }
  .nav .submenu.level1 .nav-item { padding:5px 0 }
  
  .flyout-menu.active .nav-item.level1.active .submenu { visibility:visible; opacity:1 }

  .nav .nav-item.level1 > .nav-link { display:block; --bs-nav-link-hover-color:var(--bs-tertiary) }
  .nav .nav-item.active > .nav-link { background:transparent }
  .nav .nav-item.level1.active > .nav-link { --bs-nav-link-color:var(--bs-tertiary); --bs-nav-link-hover-color:var(--bs-tertiary) }
  
  .nav .nav-link .icon { display:none }
  .nav .nav-item.level1 > .nav-link > .icon { display:flex }
  .nav .nav-item.level1 > .nav-link > .icon::before { rotate:0deg }
  .nav .nav-item.level1.active > .nav-link > .icon::before { rotate:180deg }
  
  .nav .nav-item.level1 .nav-link { --bs-nav-link-padding-y:10px; --bs-nav-link-font-size:1.2rem }
  .nav .nav-item.level2 .nav-link { --bs-nav-link-padding-x:0; --bs-nav-link-padding-y:0; --bs-nav-link-color:#fff; --bs-nav-link-hover-color:#fff }
  .nav .nav-item.level3 .nav-link { --bs-nav-link-font-size:1rem }
  .nav .nav-item.level4 .nav-link { --bs-nav-link-font-size:0.8rem; text-transform:capitalize }

  .nav .nav-item.level1 { border-bottom:solid 1px #cfcfcf }
  .nav .nav-item.level4 { display:flex; align-items:center }
  .nav .nav-item.level4:not(:first-of-type)::before { content:'|'; padding:0 5px; color:#aaa !important }

  .nav .nav-item.level2 .nav-link { position:relative }
  .nav .nav-item.level2 .nav-link::after { content:''; height:2px; position:absolute; left:0; right:0; bottom:0; background:#fff; transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
  .nav .nav-item.level2 .nav-link:hover::after { transform:scaleX(1) }
  
  .nav .nav-item.level2.has-submenu > .nav-link { --bs-nav-link-padding-y:0; --bs-nav-link-font-size:2.4rem; --bs-nav-link-hover-color:#fff; font-family:var(--tertiary-font); display:block; line-height:1.2; border-bottom:solid 1px var(--bs-secondary); pointer-events:none }
  .nav .nav-item.level2.has-submenu > .nav-link::after { content:none }
  
  .nav .has-deepmenu .submenu.level1 > .nav-list { display:flex; gap:4rem; justify-content:space-between }
  .nav .has-deepmenu .submenu.level3 > .nav-list { display:flex }
  
  .nav .has-deepmenu .nav-item.level2 { flex:1 }
  .nav .has-deepmenu .nav-item.level3 { display:flex; align-items:center; justify-content:space-between }
  .nav .has-deepmenu .nav-item.level3 { border-bottom:solid 1px #333 }

  .nav .submenu.level3 .nav-link[data-label="Twitter"]::before { content:'\e61b'; font-family:var(--fa-family-brands); font-size:0.75rem }
  .nav .submenu.level3 .nav-link[data-label="Awards"]::before { content:'\f091'; font-family:var(--fa-family-classic); color:#daa520; font-size:0.75rem }
  .nav .submenu.level3 .nav-link[data-label="Twitter"] span,
  .nav .submenu.level3 .nav-link[data-label="Awards"] span { display:none }
}

/* FOOTER */
.site-footer { --bs-nav-link-color:#fff; --bs-nav-link-hover-color:#ddd; border-top:solid 1px var(--bs-primary) }
.site-footer .container { --bs-gutter-x:0 }
.site-footer .flex { display:flex; flex-direction:column }
.site-footer .footer-bottom { padding:1rem 0; background:var(--bs-primary); color:#fff; font-size:0.875rem; text-align:center }
.site-footer .footer-bottom .flex { align-items:center }
.site-footer .nav-list { margin:0; padding:0; list-style:none }
.site-footer .nav-link { display:inline-block }
.site-footer .developer-logo { width:200px }
.site-footer svg { fill:white }

.site-footer .site-branding { display:flex; align-items:center; justify-content:space-around }
.site-footer .color-bars { --bar-color:var(--bs-primary) }
.site-footer .site-logo { padding:1.5rem 0 }
.site-footer .site-logo a { display:block }
.site-footer .site-logo img { height:48px }

.site-footer .social-links { font-family:var(--secondary-font) }
.site-footer .social-links .nav-list { gap:5px }
.site-footer .social-links .nav-link { padding:5px; font-size:1.2rem; min-width:30px; border:solid 1px var(--bs-primary); --bs-nav-link-hover-color:var(--bs-primary); filter:none }
.site-footer .social-links .nav-link:hover,
.site-footer .social-links .nav-link:focus { background:#fff }

.footer-logos { padding:1rem; border-top:solid 1px var(--bs-primary) }
.footer-logos ul { margin:0; padding:0; list-style:none; display:flex; justify-content:space-between; align-items:center }
.footer-logos li { flex:1; text-align:center }
.footer-logos a { display:block } 
.footer-logos img { max-height:50px }

@media (min-width:768px) {
  .site-footer .site-logo img { height:60px }
  .footer-logos img { max-height:70px }
}

@media (min-width:992px) {
  .site-footer .container { --bs-gutter-x:1.5rem }
  .site-footer .flex { flex-direction:row; justify-content:space-between; gap:20px }
  .site-footer .site-branding { gap:20px }
  .site-footer .social-links { margin-top:-5px }
  .footer-logos { border-top:none }
  .footer-logos ul { gap:20px }
  .footer-logos img { max-height:90px }
}

/* CSS for the slider container and items */
.carousel { position:relative; padding-bottom:2rem }
.carousel .slides { transition:transform .4s ease }
.carousel .slide { flex:0 0 100% }


/* INDICATOR CONTROLS */
.carousel .controls { margin:0 auto; padding:0; list-style:none; width:60%; max-width:400px; display:flex; justify-content:center; gap:10px  }
.carousel .control { flex:1 }
.carousel .control .btn { --bs-btn-color:#fff; --bs-btn-border-width:0; --bs-btn-border-radius:0; width:100%; height:8px; padding:0; background:rgba(180,180,180,0.5); position:relative }
.carousel .control .btn::after { content:''; position:absolute; left:0; top:0; bottom:0; width:0; background:var(--bs-secondary) }
.carousel .control.active .btn::after { transition:width .4s ease-out; width:100% }
.carousel.autoplay .control.active .btn::after { transition-duration:8s }
.carousel .control .btn span { display:none }
.carousel .btn.autoplay { position:absolute; top:0; right:0; z-index:2; background:#000; font-size:0.875rem; --bs-btn-color:#fff; --bs-btn-hover-color:#fff; --bs-btn-border-radius:0 }

.article-carousel .media { position:relative; padding-top:56.25%; }
.article-carousel .media img { position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .4s ease-out .4s }
.article-carousel .slide.active .media img { opacity:1 }
.article-carousel .media:after { content:''; position:absolute; left:0; right:0; bottom:0; top:40%; background:#000; background:linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,50%) 50%, rgba(0,0,0,0) 90%) }
.article-carousel .info { display:flex; flex-direction:column; align-items:center; gap:5px; padding:10px 1rem; text-align:center }

.article-carousel .date { font-family:var(--secondary-font); font-size:0.95rem }
.article-carousel .title { font-size:1.2rem; font-family:var(--secondary-font); text-transform:uppercase; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; text-overflow:ellipsis; overflow:hidden }
.article-carousel .sport-name { position:relative; font-family:var(--tertiary-font), sans-serif; font-size:2.5rem; line-height:1; text-transform:uppercase }
.article-carousel .sport-name::after { content:''; position:absolute; left:0; right:0; bottom:0; height:4px; background:var(--bs-secondary) }

.article-carousel .links { display:flex }
.article-carousel .links li { display:flex; align-items:center }
.article-carousel .links li:not(:first-child)::before { content:'|'; margin:0 10px; font-size:0.875rem; line-height:1 }
.article-carousel .links a { --bs-nav-link-font-size:0.875rem; --bs-nav-link-hover-color:#cfcfcf; text-transform:uppercase; text-decoration:none }

.article-carousel .btn.prev,
.article-carousel .btn.next { display:none }

.article-carousel .archive-link { position:absolute; left:0; right:0; bottom:0 }
.article-carousel .archive-link .btn-link { --bs-btn-bg:transparent; --bs-btn-border-color:transparent; --bs-btn-hover-border-color:transparent; --bs-btn-color:; --bs-btn-hover-color:#cfcfcf; padding-block:0 }

@media (min-width:992px) {
  .article-carousel .carousel { padding-bottom:0 }
  .article-carousel .slide { max-height:calc(100vh - 76px); overflow:hidden }
  .article-carousel .info { position:absolute; left:0; right:0; bottom:6rem; max-width:70%; margin:0 auto; text-align:center; color:#fff; line-height:1.2 }
  .article-carousel .info a,
  .article-carousel .info > * { background-color:rgba(0,0,0,0.01) } /* hack to pass ADA contrast issue */
  .article-carousel .title { font-size:1.5rem; --bs-nav-link-hover-color:#cfcfcf }
  
  .article-carousel .btn.prev,
  .article-carousel .btn.next { display:block; height:50%; max-height:200px; position:absolute; top:50%; transform:translateY(-50%); z-index:2; opacity:0; color:#fff; font-size:2rem; --bs-btn-color:#fff; transition:all .4s }
  .article-carousel .btn.prev { left:2rem }
  .article-carousel .btn.next { right:2rem  }
  .article-carousel:hover .btn.next,
  .article-carousel:hover .btn.prev { opacity:1 }
  .article-carousel .controls { position:absolute; left:0; right:0; bottom:4rem }
  .article-carousel .archive-link { position:absolute; left:0; right:0; bottom:2rem }
  .article-carousel .archive-link .btn-link { --bs-btn-bg:transparent; --bs-btn-border-color:transparent; --bs-btn-hover-border-color:transparent; --bs-btn-color:#fff; --bs-btn-hover-color:#cfcfcf; padding-block:0 }
  
  .landing.micro .article-carousel .slide { max-height:calc(100vh - 40px) }
  .landing.micro .article-carousel .btn.autoplay { top:76px; margin-top:-20px; visibility:hidden; opacity:0; transition:opacity .4s ease-out }
  .landing.micro .article-carousel:hover .btn.autoplay { visibility:visible; opacity:1 }
}

/* SCOREBOARD SWITCHER */
.scoreboard-switcher form { margin:1rem 0; display:flex; justify-content:center; gap:1rem }
.scoreboard-switcher form > div { flex:1; display:flex }
.scoreboard-switcher form select { flex:1 }

@media (min-width:992px) {
.scoreboard-switcher { position:relative; padding-bottom:3rem; display:flex; align-items:stretch }
.scoreboard-switcher .filters form { margin:0; height:100%; display:flex; flex-direction:column; gap:0 }
.scoreboard-switcher .filters form > label { flex:1; padding:1rem; display:flex; border:solid 1px var(--bs-primary); border-right:none }
.scoreboard-switcher .filters form > label:last-child { border-top:none }
.scoreboard-switcher .filters select { width:100%; border:none }
.scoreboard-switcher .filters { width:15% }
.scoreboard-switcher .content { width:85% }
.scoreboard-switcher .macro-archive-link { position:absolute; left:0; right:0; bottom:0 }
}

/* SECTION SCOREBOARD */
.section-scoreboard .component-scoreboard.layout-small { overflow:visible }
.section-scoreboard .component-scoreboard.layout-small .slider { padding:0 !important }
.section-scoreboard .component-scoreboard.layout-small .slick-wrapper { padding:0 2rem; width:calc(100% + var(--bs-gutter-x)); margin-left:calc(var(--bs-gutter-x) * .5 * -1) }
.section-scoreboard .component-scoreboard.layout-small .slick-list { border-color:var(--bs-primary) }
.section-scoreboard .component-scoreboard.layout-small .slick-list ~ .card { display:none !important }
.section-scoreboard .component-scoreboard.layout-small .card { min-height:120px; border-left:solid 1px var(--bs-primary); border-right:none; --bs-card-spacer-x:7px; --bs-card-spacer-y:7px; font-family:var(--secondary-font); font-size:0.9rem }
.section-scoreboard .component-scoreboard.layout-small .card:first-child { border-left:none }
.section-scoreboard .component-scoreboard.layout-small .middle-inner { padding:0 !important; border:none !important }
.section-scoreboard .component-scoreboard.layout-small .event-team-name { text-align:left !important }
.section-scoreboard .component-scoreboard.layout-small .date,
.section-scoreboard .component-scoreboard.layout-small .status { font-family:var(--primary-font); font-weight:400 !important }
.section-scoreboard .component-scoreboard.layout-small .macro-event-notes { display:none }
.section-scoreboard .component-scoreboard.layout-small .collapse-event-links { background:var(--bs-primary); --bs-link-color:#f0f0f0; --bs-link-hover-color:#fff }
.section-scoreboard .component-scoreboard.layout-small .team { padding-right:10px }
.section-scoreboard .component-scoreboard.layout-small .team.winner { position:relative }
.section-scoreboard .component-scoreboard.layout-small .team.winner::after { content:''; position:absolute; right:-6px; top:50%; transform:translateY(-50%); border-style:solid; border-width:6px 6px 6px 0; border-color:transparent; border-right-color:var(--bs-secondary) }
.section-scoreboard .component-scoreboard.layout-small .sport-name a { position:relative; display:inline-block }
.section-scoreboard .component-scoreboard.layout-small .sport-name a::after { content:''; height:2px; position:absolute; left:0; right:0; bottom:0; background:var(--bs-primary); transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
.section-scoreboard .component-scoreboard.layout-small .sport-name a:hover::after { transform:scaleX(1) }
.section-scoreboard .component-scoreboard.layout-small .slick-arrow-controls { display:block !important; position:static; border:none }
.section-scoreboard .component-scoreboard.layout-small .btn.next,
.section-scoreboard .component-scoreboard.layout-small .btn.prev { position:absolute; top:0; z-index:2; height:100%; margin:0; background:var(--bs-primary); --bs-btn-color:#fff; --bs-btn-hover-color:#fff }
.section-scoreboard .component-scoreboard.layout-small .btn.prev { left:0 }
.section-scoreboard .component-scoreboard.layout-small .btn.next { right:0 }

.section-scoreboard .event-links-collapse-wrapper .btn { position:absolute; right:5px; top:5px }
.section-scoreboard .bounce-trigger .bounce-element { animation:none; transition:transform .4s ease-in-out }
.section-scoreboard .bounce-trigger:hover .bounce-element { transform:scale(1.3) } 
.section-scoreboard .bounce-trigger .bounce-element::before { content:'\f0fe' }

@media (min-width:992px) {
  .section-scoreboard .component-scoreboard.layout-small .slick-wrapper { width:100%; padding:0 2rem 0 0; margin:0 }
  .section-scoreboard .component-scoreboard.layout-small .btn.next,
  .section-scoreboard .component-scoreboard.layout-small .btn.prev { height:50%; background:#fff; border:solid 1px; border-left:none !important; --bs-btn-border-color:var(--bs-primary); --bs-btn-color:var(--bs-primary); --bs-btn-hover-color:var(--bs-primary) }
  .section-scoreboard .component-scoreboard.layout-small .btn.prev { left:auto; right:0; }
  .section-scoreboard .component-scoreboard.layout-small .btn.next { right:0; top:50%; border-top:none }
  .section-scoreboard .component-scoreboard.layout-small .slick-arrow:hover,
  .section-scoreboard .component-scoreboard.layout-small .slick-arrow:focus { background:var(--bs-primary); color:#fff }
}

/* SECTION STANDINGS */
.section-standings h3 { font-family:var(--tertiary-font); font-size:3rem; text-transform:uppercase; margin:0 }
.section-standings .filters { display:flex; justify-content:space-between; align-items:center }
.section-standings .hx-tabs { display:flex; flex-direction:column; gap:10px }
.section-standings .hx-tabs > select { display:block }
.section-standings .hx-tabs > .nav-tabs { display:none }
.section-standings .table { font-family:var(--secondary-font); font-size:0.8125rem; margin:0; border:solid 1px var(--bs-primary); --bs-table-border-color:var(--bs-primary); --bs-table-bg:#fff; --bs-table-hover-bg:#fff }
.section-standings .table thead { --bs-table-bg:var(--bs-primary); color:#fff; text-transform:uppercase }
.section-standings .table .logo-holder { display:none }
.section-standings .table .team-col a { position:relative; display:inline-block !important }
.section-standings .table .team-col a::after { content:''; height:2px; position:absolute; left:0; right:0; bottom:0; background:var(--bs-primary); transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
.section-standings .table .team-col a:hover::after { transform:scaleX(1) }
.section-standings .table tbody td { width:10%; white-space:nowrap } 
.section-standings .table tbody th { padding-right:2rem }
/*.section-standings .table th:not(:last-child),
.section-standings .table td:not(:last-child) { display:none }
.section-standings .table th:first-child { display:table-cell }*/

@media (min-width:992px) {
  .section-standings h3 { font-size:4rem }
  .section-standings .hx-tabs { display:block }
  .section-standings .hx-tabs > select { display:none }
  .section-standings .hx-tabs > .nav-tabs { display:flex }
  .section-standings .table { font-size:1rem }
}

/* SECTION LEADERS */
.section-leaders { --bs-border-color:var(--bs-primary) }
.section-leaders .form-select { padding:0.25rem 0.5rem; border-color:var(--bs-primary) }
.section-leaders .leaders-card { border-top-width:0 !important }
.section-leaders .leaders-card:nth-child(n+5) { display:none !important }
.section-leaders .list-group-item { border:none }
.section-leaders .list-group-item:first-child { margin:0 -1px !important; padding-inline:0; padding-bottom:0.25rem; text-transform:uppercase; font-family:var(--secondary-font) }
.section-leaders .list-group-item:first-child + .list-group-item { border-top:solid 1px }
.section-leaders .list-group-item:last-child { padding:0; font-family:var(--secondary-font) }
.section-leaders .list-group-item:last-child .btn { display:block; border-top:solid 1px; --bs-btn-border-radius:0; --bs-btn-padding-y:0.5rem; filter:none }
.section-leaders .list-group-item:last-child .btn:hover,
.section-leaders .list-group-item:last-child .btn:focus { background:var(--bs-primary); color:#fff }
.section-leaders .logo-holder { display:none }
.section-leaders .player-name { position:relative; font-family:var(--secondary-font) }
.section-leaders .player-name::after { content:''; height:2px; position:absolute; left:0; right:0; bottom:0; background:var(--bs-primary); transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
.section-leaders .player-name:hover::after { transform:scaleX(1) }
.section-leaders .stat { font-family:var(--secondary-font) }

@media (min-width:768px) {
  .section-leaders .form-select { width:200px }
}

/* SECTION AOTW */
.section-aotw { position:relative; margin:1rem 0; background:var(--bs-primary); color:#fff }
.section-aotw::before { content:''; position:absolute; left:0; right:0; bottom:0; height:40px; background:#fff }
.section-aotw > .container { --bs-gutter-x:0 }
.section-aotw .slides { padding:2rem 0 1rem }
.section-aotw .bio { display:flex; justify-content:center; gap:20px }
.section-aotw .bio h3 { font-size:2rem }
.section-aotw .details { margin-top:10px }
.section-aotw .bio .sport-name { display:flex; align-items:center; gap:10px }
.section-aotw .bio .sport-name::before { content:''; width:25px; height:2px; background:var(--bs-secondary) }
.section-aotw .bio .name { font-family:var(--secondary-font); font-size:1rem }
.section-aotw .headshot { position:relative; width:40%; max-width:120px; aspect-ratio:1/1.5 }
.section-aotw .headshot img { width:100%; height:100%; object-fit:cover }
.section-aotw .team-logo { --team-logo-size:30px; position:absolute; left:0; top:10px; transform:translateX(-50%); width:var(--team-logo-size); height:var(--team-logo-size); background:none no-repeat 50% 50% #fff; background-size:var(--team-logo-size) auto }
.section-aotw .btn { --bs-btn-color:#fff }
.section-aotw .btn.autoplay,
.section-aotw .btn.next,
.section-aotw .btn.prev { position:absolute; right:0; top:5px; z-index:2; width:2rem; height:2rem; font-size:0.875rem; --bs-btn-padding-x:0; --bs-btn-padding-y:0; --bs-btn-color:#fff; --bs-btn-hover-color:#fff; background:transparent }
.section-aotw .btn.autoplay { right:2rem }
.section-aotw .btn.prev { right:4rem }
.section-aotw .btn-full-bio { background:#fff; filter:none;--bs-btn-font-size:0.875rem; --bs-btn-color:var(--bs-primary); --bs-btn-border-radius:100vw; --bs-btn-padding-x:2rem; --bs-btn-padding-y:5px; line-height:1; text-decoration:none }
.section-aotw .btn-full-bio:hover,
.section-aotw .btn-full-bio:focus,
.section-aotw .btn-full-bio:active { background:transparent; color:#fff; border-color:#fff }
.section-aotw .controls { display:none }

@media (min-width:768px) {
  .section-aotw .bio { gap:2.5rem }
  .section-aotw .bio h3 { font-size:2.5rem }
  .section-aotw .bio .name { font-size:1.3rem }
  .section-aotw .headshot { max-width:150px }
  .section-aotw .team-logo { --team-logo-size:40px; top:30px }
  .section-aotw .btn-full-bio { --bs-btn-font-size:1rem }
  .section-aotw::before { height:50px }
}

/* ACTION BANNERS */
.banners ul { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:1px; }
.banners li { overflow:hidden }
.banners img { width:100%; transition:transform .4s ease-in }
.banners a:hover img { transform:scale(1.03) }
.banners a:focus-visible img { border:solid 5px var(--bs-secondary); transform:none }

@media (min-width:768px) {
  .banners ul { flex-direction:row }
  .banners li { flex:1 }
}

/* SECTION SOCIAL */
.section-social { padding:1rem 0 } 
.section-social .flex { display:flex; flex-direction:column; gap:1rem }
.section-social .social-widget { flex:1; max-width:480px }
.section-social .widget-title { padding:0.5rem 1rem; margin-bottom:0.625rem; display:flex; justify-content:space-between; align-items:center; background:var(--bs-primary); color:#fff }
.section-social .widget-title h2 { font-size:2.15rem }

@media (min-width:768px) {
    .section-social .flex { flex-direction:row; justify-content:center }
}

@media (min-width:992px) {
    .section-social .flex { gap:2rem }
}

/* BANNER CAROUSEL */
.section-banner-carousel .container-fluid { --bs-gutter-x:0 }
.section-banner-carousel .slide a { display:block }
.section-banner-carousel .slide a:focus-visible { border:solid 3px var(--bs-secondary) }
.section-banner-carousel .slide img { width:100%; min-height:100px; object-fit:cover; object-position:center; opacity:0.25; transition:opacity .6s ease-in .4s }
.section-banner-carousel .slide.active img { opacity:1 }
.section-banner-carousel .btn { display:none }
.section-banner-carousel .controls { position:static; margin-top:1rem; max-width:150px }
.section-banner-carousel .control .btn { display:block }
.section-banner-carousel .btn.autoplay { display:block; position:absolute; right:0; top:0; z-index:3 }

/* PARTNER LOGOS */
.partner-logos { position:relative; padding:1rem 0; border-top:solid 1px var(--bs-primary) }
.partner-logos .carousel { position:static }
.partner-logos .slide { padding:5px; flex:0 0 33.32%; text-align:center }
.partner-logos .slide a { display:inline-block } 
.partner-logos .slide img { max-height:70px } 
.partner-logos .btn { display:none }
.partner-logos .btn.autoplay { display:block;  }
.partner-logos .controls { position:static; max-width:150px; margin-top:1rem }
.partner-logos .controls .btn { display:block }

@media (min-width:768px) {
  .partner-logos .slide { flex:0 0 25% }
  .partner-logos .slide img { max-height:100px } 
}

@media (min-width:1200px) {
  .partner-logos .slide { flex:0 0 20% }
}

/* USPORTS AWARDS */
.section-awards .section-head { margin-bottom:1.5rem } 
.section-awards .section-body { max-width:1024px; margin:0 auto }
.section-awards .carousel { display:flex; flex-direction:column; gap:1.5rem }
.section-awards .slide { aspect-ratio:16/9 }
.section-awards .slide a { display:block; position:relative; aspect-ratio:16/9 }
.section-awards .slide a::after { content:''; position:absolute; inset:0; background:rgba(0,0,0,0.2) }
.section-awards .slide a > img { width:100%; height:100%; object-fit:cover; object-position:center; opacity:0; transition:opacity .2s ease-in .4s, transform .4s ease }
.section-awards .slide.active a > img { opacity:1 }
.section-awards .slide a > span { position:absolute; left:0; right:0; top:50%; z-index:2; transform:translateY(-50%); text-align:center; font-family:var(--tertiary-font); font-size:4.5rem; line-height:1; color:#fff; text-transform:uppercase }
.section-awards .slide a > span::before { content:'[' }
.section-awards .slide a > span::after { content:']' }
.section-awards .slide a:hover > img { transform:scale(1.05) }
.section-awards .slide.active a:focus > img { border:solid 5px var(--bs-secondary) }

.section-awards .btn { display:none }
.section-awards .controls { display:none }
.section-awards .controls.dynamic { display:flex }
.section-awards .controls .btn { display:block }
.section-awards .btn.autoplay { display:block; opacity:0; transition:opacity .4s ease-in-out }
.section-awards .carousel:hover .btn.autoplay,
.section-awards .btn.autoplay:focus { opacity:1 }

@media (min-width:768px) {
  .section-awards .carousel { flex-direction:row }
  .section-awards .slides { width:60%; order:1 }
  .section-awards .controls { flex:1; display:flex; flex-direction:column; gap:10px; order:2 }
  .section-awards .controls.dynamic { display:none }
  .section-awards .control { position:relative; flex:1; display:flex; align-items:center; padding:0 2rem; border:solid 1px var(--bs-primary); background:var(--bs-primary); font-family:var(--secondary-font); font-size:1.2rem; color:#fff; text-transform:uppercase; cursor:pointer; }
  .section-awards .control.active { background:transparent; color:var(--bs-primary) }
  .section-awards .control::before { content:'\f105'; margin-right:10px; font-family:var(--fa-family-classic); font-size:1.4rem }
  .section-awards .btn.autoplay { right:40% }
}

/* VENUES */
.section-venues { background:#f6f6f6 }
.section-venues .section-head { justify-content:center }
.section-venues .slide { position:relative; flex:0 0 100% }
.section-venues .slide .media { aspect-ratio:16/9; background-color:#444 !important; overflow:hidden }
.section-venues .slide .media img { width:100%; height:100%; object-fit:cover; object-position:center; opacity:0; transition:opacity .4s ease-out .4s, transform .4s ease-in-out }
.section-venues .slide.active .media img { opacity:1 }
.section-venues .slide:hover .media img { transform:scale(1.03) }
.section-venues .slide .media a::after { content:''; position:absolute; inset:1rem; z-index:2 }
.section-venues .slide .info { position:relative; padding:1rem; padding-left:2rem; border:solid 1px rgba(0,0,0,0.1) }
.section-venues .slide:hover .info { border:solid 1px rgba(0,0,0,0.3) }
.section-venues .slide .sport-name { display:none }
.section-venues .slide .title { position:relative; display:inline-block; margin-bottom:0.25rem; font-family:var(--secondary-font); text-transform:uppercase }
.section-venues .slide .title::after { content:''; position:absolute; left:0; width:100%; bottom:0; height:2px; background:var(--bs-primary); transform:scaleX(0); transform-origin:bottom left; transition:transform 0.2s ease-out }
.section-venues .slide:hover .title::after { transform:scaleX(100%) }
.section-venues .slide .leadin { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden }
.section-venues .slide .info::before { content:''; position:absolute; left:1rem; top:1rem; bottom:1rem; width:3px; background:var(--bs-secondary) }
.section-venues .carousel .btn { display:none }
.section-venues .carousel .controls .btn { display:block }
.section-venues .archive-link { margin-top:1rem }

@media (min-width:768px) {
  .section-venues .slide { flex:0 0 50%; padding:1rem }
}

@media (min-width:992px) {
  .section-venues .slide { flex:0 0 33.33%; padding:1rem }
}

/* MORE INFO */
.section-more-info a { text-decoration:none; font-weight:700 }
.section-more-info a:hover { text-decoration:underline }
.section-more-info .section-head { padding-bottom:0.75rem; border-bottom:solid 2px var(--bs-primary) }
.section-more-info .section-body > div { display:flex; flex-direction:column; padding:1rem }
.section-more-info .body-text { flex:1 }
.section-more-info ul { margin-bottom:1rem }
.section-more-info .sidebar ul { display:flex; flex-direction:column; gap:5px }
.section-more-info .sidebar li::before { content:'|'; margin-right:0.5rem; color:var(--bs-secondary) }

@media (min-width:992px) {
  .section-more-info .section-body > div { flex-direction:row; gap:4rem }
}

/* TEAM CARDS */
.section-teams-carousel .slide { flex:0 0 100% } 
.section-teams-carousel .team-cards { display:flex; flex-wrap:wrap; justify-content:space-between; row-gap:1rem }
.section-teams-carousel .team-card { display:none; width:100% }
.section-teams-carousel .team-card:nth-child(-n+3) { display:block }
.section-teams-carousel .inner { padding:1rem; border:solid 1px #999; display:flex; gap:1rem }
.section-teams-carousel h4 { font-size:1.1rem; margin:0 }
.section-teams-carousel .logo { width:25% }
.section-teams-carousel .logo img { max-height:100px }
.section-teams-carousel .team-info { border-left:solid 3px var(--bs-secondary);padding-left:1rem;display:flex;flex-direction:column }
.section-teams-carousel .team-info a { display:block; align-self:flex-start; position:relative; text-decoration:none }
.section-teams-carousel .team-info a::after { content:''; position:absolute; left:0; bottom:0; width:100%; height:2px; transform:scaleX(0); transform-origin:bottom left; background:var(--bs-primary); transition:transform .4s }
.section-teams-carousel .team-info a:hover::after { transform:scaleX(100%) }
.section-teams-carousel .carousel .btn { display:none }
.section-teams-carousel .controls { margin-top:1rem; margin-bottom:1rem }
.section-teams-carousel .controls .btn { display:block }

@media (min-width:768px) {
    .section-teams-carousel .team-card { width:49% }
    .section-teams-carousel .team-card:nth-child(-n+6) { display:block }

}

@media (min-width:992px) {
    .section-teams-carousel .team-card { width:32% }
    .section-teams-carousel .team-card:nth-child(-n+9) { display:block }
}

/* NEXT CHAMPIONSHIP */
.section-next-championship { margin-top:5px;color:#dfdfdf; background-color:var(--bs-primary) }
.next-championship { position:relative; background-position:50% 50%; background-repeat:no-repeat; background-size:auto 180% }
.next-championship::before { content:''; position:absolute; inset:0; background:rgba(0,0,0,0.8) }
.next-championship .logo img { max-width:120px }
.next-championship .info { position:relative; padding:2rem 0; max-width:500px; margin:0 auto; text-align:center }
.next-championship .title { margin:0; font-family:var(--secondary-font); font-size:1.6rem; color:#fff; text-transform:uppercase }
.next-championship .location { display:flex; justify-content:center; font-weight:bold }
.next-championship .location > div:not(:first-child)::before { content:'|'; margin:0 5px }

@media (min-width:992px) {
  .next-championship { background-attachment:fixed; background-size:500px }
}