body {
  font-family:'Inter', sans-serif;
  background-color:#fff;
  color:#000;
  margin:0;
  padding:0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
div {
  box-sizing:border-box;
}
img {
  border:none;
  border-width:0;
}
.en__component--row {
  width:100%;
  margin:0 auto;
}
figure {
  margin:0;
}
header {
  display:block;
  text-align:center;
  margin:1.25rem auto;
  padding:0 1.5rem;
}
header img {
  display:block;
  margin:0 auto 1rem;
}
.dot1 {
 animation: visibility 2s linear infinite;
 display:inline-block;
 font-family:'hey_augustregular', sans-serif;
 font-size: 1.5rem;
 color: #1E44AC;
}
@keyframes visibility {
 0% {
 opacity: 1;
 }
 65% {
 opacity: 1;
 }
 66% {
 opacity: 0;
 }
 100% {
 opacity: 0;
 }
}
.dot2 {
 animation: visibility2 2s linear infinite;
 display:inline-block;
 font-family:'hey_augustregular', sans-serif;
 font-size: 1.5rem;
 color: #1E44AC;
}
@keyframes visibility2 {
 0% {
  opacity: 0;
 }
 21% {
  opacity: 0;
 }
 22% {
  opacity: 1;
 }
 65% {
  opacity: 1;
 }
 66% {
  opacity: 0;
 }
 100% {
  opacity: 0;
 }
}
.dot3 {
 animation: visibility3 2s linear infinite;
 display:inline-block;
 font-family:'hey_augustregular', sans-serif;
 font-size: 1.5rem;
 color: #1E44AC;
}
@keyframes visibility3 {
 0% {
  opacity: 0;
 }
 43% {
  opacity: 0;
 }
 44% {
  opacity: 1;
 }
 65% {
  opacity: 1;
 }
 66% {
  opacity: 0;
 }
 100% {
  opacity: 0;
 }
}
h1, h2, h3 {
  font-family:'hey_augustregular', sans-serif;
}
header h1 {
  display:block;
  color: #1E44AC;
  text-align: center;
  font-size: 3.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  margin: 0 auto 1.25rem;
}
header h1 span {
  display:block;
  color:#000;
  text-align: center;
  font-family: Inter;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  text-transform: none;
}
h2 {
  font-size: 2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
  text-transform: uppercase;
  text-align:center;
}
h3 {
  font-size: 1.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
  text-transform: uppercase;
  text-align:center;
}
p {
  text-align: center;
  font-size: 1.063rem;
  font-style: normal;
  font-weight: normal;
  line-height: 1.4;
}
.cta {
  padding:2.5rem 1.5rem 1.5rem;
}
.cta p {
  text-align: center;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1.4;
  margin:0 auto 1.25rem;
}
a,
a:visited {
  color:#1E44AC;
  transition-duration: .2s;
}
a:hover {
  color:#f14f0f;
}
a:focus {
  outline: 2px solid #0056b3;
  outline-offset: -2px;
}
a:focus-visible {
  outline: 3px solid #0056b3;
  outline-offset: -3px;
}
@media (min-width: 28.125rem) {
  header h1 {
    font-size: 3.75rem;
  }
  .dot1,
  .dot2,
  .dot3 {
    font-size:3rem; 
  }
}
@media (min-width: 39.938rem) {
  body {
    background: linear-gradient(to right,  #e1f1f4 0%,#ffffff 12%,#ffffff 88%,#e9f4e9 100%);
  }
}
@media (min-width: 63.938rem) {
  header h1 {
    font-size: 6.75rem;
    margin: 0 auto 1.813rem;
  }
  header h1 span {
    font-size: 1.75rem;
  }
  .dot1,
  .dot2,
  .dot3 {
    font-size:6rem; 
  }
  h2 {
    font-size: 3rem;
  }
  .cta p {
    font-size: 1.25rem;
  }
}
.marquee {
  width:100%;
  display: flex;
  justify-content: normal;
  align-items: stretch;
  margin: 0 auto;
  flex-wrap: wrap;
}
.marquee .box {
  flex: 0 1 100%;
  background-color: #ccc;
  padding: 0;
}
.marquee .box a {
  display:block;
}
.marquee .thumbnail {
  background-image:url('../images/45th-anniversary-background.jpg');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:top center;
  height:350px;
  align-content: center;
}
@media (min-width: 50rem) {
  .marquee .box {
    flex: 0 1 100%; 
    flex-wrap: nowrap; 
  }
}
.box img {
  display:block;
  width:100%;
  max-width:150px;
  height:auto;
  margin:0 auto
}
.box.left {
  background: linear-gradient(180deg, #5FD7E6 0%, #A6E3AB 50%, #FFCF5A 100%);
}
.box.right {
  background: linear-gradient(180deg, #2D669A 0%, #458BCA 100%);
}
.box .text {
  width:100%;
  max-width:1200px;
  text-align:center;
  margin:0 auto;
  padding: 1.75rem 1.5rem .75rem;
}
.box .text h2 {
  text-align: center;
  margin:0 auto .875rem;
}
.box.left .text h2 {
  color: #1E44AC;
}
.box.right .text h2 {
  color: #fff;
}
.box .text p {
  text-align: center;
  font-size: 1.063rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.6;
  margin:0 auto 1.25rem;
}
.box.left .text p {
  color: #000;
}
.box.right .text p {
  color: #fff;
}
.box .text ul {
  margin:0;
  padding:0;
  list-style-type:none;
}
.box .text li {
  text-align: center;
  font-size: 1rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.6;
  margin:0 auto 1.25rem;
  padding: 0;
}
/*.box.left .text li {
  border-bottom: 1px solid rgba(30,68,172,.4);
}
.box.right .text li {
  border-bottom: 1px solid rgba(255,255,255,.4);
}*/
.box.left .text li {
  color: #1E44AC;
}
.box.right .text li {
  color: #fff;
}
.box .text li a {
  text-decoration:none;
}
.box.left .text li a,
.box.left .text li a:visited {
  color: #003ce0;
  text-decoration: underline;
}
.box.left .text li a:hover {
  color: #1d55ed;
}
.box.right .text li a,
.box.right .text li a:visited {
  color: #FFCF5A;
  text-decoration: underline;
}
.box.right .text li a:hover {
  color: #fed779;
}
@media (min-width: 600px) {
  .box img {
    max-width:250px;
  }
  .box .text li {
    padding: 0;
  }
  .box.left .text li {
    border-bottom: none;
  }
  .box.right .text li {
    border-bottom: none;
  }
}
.gallery {
  width:100%;
  display: flex;
  justify-content: normal;
  align-items: stretch;
  margin: 10px auto;
  flex-wrap: nowrap;
  gap:.2%;
}
.gallery .photo {
  flex: 0 1 33.2%;
  background-color: #ccc;
  padding: 0;
}
.gallery img {
  display:block;
  width:100%;
  height:auto;
}
.sponsor {
  padding:2.5rem 1.5rem 0;
}
.sponsor ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  max-width:800px;
  padding-left: 0;
  margin:0 auto 1.5rem;
}
.sponsor li {
  list-style: none;
  display: inline-block;
  width: calc(100% / 4);
  height: auto;
  text-align: center;
  margin:0 0 .5rem;
}
.sponsor .tier-01 {
  max-width:800px;
  gap:0;
}
.sponsor .tier-01 li {
  width: calc(100% / 3);
}
.sponsor .tier-03 {
  max-width:1024px;
}
.sponsor .tier-03 li {
  margin:0 0 1rem;
}
.sponsor li a {
  display:block;
}
.sponsor img {
  width:100%;
  height:auto;
}
.sponsor .tier-01 img {
  max-width:85%;
}
.sponsor .tier-02 img {
  max-width:75%;
}
.sponsor .tier-03 img {
  max-width:60%;
}
@media only screen and (min-width: 800px) {
  .sponsor ul.tier-03 li {
    width: calc(100% / 5);
  }
  .sponsor .tier-03 li {
    margin:0 0 1.5rem;
  }
  .sponsor .tier-01 img {
    max-width:220px;
  }
  .sponsor .tier-02 img {
    max-width:150px;
  }
  .sponsor .tier-03 img {
    max-width:100px;
  }
}
.sponsor h2 {
  color:#37981B;
  margin:0 auto 1.875rem;
}
.virtual {
  display:block;
  text-align:center;
  padding:2.5rem 2rem 0;
  opacity: 1.0;
  background: linear-gradient(to bottom, #9dd2a3 0%,#d2f0e6 50%,#b9e3f8 100%);
  overflow:auto;
}
.virtual h2 {
  color:#1E44AC;
  margin:0 auto 1.5rem;
}
.virtual ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  max-width:1324px;
  padding-left: 0;
  margin:0 auto;
  gap:4%;
}
.virtual li {
  list-style: none;
  display: inline-block;
  width: 100%;
  height: auto;
  text-align: center;
  margin:1.5rem auto;
}
.virtual li h2 {
  display:block;
  font-family:'Inter', sans-serif;
  text-align: center;
  font-size: 1.063rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  text-transform: none;
  margin:1rem auto 0;
}
.virtual li a {
  display:block;
  color: #000;
  text-decoration: none;
}
.virtual li a:hover {
  color:#1E44AC;
}
.virtual li p a {
  display:inline-block;
  color: #1E44AC;
  text-decoration:underline;
}
.virtual li p a:hover {
  font-weight:bold;
}
.virtual .thumbnail {
  position:relative;
  background: #ccc;
}
.virtual .thumbnail.video a::after {
  content:url("https://resources.peta.org/engaging-networks/pages/peta-events-landing/images/video-icon.svg");
  z-index: 0;
  display: block;
  float: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.virtual img {
  width:100%;
  display:block;
  height:auto;
  margin:0 auto;
  opacity: 1.0;
}
.virtual img:hover {
  opacity:.8;
}
.virtual p {
  display:block;
  font-size:.75rem;
  text-align:center;
  margin:.5rem auto 0;
}
@media (min-width: 37.5rem) {
  .virtual li {
    display: inline-block;
    width: 46%;
  }
  .virtual.three-column li {
    width: 30%;
  }
}
.footer {
  font-family:inherit;
  font-size:0.8125rem;
  font-weight:normal;
  text-align: left;
  margin:0 auto;
  padding: 0 10px 20px 10px;
  background: transparent !important;
}
.footer-border {
  border-top:1px solid #ccc;
  padding: 18px 0 0 0;
}
.footer-logo {
  float:none;
  margin: 6px 0 14px 0;
  display:block;
  text-align:center;
}
.footer-text {
  width:auto;
  float:none;
  margin: 0 auto 1rem auto; 
}
.footer ul {
  list-style-type:none;
  margin:0 0 1rem;
  line-height:0;
  padding:0;
  padding-bottom:0;
}
.footer ul li.list-head {
  font-weight:bold;
  color:#757575;
  border-right:none;
}
.footer ul li {
  display:block;
  font-size:0.8125rem;
  color:#ccc;
  text-align:center;
  margin: 0;
  margin-bottom:.125rem;
  padding: 0;
  border-right: none;
  line-height:1.2rem;
}
.footer #last {
  color:#757575;
  border:none;
}
.footer span.head {
  font-weight:bold;
}
.footer a {
  color:#757575;
  font-size:0.8125rem;
  text-decoration:none;
  font-weight:normal;
}
.footer a:visited {
  color:#757575;
}
.footer a:hover {
  color:#1468a0;
}
.footer p {
  font-size:0.8125rem;
  color:#757575;
  margin:0 0 10px 5px;
  padding-bottom:0;
  text-align:center;
  line-height:1.6;
}
#photo-credit,
.photo-credit {
  font-size:0.625rem;
  color:#757575;
  text-align:left;
  padding:0 0 10px;
  clear:left;
}
#photo-credit {
  margin-left:-3px;
}
@media only screen and (min-width: 64.938rem) {
  .footer {
    padding: 0 1.5rem;
  } 
}
@media only screen and (min-width: 39.938rem) {
  .footer {
    text-align: left;
  }
  .footer-logo {
    width:180px;
    float:left;
    margin: 10px auto 15px auto; 
    text-align:left;
  }
  .footer-text {
    width:100%;
    float:left;
    margin-left:-5px;
  }
  .footer ul {
    margin:0 0 10px;
  }
  .footer ul li {
    display:inline-block;
    margin: 0 0 .25rem 0;
    padding: 0 10px 0 5px;
    border-right: 1px solid #ccc;
  }
  .footer p {
    text-align:left;
  }
  #photo-credit,
  .photo-credit {
    font-size:0.625rem;
    text-align:center;
    margin-left:0;
  }
}