@charset "UTF-8";

body {
  font-size: 16px;
  line-height: 2;
  color: #313131;
  font-family: "Helvetica", sans-serif;
  background: #FCFCFC;
  font-weight: normal;
  padding-top: 50px;
}

a {
  color: inherit;
  text-decoration: underline;
  -webkit-transition: color, background, border;
  -o-transition: color, background, border;
  transition: color, background, border;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-in-out;
  -o-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}

a:hover {
  color: #C42032;
}

a:focus,
button:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  position: relative;
  padding: 0;
  margin: 0;
  font-weight: normal;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  text-transform: uppercase;
}

h1 sup,
h2 sup,
h3 sup,
h4 sup,
h5 sup,
h6 sup {
  font-size: 0.6em;
}

h2,
h3,
h4,
h5,
h6 {
  color: #152C53;
}

h2.line,
h3.line,
h4.line,
h5.line,
h6.line {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 15px;
}

h2.line:after,
h3.line:after,
h4.line:after,
h5.line:after,
h6.line:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 20px;
  height: 3px;
  display: block;
  background: #C42032;
}

h2.line.blue:after,
h3.line.blue:after,
h4.line.blue:after,
h5.line.blue:after,
h6.line.blue:after {
  background: #0081C8;
}

.blue-star-box.red h2.line:after,
.blue-star-box.red h3.line:after,
.blue-star-box.red h4.line:after,
.blue-star-box.red h5.line:after,
.blue-star-box.red h6.line:after {
  background: rgba(255, 255, 255, 0.5);
}

h2.centered,
h3.centered,
h4.centered,
h5.centered,
h6.centered {
  text-align: center;
}

h2.centered.line:after,
h3.centered.line:after,
h4.centered.line:after,
h5.centered.line:after,
h6.centered.line:after {
  left: calc(50% - 10px);
}

h2.red,
h3.red,
h4.red,
h5.red,
h6.red {
  color: #C42032;
  text-transform: none;
}

h1 {
  font-size: 50px;
  line-height: 0.9;
  text-transform: uppercase;
}

h2 {
  font-size: 45px;
  line-height: 1;
}

h3 {
  font-size: 30px;
  line-height: 1.5;
}

h4 {
  font-size: 24px;
  line-height: 0.9583333333;
}

h5 {
  font-size: 18px;
  line-height: 1.05556;
  font-family: "Helvetica Condensed", sans-serif;
  font-weight: 900;
}

blockquote {
  z-index: 10;
  position: relative;
}

blockquote q {
  position: relative;
  font-size: 30px;
  line-height: 1.12;
  text-transform: uppercase;
  color: #152C53;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  text-align: center;
  display: block;
  padding: 50px 0;
}

blockquote q:before,
blockquote q:after {
  z-index: -1;
  content: "";
  position: absolute;
  width: 64px;
  height: 50px;
  display: block;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}

blockquote q:before {
  top: 0;
  left: 0;
  background-image: url("../images/quote-top.png");
}

blockquote q:after {
  bottom: 0;
  right: 0;
  background-image: url("../images/quote-bottom.png");
}

blockquote .caption {
  position: absolute;
  top: calc(100% - 20px);
  padding-top: 0;
  padding-left: 100px;
  padding-right: 100px;
  right: 0;
  text-align: center;
}

blockquote.light q {
  color: #fff;
}

blockquote.light q:before {
  background-image: url("../images/quote-top-light.png");
}

blockquote.light q:after {
  background-image: url("../images/quote-bottom-light.png");
}

blockquote.noquotes q:before,
blockquote.noquotes q:after {
  display: none !important;
}

.caption {
  font-size: 14px;
  line-height: 1.2;
  font-family: "Helvetica", sans-serif;
  display: block;
  text-align: center;
}

figure img {
  width: auto;
  height: auto;
}

figure.img img {
  width: auto;
  max-width: 100%;
}

figure.full img {
  width: 100%;
  max-width: 100%;
}

b,
strong {
  font-weight: bold;
}

.button {
  position: relative;
  font-size: 19px;
  line-height: 1.2;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  color: #fff;
  text-transform: uppercase;
  padding: 10px 40px 10px 20px;
  border-radius: 10px;
  background: #C42032;
  display: inline-block;
  text-decoration: none !important;
}

.button:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: calc(50% - 7px);
  right: 20px;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  text-align: center;
  display: block;
}

.button:hover {
  color: #fff;
}

.button.btn-download:after {
  content: "";
}

.cta {
  position: relative;
  font-size: inherit;
  line-height: inherit;
  font-family: "Helvetica Extra Compressed", sans-serif;
  color: #152C53;
  text-transform: uppercase;
  display: inline-block;
  text-decoration: none !important;
  padding-right: 20px;
}

.cta:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: calc(50% - 7px);
  right: 0;
  width: 14px;
  height: 14px;
  color: #fff;
  font-size: 8px;
  line-height: 14px;
  text-align: center;
  display: block;
  border-radius: 100%;
  background: #C42032;
  will-change: right;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
}

.cta:hover:after {
  -webkit-transform: translate(5px, 0);
  -ms-transform: translate(5px, 0);
  transform: translate(5px, 0);
}

#page-content p,
#page-content ul,
#page-content ol {
  margin-bottom: 15px;
}

#page-content .leading {
  font-size: 18px;
  line-height: 1.8333333333;
  font-weight: bold;
  color: #C42032;
  margin-bottom: 27px;
}

#page-content .leading.big {
  font-size: 22px;
  line-height: 1.4545454545;
}

#page-content .leading.centered {
  text-align: center;
  max-width: 604px;
  margin-left: auto;
  margin-right: auto;
}

#page-content .leading strong {
  font-weight: 900;
}

#page-content ul,
#page-content ul.dots {
  position: relative;
  list-style: none;
  padding: 0 0 0 18px;
}

#page-content ul li,
#page-content ul.dots li {
  margin-bottom: 5px;
}

#page-content ul li:before,
#page-content ul.dots li:before {
  content: "•";
  position: absolute;
  left: 0;
  color: #C42032;
  font-family: sans-serif;
}

#page-content ul li ul,
#page-content ul.dots li ul {
  padding-left: 20px;
}

#page-content ul li ul li:before,
#page-content ul.dots li ul li:before {
  content: "—";
}

#page-content ul.small,
#page-content ul.dots.small {
  padding-left: 10px;
}

#page-content ul.small li:before,
#page-content ul.dots.small li:before {
  font-size: 0.6em;
  line-height: 2.8;
}

#page-content ul.small-text,
#page-content ul.dots.small-text {
  font-size: 14px;
  line-height: 1.9285714286;
}

#page-content ul.blue li:before,
#page-content ul.dots.blue li:before {
  color: #0081C8;
}

#page-content ul.no-dots,
#page-content ul.dots.no-dots {
  padding-left: 0;
}

#page-content ul.no-dots li:before,
#page-content ul.dots.no-dots li:before {
  display: none !important;
}

#page-content ul.style2,
#page-content ul.dots.style2 {
  font-size: 14px;
  line-height: 1.2;
}

#page-content ul.style2 li,
#page-content ul.dots.style2 li {
  margin-bottom: 20px;
}

.numlist {
  position: relative;
  list-style: none;
  padding: 0 0 0 18px;
  counter-reset: numlist;
  line-height: 1.625;
}

.numlist li {
  margin-bottom: 5px;
  counter-increment: numlist;
}

.numlist li:before {
  position: absolute;
  left: 0;
  content: counter(numlist) ".";
  color: #C42032;
  font-weight: normal;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  font-size: 20px;
  line-height: 1.3em;
}

.big-numbers {
  list-style: none;
  font-size: 14px;
  line-height: 1.7142857143;
  padding: 0;
  counter-reset: bignum;
}

.big-numbers .item {
  position: relative;
  padding-top: 0;
  padding-left: 33px;
  margin-bottom: 35px;
  counter-increment: bignum;
}

.big-numbers .item h5 {
  margin-bottom: 6px;
}

.big-numbers .item .inner {
  position: relative;
  padding-top: 50px;
  padding-left: 33px;
  border-top: 1px solid #E2E2E2;
}

.big-numbers .item .inner:before {
  content: counter(bignum) ".";
  position: absolute;
  top: 48px;
  left: 0;
  font-size: 30px;
  line-height: 1;
  color: #C42032;
  font-family: "Helvetica Ultra Compressed", sans-serif;
}

.big-numbers .item:first-child .inner,
.big-numbers .item:nth-child(2) .inner {
  border-top: 0 none;
}

.red-text {
  display: inline;
  text-transform: uppercase;
  color: #C42032;
  font-family: "Helvetica Condensed", sans-serif;
  font-weight: bold;
}

.columns-2 li {
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}

.columns-3 {
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2;
  padding-left: 0 !important;
}

.columns-3 li {
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}

.columns-3 li:before {
  display: none;
}

.columns-4 {
  -webkit-columns: 2;
  -moz-columns: 2;
  columns: 2;
}

.columns-4 li {
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}

.number-item {
  font-size: 18px;
  line-height: 1;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  color: #152C53;
  font-weight: normal;
  text-transform: uppercase;
}

.number {
  font-size: 50px;
  line-height: 1.2;
  color: #C42032;
  font-family: "Helvetica Ultra Compressed", sans-serif;
}

.small-text {
  font-size: 14px;
  line-height: 1.5714285714;
}

.wrapper {
  padding-left: 20px;
  padding-right: 20px;
  margin-left: auto;
  margin-right: auto;
  margin-left: auto;
  max-width: 669px;
}

.wrapper.nopad {
  padding-left: 0;
  padding-right: 0;
  max-width: 629px;
}

.wrapper.med {
  max-width: 770px;
}

.wrapper.tablewrap {
  max-width: 810px;
}

.wrapper.big {
  max-width: 970px;
}

.wrapper.bigger {
  max-width: 1070px;
}

.wrapper.wide {
  max-width: 1110px;
}

.wrapper.wider {
  max-width: 1210px;
}

.row.row0 {
  margin-left: 0;
  margin-right: 0;
}

.row.row0 > [class*=col] {
  padding-left: 0;
  padding-right: 0;
}

.row.row6 {
  margin-left: -6px;
  margin-right: -6px;
}

.row.row6 > [class*=col] {
  padding-left: 6px;
  padding-right: 6px;
}

.row.row9 {
  margin-left: -9px;
  margin-right: -9px;
}

.row.row9 > [class*=col] {
  padding-left: 9px;
  padding-right: 9px;
}

.row.row10 {
  margin-left: -10px;
  margin-right: -10px;
}

.row.row10 > [class*=col] {
  padding-left: 10px;
  padding-right: 10px;
}

.row.row35 {
  margin-left: -20px;
  margin-right: -20px;
}

.row.row35 > [class*=col] {
  padding-left: 20px;
  padding-right: 20px;
}

.bg-white {
  padding-top: 80px;
  padding-bottom: 80px;
  margin-top: 80px;
  margin-bottom: 80px;
  background: #fff;
}

.bg-white.bd-top {
  border-top: 1px solid #EFEFEF;
}

.bg-white.bd-bottom {
  border-bottom: 1px solid #EFEFEF;
}

#page-header {
  position: relative;
  height: 380px;
  color: #fff;
}

#page-header .bg {
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

#page-header .bg:after {
  z-index: 10;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  display: block;
  background-image: -webkit-gradient(linear, right top, left top, color-stop(20%, rgba(21, 44, 83, 0)), color-stop(80%, #152C53));
  background-image: -o-linear-gradient(right, rgba(21, 44, 83, 0) 20%, #152C53 80%);
  background-image: linear-gradient(to left, rgba(21, 44, 83, 0) 20%, #152C53 80%);
}

.enhance-ngb-support-and-oversight #page-header .bg {
  background-position: center top;
}

.keep-athletes-safe #page-header .bg:after {
  opacity: 0.7;
  background-image: -webkit-gradient(linear, right top, left top, color-stop(30%, rgba(21, 44, 83, 0.2)), color-stop(80%, #152C53));
  background-image: -o-linear-gradient(right, rgba(21, 44, 83, 0.2) 30%, #152C53 80%);
  background-image: linear-gradient(to left, rgba(21, 44, 83, 0.2) 30%, #152C53 80%);
}

.theme-red #page-header .bg:after {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(78, 15, 22, 0)), to(#4E0F16));
  background-image: -o-linear-gradient(right, rgba(78, 15, 22, 0), #4E0F16);
  background-image: linear-gradient(to left, rgba(78, 15, 22, 0), #4E0F16);
}

#page-header .header-wrapper {
  z-index: 20;
  position: relative;
  padding: 10%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#page-header .header-wrapper h1 {
  max-width: 100%;
}

#page-header .header-box {
  position: absolute;
  top: 10%;
  left: 5%;
  bottom: 10%;
  right: 5%;
  border-left: 6px solid #fff;
  border-bottom: 6px solid #fff;
}

#page-header .header-box:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 230px;
  height: 6px;
  max-width: 40%;
  display: block;
  background: #fff;
}

#page-header .header-box .header-caption {
  position: absolute;
  bottom: 15px;
  left: 5%;
  font-size: 12px;
  line-height: 0.8333;
  font-weight: 300;
  font-family: "Helvetica Condensed", sans-serif;
  text-transform: uppercase;
}

#page-header #header-down {
  z-index: 99;
  position: absolute;
  bottom: calc(10% - 20px);
  right: 10%;
  width: 44px;
  height: 44px;
  line-height: 40px;
  color: #fff;
  font-size: 18px;
  border-radius: 100%;
  display: block;
  border: 0 none;
  text-align: center;
  background: rgba(196, 32, 50, 0.9);
}

#page-header #header-down:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

#homepage-slider {
  position: fixed;
  top: 50px;
  left: 0;
  right: 0;
  height: calc(100vh - 50px);
  color: #fff;
}

#homepage-slider .slide {
  position: relative;
  height: calc(100vh - 50px);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  background-color: rgba(21, 44, 83, 0.3);
}

#homepage-slider .slide#slide1 {
  background-image: url("../images/homepage-slide-1-mobile.jpg");
}

#homepage-slider .slide#slide2 {
  background-image: url("../images/homepage-slide-2-mobile.jpg");
}

#homepage-slider .slide#slide3 {
  background-image: url("../images/homepage-slide-3-mobile.jpg");
}

#homepage-slider .slide#slide4 {
  background-image: url("../images/homepage-slide-4-mobile.jpg");
}

#homepage-slider .slide#slide5 {
  background-image: url("../images/homepage-slide-5-mobile.jpg");
}

#homepage-slider .home-wrapper {
  z-index: 20;
  position: relative;
  padding: 10%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#homepage-slider .home-wrapper h1 {
  max-width: 100%;
}

#homepage-slider .home-box {
  z-index: 30;
  position: absolute;
  top: 20px;
  left: 10px;
  right: 10px;
  bottom: 60px;
  text-align: center;
}

#homepage-slider .home-box .home-box-top {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 6px;
  max-width: 100px;
  margin-left: auto;
  display: block;
  text-align: left;
}

#homepage-slider .home-box .home-box-top .box-line:before {
  top: 0;
}

#homepage-slider .home-box .home-box-top .box-line:after {
  position: absolute;
  top: 0;
  left: 0;
  right: auto;
  width: 15%;
  height: 6px;
  display: block;
  background: #fff;
}

#homepage-slider .home-box .home-box-top .home-caption {
  position: relative;
  font-size: 12px;
  line-height: 1;
  font-weight: 300;
  color: #fff;
  text-transform: uppercase;
  display: block;
  margin-bottom: 30px;
}

#homepage-slider .home-box .home-box-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  display: table;
}

#homepage-slider .home-box .home-box-bottom .box-button {
  position: relative;
  top: 0;
  font-size: 19px;
  height: 46px;
  line-height: 46px;
  white-space: nowrap;
  padding: 0 26px;
  display: inline-block;
  color: #fff;
  text-transform: uppercase;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  border-radius: 10px;
  text-decoration: none !important;
  background-image: -webkit-gradient(linear, right bottom, left top, from(#EE334E), to(#C42032));
  background-image: -o-linear-gradient(bottom right, #EE334E, #C42032);
  background-image: linear-gradient(to top left, #EE334E, #C42032);
}

#homepage-slider .home-box .home-box-bottom .box-button span {
  z-index: 10;
  position: relative;
  display: block;
}

#homepage-slider .home-box .home-box-bottom .box-button span:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 0.8em;
  padding-left: 15px;
  vertical-align: top;
}

#homepage-slider .home-box .home-box-bottom .box-button:before {
  z-index: 0;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  display: block;
  border-radius: 10px;
  opacity: 0;
  -webkit-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
  background-image: -webkit-gradient(linear, right bottom, left top, from(#EE334E), color-stop(70%, #EE334E), to(#C42032));
  background-image: -o-linear-gradient(bottom right, #EE334E, #EE334E 70%, #C42032);
  background-image: linear-gradient(to top left, #EE334E, #EE334E 70%, #C42032);
}

#homepage-slider .home-box .home-box-bottom .box-button:hover:before {
  opacity: 1;
}

#homepage-slider .home-box .box-line {
  position: relative;
  width: 100%;
  display: none;
}

#homepage-slider .home-box .box-line:before {
  content: "";
  position: absolute;
  left: 0;
  right: 10px;
  bottom: 0;
  height: 6px;
  display: block;
  background: #fff;
}

#homepage-slider .slick-arrow {
  top: auto;
  left: auto;
  bottom: 10px;
  background: transparent;
  border: 2px solid #999;
  color: #999;
  -webkit-transition: color 0.3s ease-in-out, border 0.3s ease-in-out;
  -o-transition: color 0.3s ease-in-out, border 0.3s ease-in-out;
  transition: color 0.3s ease-in-out, border 0.3s ease-in-out;
}

#homepage-slider .slick-arrow:after {
  font-size: 14px;
  line-height: 26px;
}

#homepage-slider .slick-arrow:hover {
  color: #fff;
  border-color: #fff;
}

#homepage-slider .slick-arrow.slick-prev {
  left: 15px;
}

#homepage-slider .slick-arrow.slick-next {
  right: 15px;
}

#homepage-slider .slick-dots {
  position: absolute;
  top: auto;
  bottom: 20px;
}

#homepage-slider .slick-dots button {
  width: 25px;
}

#homepage-slider .slick-dots button:after {
  left: 5px;
  width: 15px;
  height: 5px;
  background: #fff;
}

#homepage-slider .slick-dots .slick-active button:after {
  background: #C42032;
}

#page-content {
  padding-top: 100px;
  padding-bottom: 100px;
  background: url("../images/bg-grit-page-content.png") no-repeat left top/40% auto;
}

.global-community #page-content,
.adapt-plans-for-excellent-games-execution #page-content {
  background: url("../images/bg-grit-page-content.png") no-repeat left top/40% auto, url("../images/bg-grit-right-lg.png") no-repeat right top/40% auto;
}

.operational-effectiveness #page-content {
  background: url("../images/bg-grit-page-content.png") no-repeat left top/40% auto, url("../images/bg-grit-right-lg.png") no-repeat right bottom/40% auto;
}

.demonstrate-fiscal-responsibility #page-content {
  background: url("../images/bg-grit-top-left.png") no-repeat left -1%/40% auto;
}

.strengthen-support #page-content {
  background: none;
}

.financials #page-content,
.leadership #page-content {
  background: url("../images/bg-grit-page-content.png") no-repeat left top/40% auto, url("../images/bg-grit-right-double.png") no-repeat right 130%/40% auto;
}

.white-background {
  padding-top: 59px;
  padding-bottom: 59px;
  margin-top: 73px;
  margin-bottom: 80px;
  background: #fff;
}

#footer {
  z-index: 10;
  position: relative;
  font-size: 12px;
  line-height: 1.2;
  color: #fff;
  padding: 43px 0;
  text-align: center;
  background: url("../images/starsbg.png") no-repeat center center/cover #152C53;
}

#footer .wrapper {
  position: relative;
}

#footer a:hover {
  color: #fff;
}

#footer figure,
#footer p {
  margin-bottom: 0;
}

#footer p + p {
  margin-top: 4px;
}

#footer #footer-up {
  z-index: 99;
  position: absolute;
  top: -63px;
  right: 20px;
  width: 44px;
  height: 44px;
  line-height: 40px;
  color: #fff;
  font-size: 18px;
  border-radius: 100%;
  display: block;
  border: 0 none;
  text-align: center;
  background: #C42032;
}

#footer #footer-up:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

#footer .copyright {
  padding-top: 50px;
}

#footer .copyright p + p {
  margin-top: 3px;
}

#footer .cc {
  color: #99BBF4;
}

.grit {
  z-index: -1;
  position: absolute;
  width: 0;
  height: 0;
}

.grit img {
  z-index: -1;
  position: absolute;
  width: auto;
  height: auto;
  max-width: 40vw;
}

.grit.grit-center-center {
  top: 50%;
  left: 50%;
}

.grit.grit-center-center img {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.grit.grit-center-right {
  top: 50%;
  right: 0;
}

.grit.grit-center-right img {
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.grit.grit-top-left {
  top: 0;
  left: 0;
}

.grit.grit-top-left img {
  top: 0;
  left: 0;
}

.grit.grit-top-right {
  top: 0;
  right: 0;
}

.grit.grit-top-right img {
  top: 0;
  right: 0;
}

.grit.grit-bottom-right {
  right: 0;
}

.grit.grit-bottom-right img {
  bottom: 0;
  right: 0;
}

.grit.grit-right {
  right: 0;
}

.grit.grit-right img {
  right: 0;
}

.grit.grit-bg-bottom {
  bottom: 0;
}

.grit.grit-img-center img {
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.grit.grit-img-right-center img {
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.grit.grit-left-abscenter {
  z-index: 0;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
}

.grit.grit-left-abscenter img {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.grit.grit-right-abscenter {
  z-index: 0;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
}

.grit.grit-right-abscenter img {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.grit.grit-right-gritbottom {
  width: 0;
  height: 0;
  right: 0;
}

.grit.grit-right-gritbottom img {
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-transform: translate(0, 40%);
  -ms-transform: translate(0, 40%);
  transform: translate(0, 40%);
}

.grit.grit-left-gritbottom {
  width: 0;
  height: 0;
  left: 0;
}

.grit.grit-left-gritbottom img {
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translate(0, 40%);
  -ms-transform: translate(0, 40%);
  transform: translate(0, 40%);
}

.grit.grit-right-bottom {
  width: 0;
  height: 0;
  right: 0;
}

.grit.grit-right-bottom img {
  position: absolute;
  bottom: 0;
  right: 0;
}

.grit.top-auto {
  top: auto;
}

.zr-1 {
  z-index: -1;
  position: relative;
}

.zr5 {
  z-index: 5;
  position: relative;
}

.zr10 {
  z-index: 10;
  position: relative;
}

.zr20 {
  z-index: 20;
  position: relative;
}

.z-1 {
  z-index: -1;
}

.z5 {
  z-index: 5;
}

.z10 {
  z-index: 10;
}

.z20 {
  z-index: 20;
}

.rel {
  position: relative;
}

#header {
  z-index: 1000000000000000000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 50px;
  color: #fff;
  background: #C42032;
}

#header .header-inner {
  z-index: 10;
  position: relative;
  padding: 10px 10px 0;
  background: #C42032;
}

#header .header-inner:after {
  content: "";
  display: table;
  clear: both;
}

#header .logo {
  z-index: 15;
  position: relative;
  display: block;
  width: 61px;
  margin-top: -10px;
  padding: 10px 0 0;
  height: 50px;
  float: left;
}

#header .logo img {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
}

#header .slogan {
  z-index: 5;
  position: relative;
  padding: 0;
  margin: -10px 0 0 11px;
  font-size: 19px;
  line-height: 1;
  height: 50px;
  line-height: 50px;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  text-transform: uppercase;
  float: left;
}

#navicon {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  width: 42px;
  height: 50px;
  float: left;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0 none;
}

#navicon .navicon-inner {
  position: absolute;
  top: calc(50% - 15px);
  left: calc(50% - 15px);
  width: 30px;
  height: 30px;
}

#navicon .navicon {
  top: 7px;
  display: block;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  -webkit-transition: background 0.3s ease-in-out;
  -o-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}

#navicon .navicon,
#navicon .navicon:before,
#navicon .navicon:after {
  position: absolute;
  left: 50%;
  width: 18px;
  height: 2px;
  display: block;
  background: #fff;
}

#navicon .navicon:before,
#navicon .navicon:after {
  content: "";
  -webkit-transform: translate(-50%, 0) rotate(0deg);
  -ms-transform: translate(-50%, 0) rotate(0deg);
  transform: translate(-50%, 0) rotate(0deg);
  -webkit-transition: top 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  transition: top 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

#navicon .navicon:before {
  top: -6px;
}

#navicon .navicon:after {
  top: 6px;
}

#navicon .navicon-text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  font-size: 10px;
  line-height: 1;
  color: #fff;
  text-align: center;
  font-family: "Helvetica Condensed", sans-serif;
  font-weight: bold;
  text-transform: uppercase;
}

#navicon .navicon-text .navicon-text-switch {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 10px;
  -webkit-transition: opacity 0.5s ease-in-out;
  -o-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
}

#navicon .navicon-text .navicon-text--menu {
  opacity: 1;
}

#navicon .navicon-text .navicon-text--close {
  opacity: 0;
}

.open-menu #navicon .navicon {
  background: transparent;
}

.open-menu #navicon .navicon:before {
  top: 0;
  -webkit-transform: translate(-50%, 0) rotate(45deg);
  -ms-transform: translate(-50%, 0) rotate(45deg);
  transform: translate(-50%, 0) rotate(45deg);
}

.open-menu #navicon .navicon:after {
  top: 0;
  -webkit-transform: translate(-50%, 0) rotate(-45deg);
  -ms-transform: translate(-50%, 0) rotate(-45deg);
  transform: translate(-50%, 0) rotate(-45deg);
}

.open-menu #navicon .navicon-text .navicon-text--menu {
  opacity: 0;
}

.open-menu #navicon .navicon-text .navicon-text--close {
  opacity: 1;
}

#main-menu {
  z-index: 5;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  color: #fff;
  font-family: "Helvetica Condensed", sans-serif;
  overflow: hidden;
  -webkit-transition: height 0.5s ease-in-out;
  -o-transition: height 0.5s ease-in-out;
  transition: height 0.5s ease-in-out;
}

#main-menu:before {
  z-index: -1;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: #C42032;
}

#main-menu:after {
  z-index: -1;
  content: "";
  position: absolute;
  top: 50px;
  right: 0;
  width: 400px;
  max-width: 100%;
  height: 100%;
  display: block;
  background: url("../images/navigation-grit-mobile.png") no-repeat center top/100% auto;
}

#main-menu ul {
  z-index: 5;
  position: relative;
  list-style: none;
  margin: 50px 0 0;
  padding: 36px 9px 100px 36px;
  max-height: 95vh;
  overflow-x: hidden;
  overflow-y: auto;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.74px;
  font-weight: bold;
}

#main-menu ul li {
  margin-bottom: 16px;
}

#main-menu ol {
  list-style: none;
  padding: 0 0 0 20px;
  margin: 11px 0 0;
  text-transform: none;
  font-size: 14px;
  line-height: 1.2;
  font-weight: normal;
}

#main-menu ol li {
  display: block;
  margin-bottom: 10px;
}

#main-menu a {
  color: #fff;
  text-decoration: none;
}

#main-menu a:hover {
  text-decoration: underline;
}

#main-menu .fas.fa-arrow-down {
  font-size: 0.9em;
  margin-left: 3px;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  -o-transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

#main-menu .active > a {
  text-decoration: underline;
}

.open-menu #main-menu {
  height: 100vh;
}

.career-icons {
  margin-top: 35px;
}

.career-icons .panel-item {
  padding-top: 20px;
}

.panel {
  padding: 34px 8.8% 27px;
  background: #fff;
  -webkit-box-shadow: 0 1px 10px #EAEAEA;
  box-shadow: 0 1px 10px #EAEAEA;
}

.career-icons .panel {
  font-size: 18px;
  line-height: 1;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  color: #152C53;
  font-weight: normal;
  text-transform: uppercase;
}

.career-icons .panel .num {
  font-size: 50px;
  line-height: 1;
  color: #C42032;
}

.padded .panel {
  padding-left: 20px;
  padding-right: 20px;
}

.table-padded .panel {
  padding-left: 20px;
  padding-right: 20px;
}

.panel-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.panel-item .panel {
  max-width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
}

.panel-item.pt-4 {
  padding-top: 30px !important;
}

.panel-item.panel-blue-stars .panel {
  color: #fff;
  background: url("../images/blue-stars.png") no-repeat center 20px/95% auto #152C53;
}

.panel-item.panel-blue-stars .panel h2 {
  color: #fff;
}

.panel-item.panel-blue-stars .panel h2.line:after {
  background: #0081C8;
}

.panel-icon {
  position: relative;
  padding-top: 80px;
}

.panel-icon .icon {
  position: absolute;
  top: 0;
  right: 0;
}

.panel-icon .figure-right {
  float: right;
  width: 230px;
  max-width: 50%;
  margin: 50px 0 15px 15px;
}

.panel-icon .figure-right img {
  max-width: 100%;
}

.thumbnail-panels {
  text-align: center;
  margin-top: 43px;
}

.thumbnail-panels p {
  font-size: 16px;
  margin-bottom: 0;
}

.thumbnail-panels figure {
  margin-bottom: 19px;
}

.thumbnail-panels figure img {
  max-width: 100%;
}

.thumbnail-panels figure span {
  display: block;
}

.thumbnail-panels figure span + span {
  margin-top: 18px;
}

.thumbnail-panels .panel-item {
  margin-bottom: 20px;
}

.hero {
  z-index: 10;
  position: relative;
  margin: 100px 0;
}

.hero .bg {
  z-index: 20;
  position: relative;
  padding: 80% 0 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.hero .bg figure {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: 0;
}

.hero .bg figure img {
  position: absolute;
  bottom: 0;
}

.hero.content-half {
  margin-top: 0;
}

.hero.content-half .blue-star-box {
  margin-left: 0;
  margin-right: 0;
}

.hero.usop-association .bg figure {
  left: auto;
  right: 0;
  width: 70%;
}

.hero.usop-association .bg figure img:first-child {
  bottom: -50px;
  right: calc(30% + 40px);
  max-width: 40%;
}

.hero.usop-association .bg figure img:last-child {
  bottom: -20px;
  right: 20px;
  max-width: 30%;
}

.hero.usop-association .blue-star-box {
  padding-top: 70px;
}

.hero.team-usa-promotion .bg {
  background-position: center top;
}

.blue-star-box {
  color: #fff;
  padding: 30px 20px;
  margin: 0 -20px;
  background: url("../images/blue-stars.png") repeat-y center 15px/92% auto rgba(21, 44, 83, 0.9);
}

.blue-star-box h2,
.blue-star-box h3,
.blue-star-box h4,
.blue-star-box h5,
.blue-star-box h6 {
  color: #fff;
}

.blue-star-box ul {
  font-size: 12px;
  line-height: 1.5833333333;
  font-weight: bold;
  font-family: "Helvetica Condensed", sans-serif;
}

.blue-star-box.red {
  background-image: url("../images/red-stars.png");
  background-color: rgba(196, 32, 50, 0.95);
}

.seasonal-logos {
  margin-top: 20px;
}

.seasonal-logos:after {
  content: "";
  display: table;
  clear: both;
}

.seasonal-logos figure {
  text-align: center;
  width: calc(99% / 4);
  height: 80px;
  float: left;
}

.seasonal-logos figure img {
  max-width: 99%;
}

.partner-logos {
  margin-top: 0;
}

.partner-logos:after {
  content: "";
  display: table;
  clear: both;
}

.partner-logos figure {
  text-align: center;
  width: calc(99% / 3);
  height: 80px;
  float: left;
  padding: 0 8px;
}

.partner-logos figure img {
  max-width: 96%;
}

.progress-logos {
  text-align: center;
  font-size: 0;
  margin-top: 50px;
  margin-bottom: 50px;
}

.progress-logos:after {
  content: "";
  display: table;
  clear: both;
}

.progress-logos figure {
  text-align: center;
  width: calc(99% / 3);
  padding: 0 8px;
  margin-bottom: 20px;
  display: inline-block;
}

.progress-logos figure img {
  max-width: 96%;
}

#representation-columns {
  font-size: 24px;
  line-height: 0.9166666667;
  color: #fff;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  text-transform: uppercase;
}

#representation-columns .col {
  background: #C42032;
}

#representation-columns .col:after {
  z-index: 11;
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: calc(50% - 22px);
  right: -10px;
  width: 44px;
  height: 44px;
  font-size: 18px;
  line-height: 44px;
  color: #fff;
  text-align: center;
  background: #C42032;
  display: block;
  border-radius: 100%;
}

#representation-columns .col:nth-child(even) {
  background: #152C53;
}

#representation-columns .col:nth-child(even):after {
  background: #152C53;
}

#representation-columns .col:last-child:after {
  display: none;
}

#representation-columns .inner {
  position: relative;
  padding: 58px 12.4% 30px;
}

#representation-columns figure {
  width: 100%;
  height: 60px;
  margin-bottom: 20px;
}

#representation-columns figure img {
  margin: auto 0;
}

#representation-columns .num {
  font-size: 45px;
  line-height: 1;
  margin-bottom: 7px;
}

.slick-slider {
  position: relative;
}

.slick-slider .slick-arrow {
  z-index: 99;
  position: absolute;
  top: calc(50% - 16px);
  border: 0 none;
  background: #fff;
  display: block;
  color: #C42032;
  border-radius: 100%;
  font-size: 0;
  width: 32px;
  height: 32px;
  line-height: 1;
}

.slick-slider .slick-arrow.slick-prev {
  left: 20px;
}

.slick-slider .slick-arrow.slick-prev:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 16px;
}

.slick-slider .slick-arrow.slick-next {
  right: 20px;
}

.slick-slider .slick-arrow.slick-next:after {
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 16px;
}

#page-content .slick-slider .slick-dots,
.home .slick-slider .slick-dots {
  position: absolute;
  top: calc(100% + 24px);
  left: 0;
  width: 100%;
  text-align: center;
  list-style: none;
  padding: 0;
  margin: 0;
  line-height: 0;
}

#page-content .slick-slider .slick-dots li,
.home .slick-slider .slick-dots li {
  display: inline-block;
  margin: 0;
}

#page-content .slick-slider .slick-dots li:before,
.home .slick-slider .slick-dots li:before {
  display: none !important;
}

#page-content .slick-slider .slick-dots button,
.home .slick-slider .slick-dots button {
  position: relative;
  font-size: 0;
  line-height: 0;
  width: 40px;
  padding: 10px 0;
  display: block;
  border: 0 none;
  background: transparent;
}

#page-content .slick-slider .slick-dots button:after,
.home .slick-slider .slick-dots button:after {
  content: "";
  position: absolute;
  top: 8px;
  left: 10px;
  width: 20px;
  height: 3px;
  background: #717073;
  display: block;
}

#page-content .slick-slider .slick-dots .slick-active button:after,
.home .slick-slider .slick-dots .slick-active button:after {
  background: #C42032;
}

.expanded-wrapper {
  margin-left: -20px;
  margin-right: -20px;
  padding-bottom: 40px;
  overflow: hidden;
}

#slider-training-sites {
  margin-left: -10px;
  margin-right: -10px;
}

#slider-training-sites .slide {
  padding-left: 10px;
  padding-right: 10px;
}

#slider-training-sites figure {
  margin: 0;
  padding: 100% 0 0;
  background-color: #ccc;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

#page-content #slider-training-sites .slick-dots {
  top: 102%;
}

.half-banner {
  margin-bottom: 40px;
}

.half-banner figure {
  padding: 67% 0 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.half-banner .content {
  max-width: 800px;
  padding: 20px;
}

.panel-grid {
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: -27px;
  -ms-flex-item-align: end;
  align-self: flex-end;
}

.flex-grid .bg,
.flex-grid .primary-bg,
.flex-grid .link-box {
  position: relative;
  width: 100%;
  padding: 121% 0 0;
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.flex-grid .flex-grid {
  width: calc(100% + 12px);
  max-width: calc(100% + 12px);
  -webkit-box-flex: 0;
  -ms-flex: 0 0 calc(100% + 12px);
  flex: 0 0 calc(100% + 12px);
}

.flex-grid .flex-grid .grid-item {
  margin: 0 0 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.flex-grid .primary-bg {
  background: #C42032;
  margin-top: 18px;
}

.flex-grid .primary-bg .title {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  font-size: 20px;
  line-height: 0.8333333333;
  color: #fff;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  padding: 0 15.7%;
  text-transform: uppercase;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.flex-grid figure {
  margin: 0;
  background: #aa182b;
  max-width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
}

.flex-grid .link-box {
  -webkit-box-shadow: -1px -1px 0 rgba(0, 0, 0, 0.08);
  box-shadow: -1px -1px 0 rgba(0, 0, 0, 0.08);
}

.flex-grid .link-box .cta {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 100%;
  line-height: 1;
  text-align: center;
  display: inline-block;
  padding: 0 25px 0 10px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.flex-grid .link-box .cta:after {
  right: 7px;
}

.flex-grid .grid-item {
  margin-top: 18px;
}

.grid-shape {
  position: relative;
  background: url("../images/grid-bg-shape.png") no-repeat left top/100% 100% #fff;
}

.grid-shape:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-image: -webkit-gradient(linear, left top, right bottom, from(rgba(255, 255, 255, 0)), color-stop(30%, #fff), color-stop(70%, #fff), to(rgba(255, 255, 255, 0)));
  background-image: -o-linear-gradient(top left, rgba(255, 255, 255, 0), #fff 30%, #fff 70%, rgba(255, 255, 255, 0));
  background-image: linear-gradient(top left, rgba(255, 255, 255, 0), #fff 30%, #fff 70%, rgba(255, 255, 255, 0));
}

.grid-shape .wrapper {
  position: relative;
}

.star-columns {
  font-size: 25px;
  line-height: 1.16;
  color: #fff;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  font-weight: normal;
}

.star-columns.style2 {
  text-align: center;
  font-size: 20px;
  line-height: 1.15;
  text-transform: uppercase;
}

.star-columns.style2 .item .inner {
  padding-left: 10px;
  padding-right: 10px;
}

.star-columns .num {
  font-size: 50px;
  line-height: 1.2;
  margin-bottom: 0;
}

.star-columns .item {
  margin-bottom: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.star-columns .item .bg {
  background: url("../images/blue-stars-small.png") repeat center 10px/contain #152C53;
  width: 100%;
  max-width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.star-columns .item .inner {
  padding: 44px 13%;
  max-width: 100%;
}

.star-columns .item.has-icon {
  font-size: 20px;
  line-height: 1.15;
  text-transform: uppercase;
}

.star-columns .item:not(.has-icon) .bg {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.star-columns .item:nth-child(even) .bg {
  background-color: #C42032;
  background-image: url("../images/red-stars-small.png");
}

.column-border-bottom {
  position: relative;
}

.figure-slider {
  margin-top: 30px;
}

.figure-slider figure {
  padding: 70% 0 0;
  margin: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

#page-content .figure-slider .slick-slide {
  display: block;
}

#page-content .figure-slider .slick-arrow {
  top: auto;
  bottom: 26px;
}

#page-content .figure-slider .slick-dots {
  top: auto;
  bottom: 30px;
}

#page-content .figure-slider .slick-dots button:after {
  background: #fff;
}

.p-border {
  padding-bottom: 12px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E2E2E2;
}

.icon-half-col {
  letter-spacing: 10px;
}

.icon-half-col:after {
  content: "";
  display: table;
  clear: both;
}

.icon-half-col .icon-item {
  font-size: 20px;
  line-height: 1.05;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0;
  display: inline-block;
}

.icon-half-col .icon {
  display: block;
  width: 100%;
  height: 40px;
  text-align: center;
}

.icon-half-col .num {
  display: inline-block;
}

.icon-half-col p {
  display: inline-block;
  text-align: left;
}

.list-item {
  position: relative;
  padding-left: 32px;
  margin-bottom: 30px;
}

.list-item .list-num {
  left: auto;
  right: 100%;
}

.list-num {
  position: absolute;
  left: 0;
  font-size: 30px;
  line-height: 0.6333333333;
  color: #C42032;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  width: 32px;
  float: left;
}

.list-item-padding {
  position: relative;
  padding-left: 32px;
  margin-bottom: 30px;
}

.table {
  font-size: 12px;
  line-height: 1.2;
}

.table tr.red {
  color: #C42032;
  font-weight: bold;
}

.table tr.red td {
  border-top: 1px solid #8FCEF0;
  border-bottom: 1px solid #8FCEF0;
  padding-bottom: 10px;
}

.table tr:first-child td {
  border-bottom: 1px solid #8FCEF0;
  padding-bottom: 10px;
}

.table td {
  border: 0 none;
  padding-top: 8px;
  padding-bottom: 8px;
}

.table td:last-child:not([colspan]) {
  text-align: right;
}

.table h4 {
  padding-top: 15px;
}

.table .indent {
  text-indent: -1em;
  padding-left: 2em;
  display: block;
}

.table .indent2 {
  text-indent: -1em;
  padding-left: 3em;
  display: block;
}

.table .indent3 {
  text-indent: -1em;
  padding-left: 4em;
  display: block;
}

.table-wrap .table {
  margin-left: -20px;
  margin-right: -20px;
  width: calc(100% + 40px);
}

.table-wrap .table td {
  padding-left: 20px;
  padding-right: 20px;
}

.leader-list {
  font-size: 14px;
  line-height: 1.4285714286;
  padding-left: 0 !important;
}

.leader-list:after {
  content: "";
  display: table;
  clear: both;
}

.leader-list strong {
  display: block;
  font-weight: bold;
  color: #152C53;
}

.leader-list p {
  margin-bottom: 0;
}

.leader-list li {
  width: 100%;
  margin-bottom: 0;
}

.leader-list li:before {
  display: none !important;
}

.leader-footnote {
  font-size: 12px;
  line-height: 1.25;
  text-align: right;
  max-width: 350px;
  margin-left: auto;
}

.footnote {
  font-size: 12px;
  line-height: 1.25;
}

.non-directors {
  margin-top: 50px;
}

.non-directors h3 {
  line-height: 0.8333333333;
  margin-bottom: 15px;
}

.non-directors strong {
  display: block;
  color: #152C53;
  font-weight: bold;
}

.stat-boxes br {
  display: none;
}

.stat-boxes .stat-box {
  margin-bottom: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.stat-boxes .inner {
  background: #fff;
  padding: 40px 9.7%;
  -webkit-box-shadow: 0 1px 10px #EAEAEA;
  box-shadow: 0 1px 10px #EAEAEA;
  max-width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 100%;
  flex: 1 0 100%;
}

.stat-boxes .icon {
  width: 100%;
  max-width: 110px;
  padding-right: 15px;
  min-height: 65px;
}

.stat-boxes .icon img {
  width: auto;
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

.stat-boxes .content {
  font-size: 18px;
  line-height: 1;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  color: #152C53;
  text-transform: uppercase;
  font-weight: normal;
  width: 100%;
}

.white-stars {
  background: url("../images/white-stars.png") repeat-y center top/100% auto #fff;
}

.piechart .chart-wrap {
  position: relative;
  max-width: 335px;
  margin-top: 35px;
}

.piechart .chart-title {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 170px;
  font-size: 20px;
  line-height: 0.85;
  font-family: "Helvetica Ultra Compressed", sans-serif;
  text-align: center;
  text-transform: uppercase;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.piechart .chart-title .number {
  line-height: 1;
}

.piechart .chart-title .number.sec {
  color: #152C53;
}

.piechart .canvas-wrap {
  position: relative;
  width: 100%;
  padding: 100% 0 0;
}

.piechart .canvas-wrap canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
}

.piechart figure + .canvas-wrap {
  display: none !important;
}

#page-content .legend {
  padding: 0;
  margin: 30px 0 0;
}

#page-content .legend li {
  position: relative;
  display: inline-block;
  padding-left: 0;
  padding-right: 15px;
  font-size: 10px;
  line-height: 1;
  margin-bottom: 0;
}

#page-content .legend li:before {
  display: none !important;
}

#page-content .legend span {
  width: 10px;
  height: 10px;
  font-size: 2.5em;
  line-height: 0;
  display: inline-block;
  margin-right: 3px;
  border-radius: 100%;
  background: #C42032;
}

#page-content .legend strong {
  display: inline-block;
  margin-right: 3px;
  color: #152C53;
}

#skip-to-main {
  z-index: 9999;
  position: absolute;
  top: 60px;
  left: 8px;
  border: 0 none;
  opacity: 0;
}

#skip-to-main:focus {
  opacity: 1;
}

.d-i {
  display: inline;
}

.d-ib {
  display: inline-block;
}

mark {
  color: red;
  background: pink;
}

@media screen and (min-width: 567px) {
  .flex-grid .flex-grid {
    width: 104%;
    max-width: 104%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 104%;
    flex: 0 0 104%;
  }
}

@media screen and (min-width: 576px) {
  .columns-4 {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
  }

  .thumbnail-panels .panel-item {
    margin-bottom: 0;
  }

  .seasonal-logos figure {
    width: calc(99% / 5);
  }

  .partner-logos figure {
    width: calc(99% / 4);
  }

  .stat-boxes br {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  body {
    padding-top: 0;
    padding-left: 80px;
  }

  h1 .h1-holder {
    max-width: 435px;
  }

  .h1-wide h1 .h1-holder {
    max-width: 535px;
  }

  h1 {
    font-size: 100px;
  }

  .columns-2 {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
  }

  .columns-3 {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
  }

  #page-header {
    height: 590px;
    text-align: left;
  }

  #homepage-slider .slide#slide1 {
    background-image: url("../images/homepage-slide-1-md.jpg");
  }

  #homepage-slider .slide#slide2 {
    background-image: url("../images/homepage-slide-2-md.jpg");
  }

  #homepage-slider .slide#slide3 {
    background-image: url("../images/homepage-slide-3-md.jpg");
  }

  #homepage-slider .slide#slide4 {
    background-image: url("../images/homepage-slide-4-md.jpg");
  }

  #homepage-slider .slide#slide5 {
    background-image: url("../images/homepage-slide-5-md.jpg");
  }

  #homepage-slider {
    top: 0;
    left: 80px;
    height: 100vh;
  }

  #homepage-slider .slide {
    height: 100vh;
    background-position: left top;
  }

  #homepage-slider .home-box {
    top: 7%;
    left: 5%;
    bottom: 7%;
    right: 5%;
    text-align: left;
    border-left: 6px solid #fff;
  }

  #homepage-slider .home-box .home-box-top {
    max-width: none;
    margin-left: 0;
    display: table;
  }

  #homepage-slider .home-box .home-box-top .box-line:before {
    left: 300px;
  }

  #homepage-slider .home-box .home-box-top .box-line:after {
    content: "";
    width: 100px;
  }

  #homepage-slider .home-box .home-box-top .home-caption {
    top: -2px;
    min-width: 280px;
    margin-bottom: 0;
    white-space: nowrap;
    display: table-cell;
  }

  #homepage-slider .home-box .home-box-bottom {
    width: 930px;
    max-width: calc(100% - 250px);
  }

  #homepage-slider .home-box .home-box-bottom .box-button {
    top: 20px;
    display: table-cell;
  }

  #homepage-slider .home-box .box-line {
    display: table-cell;
  }

  #homepage-slider .slick-arrow {
    bottom: 44px;
  }

  #homepage-slider .slick-arrow.slick-prev {
    left: auto;
    right: 229px;
  }

  #homepage-slider .slick-arrow.slick-next {
    right: 50px;
  }

  #homepage-slider .slick-dots {
    top: auto;
    left: auto;
    right: 60px;
    bottom: 50px;
    width: 191px;
    margin: 0;
  }

  #footer {
    background-position: left center;
    background-size: contain;
  }

  #footer figure {
    text-align: left;
  }

  #footer .copyright {
    padding-top: 10px;
    text-align: right;
  }

  #header {
    width: 80px;
    height: 100%;
    height: 100vh;
  }

  #header .logo {
    padding-top: 0;
    margin: 0 auto;
    text-align: center;
    height: auto;
  }

  #header .slogan {
    position: absolute;
    left: 0;
    bottom: 25px;
    width: auto;
    height: 0;
    font-size: 24px;
    line-height: 80px;
    margin: 0;
    white-space: nowrap;
    float: none;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
  }

  #navicon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .header-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #C42032;
  }

  #main-menu {
    width: 0;
    height: 100vh;
    max-width: 100vw;
    padding: 0;
    -webkit-transition: width 0.5s ease-in-out;
    -o-transition: width 0.5s ease-in-out;
    transition: width 0.5s ease-in-out;
  }

  #main-menu:before {
    -webkit-transform: skewX(2deg);
    -ms-transform: skewX(2deg);
    transform: skewX(2deg);
    -webkit-transform-origin: bottom right;
    -ms-transform-origin: bottom right;
    transform-origin: bottom right;
  }

  #main-menu:after {
    top: 0;
    left: 0;
    width: 496px;
    height: 768px;
    max-width: 90%;
    max-height: 100vh;
    background: url("../images/navigation-grit.png") no-repeat 80px top/auto 100%;
  }

  #main-menu ul {
    padding: 50px 0 0 120px;
    margin: 0;
    min-height: 100vh;
    font-size: 18px;
    width: 560px;
  }

  #main-menu ul li {
    margin-bottom: 30px;
  }

  #main-menu ul ol {
    margin-top: 13px;
    margin-bottom: -5px;
  }

  #main-menu ul ol li {
    margin: 0 0 5px;
  }

  .open-menu #main-menu {
    width: 652px;
  }

  .panel-icon .figure-right {
    position: absolute;
    top: 100px;
    right: -30px;
    width: 240px;
    max-width: none;
    font: none;
    margin: 50px 0 0;
  }

  .panel-icon .figure-right img {
    width: 100%;
  }

  .panel-icon {
    padding-right: 250px;
    padding-top: 20px;
  }

  .panel-icon .icon {
    top: 25px;
  }

  .hero .bg {
    padding-top: 50%;
  }

  .seasonal-logos figure {
    width: calc(99% / 7);
  }

  .progress-logos figure {
    width: calc(99% / 5);
  }

  .flex-grid .flex-grid {
    width: 106%;
    max-width: 106%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 106%;
    flex: 0 0 106%;
  }

  .column-border-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .column-border-bottom .inner {
    position: relative;
    padding-bottom: 48px;
    margin-bottom: 55px;
    max-width: 100%;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
  }

  .column-border-bottom .inner:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #E2E2E2;
    display: block;
  }

  .table {
    font-size: 16px;
  }

  .leader-list li {
    padding-right: 30px;
  }

  #skip-to-main {
    top: 8px;
    left: 86px;
  }
}

@media screen and (min-width: 992px) {
  blockquote q {
    font-size: 50px;
    padding: 50px 60px;
  }

  blockquote q:before,
  blockquote q:after {
    width: 127px;
    height: 75px;
  }

  blockquote .caption {
    left: 0;
    right: 0;
    padding-right: 180px;
    text-align: right;
  }

  .columns-2 {
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
  }

  .columns-4 {
    -webkit-columns: 4;
    -moz-columns: 4;
    columns: 4;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
  }

  .row.row20 {
    margin-left: -20px;
    margin-right: -20px;
  }

  .row.row20 > [class*=col] {
    padding-left: 20px;
    padding-right: 20px;
  }

  #homepage-slider .home-box .home-box-top .box-line:before {
    right: 40px;
  }

  #homepage-slider blockquote {
    max-width: 70%;
    margin-left: auto;
  }

  #homepage-slider blockquote q {
    text-align: left;
    padding-right: 0;
  }

  #page-content {
    background-size: auto auto;
  }

  .thumbnail-panels .panel-item:first-child .panel {
    -webkit-transform: translate(-32px, 0);
    -ms-transform: translate(-32px, 0);
    transform: translate(-32px, 0);
  }

  .thumbnail-panels .panel-item:last-child .panel {
    -webkit-transform: translate(32px, 0);
    -ms-transform: translate(32px, 0);
    transform: translate(32px, 0);
  }

  .hero .bg {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
  }

  .hero.content-half .blue-star-box {
    width: 50%;
    max-width: 668px;
    margin-left: auto;
  }

  .hero.hero-image {
    padding: 50% 0 0;
  }

  .hero.usop-association .bg figure {
    left: 0;
    right: auto;
    width: 50%;
  }

  .blue-star-box {
    margin: 0;
  }

  .blue-star-box.box-left {
    width: 570px;
    max-width: 80%;
    margin-left: auto;
  }

  .blue-star-box.box-right {
    width: 570px;
    max-width: 80%;
  }

  .partner-logos figure {
    width: calc(99% / 7);
  }

  .partner-logos.logos-6 figure {
    width: calc(99% / 6);
  }

  .half-banner {
    background: #fff;
  }

  .half-banner figure {
    padding: 0;
    margin: 0;
  }

  .leader-list li {
    width: 33.333%;
    float: left;
  }

  .leader-list li:nth-child(3n+1) {
    clear: left;
  }
}

@media screen and (min-width: 1200px) {
  blockquote q {
    font-size: 75px;
  }

  blockquote q:before,
  blockquote q:after {
    width: 127px;
    height: 100px;
  }

  .columns-2 {
    -webkit-column-gap: 70px;
    -moz-column-gap: 70px;
    column-gap: 70px;
  }

  #homepage-slider .slide#slide1 {
    background-image: url("../images/homepage-slide-1.jpg");
  }

  #homepage-slider .slide#slide2 {
    background-image: url("../images/homepage-slide-2.jpg");
  }

  #homepage-slider .slide#slide3 {
    background-image: url("../images/homepage-slide-3.jpg");
  }

  #homepage-slider .slide#slide4 {
    background-image: url("../images/homepage-slide-4.jpg");
  }

  #homepage-slider .slide#slide5 {
    background-image: url("../images/homepage-slide-5.jpg");
  }

  #homepage-slider {
    background-position: center center;
  }

  #homepage-slider .home-box .home-box-top .box-line:before {
    left: 375px;
  }

  #homepage-slider .home-box .home-box-top .box-line:after {
    width: 18%;
  }

  #homepage-slider blockquote q {
    font-size: 70px;
  }

  .padded .panel {
    padding-left: 60px;
    padding-right: 60px;
  }

  .table-padded .panel {
    padding-left: 46px;
    padding-right: 46px;
  }

  .panel-icon .figure-right {
    right: -90px;
    width: 300px;
  }

  .blue-star-box {
    padding: 65px 55px;
  }

  .seasonal-logos figure {
    width: calc(99% / 10);
  }

  #slider-training-sites .slick-arrow.slick-prev {
    left: 13%;
  }

  #slider-training-sites .slick-arrow.slick-next {
    right: 13%;
  }

  .half-banner .content {
    padding: 9.5% 20px 8.7% 10.7%;
  }

  .panel-grid {
    margin-left: -60px;
    margin-right: -60px;
  }

  .flex-grid .primary-bg .title {
    font-size: 30px;
  }

  .flex-grid .link-box .cta {
    font-size: 25px;
    width: 100%;
  }

  .list-item {
    padding-left: 0;
    padding-right: 32px;
  }

  .table-wrap .table {
    margin-left: -46px;
    margin-right: -46px;
    width: calc(100% + 92px);
  }

  .table-wrap .table td {
    padding-left: 46px;
    padding-right: 46px;
  }

  #page-content .legend {
    margin-left: -25px;
    margin-right: -45px;
  }
}

@media screen and (min-width: 1295px) {
  #homepage-slider .home-box .home-box-top .box-line:before {
    left: 40%;
  }

  #homepage-slider #slide5 .home-box .home-box-top .box-line:before,
  #homepage-slider #slide4 .home-box .home-box-top .box-line:before {
    left: 45%;
  }
}

@media screen and (min-width: 1300px) {
  .row.row25 {
    margin-left: -25px;
    margin-right: -25px;
  }

  .row.row25 > [class*=col] {
    padding-left: 25px;
    padding-right: 25px;
  }

  .row.row35 {
    margin-left: -35px;
    margin-right: -35px;
  }

  .row.row35 > [class*=col] {
    padding-left: 35px;
    padding-right: 35px;
  }

  .panel-icon .figure-right {
    right: -120px;
  }

  .panel-icon .figure-right img {
    max-width: 106%;
    width: 106%;
  }
}

@media screen and (min-width: 1400px) {
  .hero.usop-association .bg figure {
    width: calc(100% - 668px);
  }

  .hero.usop-association .bg figure img:first-child {
    right: 223px;
  }

  .hero.usop-association .bg figure img:last-child {
    right: 3%;
  }
}

@media screen and (min-width: 1450px) {
  .expanded-wrapper {
    margin-left: -80px;
    margin-right: -80px;
  }
}

@media screen and (max-width: 1200px) {
  .grit img.stars-right {
    max-width: 20vw;
  }
}

@media screen and (max-width: 768px) {
  .grit img.stars-right {
    max-width: 50px;
  }
}

@media screen and (max-width: 767px) {
  .panel-item + .panel-item {
    padding-top: 20px;
  }

  #representation-columns {
    font-size: 20px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  #representation-columns .col {
    max-width: 100%;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
  }

  #representation-columns .col:after {
    content: "";
    top: calc(100% - 22px);
    left: calc(50% - 22px);
  }

  #representation-columns .inner {
    padding-left: 120px;
    padding-right: 20px;
    padding-bottom: 50px;
  }

  #representation-columns figure {
    position: absolute;
    left: 20px;
    width: 95px;
    float: left;
  }
}

@media screen and (max-width: 575px) {
  .star-columns .item:nth-child(1) {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }

  .star-columns .item:nth-child(2) {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }

  .star-columns .item:nth-child(3) {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
  }

  .star-columns .item:nth-child(4) {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }

  .star-columns .item:nth-child(5) {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5;
  }

  .star-columns .item:nth-child(6) {
    -webkit-box-ordinal-group: 7;
    -ms-flex-order: 6;
    order: 6;
  }
}

@media (max-width: 991px) and (min-width: 768px) {
  #representation-columns {
    font-size: 20px;
  }

  .leader-list li {
    width: 49%;
    float: left;
  }

  .leader-list li:nth-child(2n+1) {
    clear: left;
  }
}

@media (min-width: 992px), (max-width: 576px) {
  .stat-boxes .inner {
    display: table;
  }

  .stat-boxes .icon {
    width: 30%;
    display: table-cell;
  }

  .stat-boxes .content {
    width: 70%;
    display: table-cell;
  }
}
/*# sourceMappingURL=maps/style.css.map */
