/**
RED: 9c1f2b
light blue is #879ebd
footer dark blue 222030
**/

html{
  height: 100%;
}

body {
height: 100%;
width:100%;
color: #000;
/*font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;*/
font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size:17px;
line-height:24px;
background-color:white;
}

.padding {
padding:12px;
}

[class*="col-"]:not(:last-child){ margin-bottom: 25px; }

.website_name{
font-weight:bold;
}

.wrapper {
margin:0 auto;
max-width:1300px;
border:0px solid red;
}

#header {
background-color:#2D2E2E;
margin:0 auto;
padding:0;
}

#header-top {
background-color:#9c1f2B;
margin:0 auto;
padding:10px 3px;
text-align:right;
color:white;
box-shadow:0 0 3px 0 #ccc;
}

#header #header-top ul{
margin:0 20px;
padding:0;
}

#header #header-top a:link {
color:#fff;
font-size:16px;
}

#header #header-top a:visited {
color:#fff;
}

#header #header-top a:hover {
color:#ccc;
}

#header #header-top a:active {
color:#fff;
}

#header #header-links {
margin:0 auto;
min-height:0;
padding:5px 10px;
background-color:white;
}

#header #header-links #logo{
width:340px;
height:auto;
min-width:0;
min-height:0;
padding:0;
display:block;
}

#header #header-links #logo:hover{
opacity:.9;
transform:scale(1.05);
}

#header #header-links #top-nav{
float:right;
border:0px solid blue;
margin-top:13px;
}

#header #header-links #top-nav .nav li{
margin-right:25px;
}

#header #header-links a:link {
color:#333;
font-size:95%;
}

#header #header-links a:visited {
color:#333;
}

#header #header-links a:hover {
text-decoration:none;
color:#879ebd;
}

#header #header-links a:active {
color:#333;
}

#header nav .dropdown-menu {
padding:10px;
min-width:200px;
background-color:#f5f5f5;
}

#content {
margin:0 auto;
padding:20px;
max-width:100%;
background-color:white;
border:0px solid red;
min-height:300px;
}

/** FOR BOLDING TOP LINK WHEN ON THAT PAGE **/

body[id^="registration"] #top-sports a.nav-link,
body[id^="baseball"] #top-sports a.nav-link,
body[id^="softball"] #top-sports a.nav-link,
body[id^="basketball"] #top-sports a.nav-link,
body[id^="cheerleading"] #top-sports a.nav-link,
body[id^="stars"] #top-sports a.nav-link,
body[id^="sponsors"] #top-sponsors a.nav-link,
body[id^="sponsorship"] #top-sponsors a.nav-link,
body[id^="fields"] #top-facilities a.nav-link,
body[id^="weather"] #top-facilities a.nav-link,
body[id^="background-checks"] #top-coaching a.nav-link,
body[id^="coaching-resources"] #top-coaching a.nav-link,
body[id^="concussion-protocol"] #top-coaching a.nav-link,
body[id^="scholarship"] #top-scholarship a.nav-link,
body[id^="calendar"] #top-events a.nav-link,
body[id^="contact-form"] #top-contact a.nav-link,
body[id^="about"] #top-about a.nav-link{
font-weight:bold;
color:#879ebd !important;
}

#content .red{
color:#9c1f2b;
}

#content .flex-container{
display: flex; /* Establishes a flex container */
flex-direction: row; /* Default: items arranged horizontally */
justify-content: center; /* Default: items aligned to the start of the main axis */
align-items: center; /* Default: items stretch to fill the container along the cross axis */
align-items: flex-start;
align-items: stretch;
flex-wrap: wrap; /* Default: items stay on a single line */
align-content: center;
}

#content .flex-item{
width:30%;
margin:10px auto;
text-align:center;
}

#content .flex-item img{
margin:10px auto 20px auto;
max-height:120px;
max-width:300px;
width:90%;
}

#content a:link {
color: #000;
font-size:17px;
text-decoration: underline;
}

#content a:visited {
color: #000;
}

#content a:hover {
color:#666;
}

#content a:active {
color: #000;
}

#content h1{
color:#fff;
font-size:30px;
background-color:#879ebd;
padding:10px;
margin:0 auto 30px auto;
}

body#home #content h1{
text-align:center;
color:#fff;
font-size:28px;
font-weight:700;
line-height:1.2;
background-color:#9c1f2b;
padding:18px 30px;
margin:0 auto 45px auto;
border-radius:14px;
box-shadow:0 6px 18px rgba(0,0,0,.15);
width:72%;
max-width:900px;
}

#content h2{
color:#222030;
color:#9c1f2b;
font-size:28px;
text-transform: capitalize;
margin:20px 0;
}

#content h3{
color:#666;
color:#9c1f2b;
font-size:24px;
text-transform: capitalize;
}

body#home #content #welcome img{
box-shadow: 5px 5px 3px #ccc;
}

body#home #content #home-sports{
margin:30px auto;
}

body#home #content #home-sports a{
text-decoration:none;
cursor: pointer;
}

body#home #content #home-sports h2{
background-color:#9c1f2b !important;
color:white;
text-align:center;
padding:8px;
}

body#home #content #home-sports h2:hover{
color:#879ebd;
cursor: pointer;
}

body#home #content #home-sports img{
display:block;
margin:10px auto 20px auto;
box-shadow: 5px 5px 3px #ccc;
border-radius: 3px;
width:99%;
}

body#home #content #home-sports img:hover{
opacity: .9
}

body#home #content #home-sponsors h2{
font-size:30px;
text-align:center;
text-transform: capitalize;
margin:30px auto 10px auto;
}

body#home #content #home-sponsors .flex-container{
margin: 0 auto 30px auto;
border:1px solid #ccc;
padding:10px 0;
align-items: flex-end;
}

body#home #content #home-sponsors .flex-container .flex-item{
width:23%;
}

body#home #content #home-sponsors .flex-container img{
width:90%;
max-width:200px;
margin:20px auto;
}

body#home #content #home-sponsors .flex-container img:hover{
transform: scale(1.05);
}

body#home #mySlider{
border:0px solid red;
min-height:50px;
}

body#sponsorship #content img#platinum-sponsorship{
float:right;
padding:0 0 20px 20px;
max-width:500px;
}

body#sponsors #content .flex-container{
margin: 0 auto 40px auto;
border:1px solid #ccc;
padding:10px;
}

body#sponsors #content #all-sponsors h2{
text-transform: capitalize;
margin:30px auto 10px auto;
background-color:#ccc;
color:#222030;
padding:12px;
text-align:center
}

body#sponsorship #content img#platinum-sponsorship{
float:right;
padding:0 0 20px 20px;
max-width:500px;
}

body#sponsors #content .flex-container{
margin: 0 auto 40px auto;
border:1px solid #ccc;
padding:10px;
}

body#sponsors #content #all-sponsors .flex-container{
margin: 0 auto 40px auto;
border:0px solid #ccc;
padding:10px 0;
}

body#sponsors #content #all-sponsors .flex-container .flex-item{
margin:20px 10px;
padding:20px;
border:0px solid #ccc;
min-width:130px;
min-height:50px;
width:23%;
}

body#sponsors #content #all-sponsors .flex-container .flex-item:hover{
border:1px solid #ccc;
cursor:pointer;
}

body#sponsors #content #all-sponsors .flex-container .flex-item img{
width:96%;
}

body#sponsors #content #all-sponsors .flex-container .flex-item img:hover{
transform: scale(1.05);
}

body#sponsors #content #all-sponsors b,
body#home #content #sponsors b{
font-size:110%;
}

#content #myAllForm label{
font-weight:bold;
}

body#contact-form #myAllForm,
body#sponsorship-form #myAllForm{
margin:30px 10px;
background-color:#879ebd;
background-color:#e5e5e5;
padding:15px;
}

body#about-leadership #content .flex-container{
margin: 0 auto 40px auto;
border:0px solid #ccc;
padding:10px;
}

body#about-leadership #content #leadership h2{
text-transform: capitalize;
margin:30px auto 10px auto;
background-color:#ccc;
color:#222030;
padding:10px;
}

body#about-leadership #content #leadership .flex-item {
border:1px solid #ccc;
padding:15px;
}

body#about-leadership #content #leadership .flex-item:hover {
background-color:#f9f9f9;
}

body#about-leadership #content #leadership .flex-item .position{
font-size:110%;
margin-bottom:20px;
}

body#about-leadership #content #leadership .flex-item .staff_email{
font-style: italic;
}

#content a.btn-blue{
background-color:#222030;
padding:10px 30px;
color:white;
}

#content a:link.btn-blue{
color:white;
font-size:125%;
}

#footer{
margin:20px auto 0 auto;
background-color:#222030;
padding:40px 20px;
color:#ccc;
font-size:16px;
}

#footer b{
color:white;
}

#footer a:link {
color: #ccc;
font-size:16px;
text-decoration: underline;
}

#footer a:visited {
color: #ccc;
}

#footer a:hover {
color:#fff;
}

#footer a:active {
color: #ccc
}

#footer #footer-logo {
max-height:150px;
min-width:200px;
}

#footer #footer-logo:hover{
opacity: .9;
transform: scale(1.05)
}

#footer ul#footer-links{
list-style-type:none;
margin:0;
padding: 0px 40px 5px 0px;
}

#copyright{
color:white;
background-color:#9c1f2b;
margin:0 auto;
padding:20px;
text-align:center;
}

@media (max-width: 1000px) {

}

@media (max-width: 992px) {

.navbar-collapse {
margin:0 30px;
}

}

@media (max-width: 768px) {

#header-top {
text-align:center;
}

body#sponsors #content #all-sponsors .flex-container .flex-item,
body#home #content #sponsors .flex-container .flex-item,
body#sponsors #content #all-sponsors .flex-container .flex-item{
width:45%;
}

}

@media (max-width: 480px) {

body#sponsors #content #all-sponsors .flex-container .flex-item,
body#home #content #sponsors .flex-container .flex-item{
width:90%;
}

}

/* ==========================================
   HEADER LAYOUT REFINEMENTS
   ========================================== */

#header #header-links .wrapper{
max-width:1550px;
}

.navbar-brand{
margin-right:20px;
}

.navbar-nav .nav-link{
font-size:15px;
white-space:nowrap;
padding-left:8px;
padding-right:8px;
}

/* ==========================================
   HOMEPAGE WELCOME / HERO
   Reapplied carefully to the restored CSS
   ========================================== */

body#home #content #welcome{
align-items:flex-start !important;
}

body#home #content #welcome .sra-home-hero{
width:100%;
max-width:100%;
box-sizing:border-box;
overflow:hidden;
background:#9c1f2b !important;
border-radius:14px;
padding:52px 58px;
margin:0 0 40px 0;
box-shadow:0 10px 28px rgba(0,0,0,.15);
}

body#home #content #welcome .sra-home-title{
display:block;
width:100% !important;
max-width:100% !important;
margin:0 !important;
padding:0 !important;
background:none !important;
border:0 !important;
border-radius:0 !important;
box-shadow:none !important;
color:#ffffff !important;
font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
font-weight:800 !important;
line-height:1 !important;
letter-spacing:-1.5px !important;
text-align:left !important;
text-transform:none !important;
text-shadow:0 2px 0 rgba(0,0,0,.10),0 6px 18px rgba(0,0,0,.18);
}

body#home #content #welcome .sra-home-summerfield{
display:block;
font-size:66px;
font-weight:800;
line-height:1;
}

body#home #content #welcome .sra-home-organization{
display:block;
margin-top:8px;
font-size:52px;
font-weight:700;
line-height:1.05;
}

body#home #content #welcome .sra-home-tagline{
margin-top:28px;
color:rgba(255,255,255,.94);
font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size:26px;
font-weight:500;
line-height:1.35;
letter-spacing:.2px;
text-shadow:0 2px 8px rgba(0,0,0,.12);
}

body#home #content #welcome #homepageCarousel{
border-radius:16px !important;
overflow:hidden !important;
box-shadow:0 10px 26px rgba(0,0,0,.18) !important;
}

body#home #content #welcome #homepageCarousel img{
display:block;
width:100%;
height:420px;
object-fit:cover;
box-shadow:none;
}

@media (max-width: 991px){

body#home #content #welcome .sra-home-hero{
padding:42px 38px;
}

body#home #content #welcome .sra-home-summerfield{
font-size:54px;
}

body#home #content #welcome .sra-home-organization{
font-size:43px;
}

body#home #content #welcome .sra-home-tagline{
font-size:23px;
}

}

@media (max-width: 767px){

body#home #content #welcome{
display:block !important;
margin-left:0 !important;
margin-right:0 !important;
}

body#home #content #welcome > div{
width:100% !important;
max-width:100% !important;
padding-left:0 !important;
padding-right:0 !important;
}

body#home #content #welcome .sra-home-hero{
width:100% !important;
max-width:100% !important;
margin:0 0 28px 0 !important;
padding:30px 22px !important;
border-radius:12px !important;
box-sizing:border-box !important;
overflow:hidden !important;
}

body#home #content #welcome .sra-home-title{
width:100% !important;
max-width:100% !important;
white-space:normal !important;
overflow-wrap:normal !important;
word-break:normal !important;
letter-spacing:-.8px !important;
}

body#home #content #welcome .sra-home-summerfield{
display:block !important;
font-size:clamp(34px,10vw,46px) !important;
line-height:1 !important;
white-space:normal !important;
overflow-wrap:normal !important;
word-break:normal !important;
}

body#home #content #welcome .sra-home-organization{
display:block !important;
margin-top:0 !important;
font-size:clamp(28px,8vw,38px) !important;
line-height:1.08 !important;
white-space:normal !important;
overflow-wrap:normal !important;
word-break:normal !important;
}

body#home #content #welcome .sra-home-tagline{
margin-top:22px !important;
font-size:clamp(18px,5.1vw,22px) !important;
line-height:1.4 !important;
letter-spacing:0 !important;
white-space:normal !important;
}

body#home #content #welcome #homepageCarousel{
width:100% !important;
max-width:100% !important;
margin-top:28px !important;
}

body#home #content #welcome #homepageCarousel img{
height:360px !important;
}

}

/* ==========================================
   HOMEPAGE SPORTS CARDS — EXACT HTML MATCH
   ========================================== */

body#home #content #home-sports{
display:flex !important;
flex-wrap:wrap !important;
align-items:stretch !important;
margin:42px -12px 50px -12px !important;
}

body#home #content #home-sports > [class*="col-"]{
display:flex !important;
padding-left:12px !important;
padding-right:12px !important;
margin-bottom:24px !important;
box-sizing:border-box !important;
}

body#home #content #home-sports .sport-card{
display:flex !important;
flex-direction:column !important;
width:100% !important;
height:100% !important;
overflow:hidden !important;
background:#ffffff !important;
border:1px solid #e2e2e2 !important;
border-radius:14px !important;
box-shadow:0 6px 18px rgba(0,0,0,.10) !important;
transition:transform .2s ease,box-shadow .2s ease !important;
}

body#home #content #home-sports .sport-card:hover{
transform:translateY(-4px) !important;
box-shadow:0 10px 24px rgba(0,0,0,.15) !important;
}

body#home #content #home-sports .sport-card-image-link{
display:block !important;
margin:0 !important;
padding:0 !important;
text-decoration:none !important;
}

body#home #content #home-sports .sport-card-image{
display:block !important;
width:100% !important;
height:230px !important;
max-width:none !important;
max-height:none !important;
margin:0 !important;
object-fit:cover !important;
border-radius:0 !important;
box-shadow:none !important;
}

body#home #content #home-sports .sport-card-content{
display:flex !important;
flex-direction:column !important;
flex:1 1 auto !important;
min-height:0 !important;
padding:0 18px 20px 18px !important;
box-sizing:border-box !important;
}

body#home #content #home-sports .sport-card-content h2{
margin:0 -18px 18px -18px !important;
padding:14px 16px !important;
background:#9c1f2b !important;
color:#ffffff !important;
font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
font-size:28px !important;
font-weight:700 !important;
line-height:1.15 !important;
text-align:center !important;
text-transform:none !important;
border-radius:0 !important;
}

body#home #content #home-sports .sport-card-content p{
margin:0 0 18px 0 !important;
padding:0 !important;
font-size:17px !important;
line-height:1.55 !important;
}

body#home #content #home-sports .sport-card-content .sport-registration{
margin-bottom:18px !important;
}

body#home #content #home-sports .sport-card-button{
display:block !important;
margin-top:auto !important;
padding:11px 18px !important;
background:#222030 !important;
color:#ffffff !important;
border-radius:8px !important;
font-size:16px !important;
font-weight:700 !important;
line-height:1.2 !important;
text-align:center !important;
text-decoration:none !important;
box-shadow:0 3px 8px rgba(0,0,0,.14) !important;
transition:background-color .2s ease,transform .2s ease !important;
}

body#home #content #home-sports .sport-card-button:hover,
body#home #content #home-sports .sport-card-button:focus{
background:#9c1f2b !important;
color:#ffffff !important;
transform:translateY(-2px) !important;
text-decoration:none !important;
}

@media (max-width:991px){

body#home #content #home-sports .sport-card-image{
height:220px !important;
}

}

@media (max-width:767px){

body#home #content #home-sports{
margin:34px 0 42px 0 !important;
}

body#home #content #home-sports > [class*="col-"]{
width:100% !important;
max-width:100% !important;
flex:0 0 100% !important;
padding-left:0 !important;
padding-right:0 !important;
margin-bottom:24px !important;
}

body#home #content #home-sports .sport-card-image{
height:240px !important;
}

body#home #content #home-sports .sport-card-content h2{
font-size:26px !important;
padding:13px 16px !important;
}

}

/* ==========================================
   HOMEPAGE SPONSOR SECTION — EXACT HTML MATCH
   ========================================== */

body#home #content #home-sponsors{
margin:55px auto 45px auto;
padding:34px 30px;
background:#f7f7f7;
border:1px solid #e2e2e2;
border-radius:16px;
box-shadow:0 6px 18px rgba(0,0,0,.08);
box-sizing:border-box;
}

body#home #content #home-sponsors .home-sponsors-heading{
max-width:900px;
margin:0 auto 30px auto;
text-align:center;
}

body#home #content #home-sponsors .home-sponsors-heading h2{
margin:0 0 10px 0 !important;
padding:0 !important;
background:none !important;
color:#9c1f2b !important;
font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
font-size:34px !important;
font-weight:800 !important;
line-height:1.2 !important;
text-align:center !important;
text-transform:none !important;
}

body#home #content #home-sponsors .home-sponsors-heading p{
margin:0;
font-size:18px;
line-height:1.55;
color:#333333;
}

body#home #content #home-sponsors .sponsor-grid{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:22px;
align-items:stretch;
}

body#home #content #home-sponsors .sponsor-card{
display:flex;
flex-direction:column;
min-width:0;
overflow:hidden;
background:#ffffff;
border:1px solid #dddddd;
border-radius:12px;
box-shadow:0 4px 12px rgba(0,0,0,.08);
transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}

body#home #content #home-sponsors .sponsor-card:hover{
transform:translateY(-4px);
border-color:#c9c9c9;
box-shadow:0 8px 20px rgba(0,0,0,.13);
}

body#home #content #home-sponsors .sponsor-card-link{
display:flex;
flex-direction:column;
flex:1 1 auto;
color:#222030 !important;
text-decoration:none !important;
}

body#home #content #home-sponsors .sponsor-logo-wrap{
display:flex;
align-items:center;
justify-content:center;
height:190px;
padding:22px;
box-sizing:border-box;
background:#ffffff;
}

body#home #content #home-sponsors .sponsor-logo{
display:block;
width:auto !important;
max-width:100% !important;
height:auto !important;
max-height:145px !important;
margin:0 auto !important;
object-fit:contain;
box-shadow:none !important;
border-radius:0 !important;
transition:transform .2s ease;
}

body#home #content #home-sponsors .sponsor-card:hover .sponsor-logo{
transform:scale(1.04);
}

body#home #content #home-sponsors .sponsor-name{
margin-top:auto;
padding:14px 16px;
background:#222030;
color:#ffffff;
font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size:16px;
font-weight:700;
line-height:1.3;
text-align:center;
}

@media (max-width:991px){

body#home #content #home-sponsors .sponsor-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}

}

@media (max-width:767px){

body#home #content #home-sponsors{
margin:42px auto 35px auto;
padding:26px 18px;
border-radius:12px;
}

body#home #content #home-sponsors .home-sponsors-heading{
margin-bottom:24px;
}

body#home #content #home-sponsors .home-sponsors-heading h2{
font-size:29px !important;
}

body#home #content #home-sponsors .home-sponsors-heading p{
font-size:17px;
}

body#home #content #home-sponsors .sponsor-grid{
grid-template-columns:1fr;
gap:18px;
}

body#home #content #home-sponsors .sponsor-logo-wrap{
height:175px;
padding:20px;
}

body#home #content #home-sponsors .sponsor-logo{
max-height:135px !important;
}

}

/* =========================================================
   SRA NAVIGATION — FINAL HIGH-IMPACT OVERRIDE
   Place at the very end of style.css
========================================================= */

/* Top-level navigation buttons */
#header #header-links .navbar-nav{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
}

#header #header-links .navbar-nav .nav-item{
    margin:0 !important;
}

#header #header-links .navbar-nav .nav-link{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:48px !important;
    padding:12px 16px !important;
    color:#2f3033 !important;
    background:#ffffff !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size:17px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:-.2px !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    box-shadow:none !important;
    transition:
        color .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease !important;
}

/* Hovered top-level navigation item */
#header #header-links .navbar-nav .nav-link:hover,
#header #header-links .navbar-nav .nav-link:focus{
    color:#9c1f2b !important;
    background:#fff3f4 !important;
    border-color:rgba(156,31,43,.28) !important;
    box-shadow:0 6px 16px rgba(0,0,0,.10) !important;
    transform:translateY(-2px) !important;
}

/* Open dropdown tab */
#header #header-links .navbar-nav .dropdown.show > .nav-link,
#header #header-links .navbar-nav .dropdown:hover > .nav-link{
    color:#ffffff !important;
    background:#9c1f2b !important;
    border-color:#9c1f2b !important;
    box-shadow:0 8px 20px rgba(156,31,43,.28) !important;
    transform:translateY(-2px) !important;
}

/* Active-page top navigation tab */
body[id^="registration"] #top-sports > .nav-link,
body[id^="baseball"] #top-sports > .nav-link,
body[id^="softball"] #top-sports > .nav-link,
body[id^="basketball"] #top-sports > .nav-link,
body[id^="cheerleading"] #top-sports > .nav-link,
body[id^="stars"] #top-sports > .nav-link,
body[id^="sponsors"] #top-sponsors > .nav-link,
body[id^="sponsorship"] #top-sponsors > .nav-link,
body[id^="fields"] #top-facilities > .nav-link,
body[id^="weather"] #top-facilities > .nav-link,
body[id^="background-checks"] #top-coaching > .nav-link,
body[id^="coaching-resources"] #top-coaching > .nav-link,
body[id^="concussion-protocol"] #top-coaching > .nav-link,
body[id^="scholarship"] #top-scholarship > .nav-link,
body[id^="calendar"] #top-events > .nav-link,
body[id^="contact-form"] #top-contact > .nav-link,
body[id^="about"] #top-about > .nav-link{
    color:#ffffff !important;
    background:#9c1f2b !important;
    border-color:#9c1f2b !important;
    box-shadow:0 8px 20px rgba(156,31,43,.24) !important;
}

/* Dropdown arrow */
#header #header-links .navbar-nav .dropdown-toggle::after{
    margin-left:9px !important;
    border-top-width:6px !important;
    border-right-width:5px !important;
    border-left-width:5px !important;
    transition:transform .2s ease !important;
}

#header #header-links .navbar-nav .dropdown.show > .dropdown-toggle::after,
#header #header-links .navbar-nav .dropdown:hover > .dropdown-toggle::after{
    transform:rotate(180deg) !important;
}

/* Dropdown panel */
#header #header-links nav .dropdown-menu{
    min-width:300px !important;
    margin-top:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#ffffff !important;
    border:1px solid #dddddd !important;
    border-top:0 !important;
    border-radius:14px !important;
    box-shadow:
        0 18px 42px rgba(0,0,0,.20),
        0 4px 10px rgba(0,0,0,.08) !important;
}

/* Dark branded header within each dropdown */
#header #header-links nav .dropdown-menu::before{
    display:block !important;
    padding:13px 20px !important;
    color:#ffffff !important;
    background:#222030 !important;
    border-bottom:5px solid #9c1f2b !important;
    font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:1.2px !important;
    text-transform:uppercase !important;
}

#top-about .dropdown-menu::before{
    content:"About SRA" !important;
}

#top-sports .dropdown-menu::before{
    content:"SRA Sports" !important;
}

#top-sponsors .dropdown-menu::before{
    content:"Sponsorship" !important;
}

#top-facilities .dropdown-menu::before{
    content:"Facilities" !important;
}

#top-coaching .dropdown-menu::before{
    content:"Coaching Resources" !important;
}

/* Dropdown choices */
#header #header-links nav .dropdown-item{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    min-height:56px !important;
    padding:14px 48px 14px 22px !important;
    color:#2f3033 !important;
    background:#ffffff !important;
    border:0 !important;
    border-bottom:1px solid #ececec !important;
    font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size:17px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
    text-decoration:none !important;
    transition:
        color .2s ease,
        background-color .2s ease,
        padding-left .2s ease !important;
}

#header #header-links nav .dropdown-item:last-child{
    border-bottom:0 !important;
}

/* Maroon accent bar */
#header #header-links nav .dropdown-item::before{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    top:8px !important;
    bottom:8px !important;
    width:5px !important;
    background:#9c1f2b !important;
    border-radius:0 6px 6px 0 !important;
    transform:scaleY(0) !important;
    transition:transform .2s ease !important;
}

/* Right-side chevron */
#header #header-links nav .dropdown-item::after{
    content:"›" !important;
    position:absolute !important;
    right:21px !important;
    color:#9c1f2b !important;
    font-family:"Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size:27px !important;
    font-weight:700 !important;
    line-height:1 !important;
    opacity:.45 !important;
    transform:translateX(-4px) !important;
    transition:opacity .2s ease,transform .2s ease !important;
}

#header #header-links nav .dropdown-item:hover,
#header #header-links nav .dropdown-item:focus{
    color:#9c1f2b !important;
    background:#fff3f4 !important;
    padding-left:31px !important;
}

#header #header-links nav .dropdown-item:hover::before,
#header #header-links nav .dropdown-item:focus::before{
    transform:scaleY(1) !important;
}

#header #header-links nav .dropdown-item:hover::after,
#header #header-links nav .dropdown-item:focus::after{
    opacity:1 !important;
    transform:translateX(0) !important;
}

@media (min-width:992px){

    #header #header-links .navbar .dropdown{
        position:relative;
    }

    #header #header-links .navbar .dropdown-menu{
        display:block !important;
        opacity:0;
        visibility:hidden;
        pointer-events:none;

        margin-top:0 !important;
        padding-top:18px !important;

        transform:translateY(10px);

        transition:
            opacity .18s ease,
            transform .18s ease,
            visibility .18s ease;
    }

    #header #header-links .navbar .dropdown:hover > .dropdown-menu,
    #header #header-links .navbar .dropdown:focus-within > .dropdown-menu{
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        transform:translateY(0);
    }

}

@keyframes sraFinalMenuPop{

    from{
        opacity:0;
        transform:translateY(9px) scale(.985);
    }

    to{
        opacity:1;
        transform:translateY(0) scale(1);
    }

}

@media (max-width:991px){

    #header #header-links .navbar-nav{
        align-items:stretch !important;
        gap:5px !important;
        padding:16px 0 !important;
    }

    #header #header-links .navbar-nav .nav-link{
        justify-content:space-between !important;
        width:100% !important;
        padding:14px 17px !important;
        border:1px solid #e5e5e5 !important;
        border-radius:9px !important;
        font-size:18px !important;
    }

    #header #header-links nav .dropdown-menu{
        min-width:0 !important;
        margin:7px 0 12px 15px !important;
        border:1px solid #e1e1e1 !important;
        border-radius:10px !important;
        box-shadow:none !important;
    }

    #header #header-links nav .dropdown-menu::before{
        padding:11px 17px !important;
        font-size:12px !important;
    }

    #header #header-links nav .dropdown-item{
        min-height:53px !important;
        padding:13px 42px 13px 18px !important;
        font-size:17px !important;
    }

    #header #header-links nav .dropdown-item:hover,
    #header #header-links nav .dropdown-item:focus{
        padding-left:24px !important;
    }

}


/* =========================================================
   ABOUT PAGE — FINAL MODERN TYPOGRAPHY
========================================================= */

#about-page{
    max-width:100%;
    box-sizing:border-box;
    color:#292b30;
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

/* Main body paragraphs */
#about-page p{
    margin:0 0 24px 0 !important;
    color:#34363b !important;
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-size:18px !important;
    font-weight:400 !important;
    line-height:1.72 !important;
    letter-spacing:-.1px !important;
}

/* Slightly stronger opening paragraph */
#about-page .about-intro p:first-of-type{
    color:#222030 !important;
    font-size:19px !important;
    font-weight:600 !important;
    line-height:1.68 !important;
}

/* Section headings */
#about-page h2{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.9px !important;
}

/* Main page title */
#about-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-weight:800 !important;
    letter-spacing:-1px !important;
}

/* Buttons */
#about-page .about-button{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-size:17px !important;
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

/* Keep floated images and sections inside the page */
#about-page .about-section{
    max-width:100%;
    box-sizing:border-box;
}

#about-page .about-image{
    box-sizing:border-box;
}

/* Mobile */
@media (max-width:767px){

    #about-page p{
        margin-bottom:20px !important;
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #about-page .about-intro p:first-of-type{
        font-size:18px !important;
    }

    #about-page .about-image{
        float:none !important;
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
        margin:10px auto 25px auto !important;
    }

}

/* =========================================================
   BASEBALL PAGE — MATCH ABOUT PAGE TYPOGRAPHY
========================================================= */

#baseball-page,
#baseball-page *,
#baseball-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

/* Main Baseball page copy */
#baseball-page p,
#baseball-page li,
#baseball-page td,
#baseball-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

/* Paragraph rhythm */
#baseball-page p{
    margin-top:0;
    margin-bottom:24px;
}

/* Lists */
#baseball-page li{
    margin-bottom:9px;
}

/* Bold text */
#baseball-page strong,
#baseball-page b{
    color:#222030;
    font-weight:700;
}

/* Main page title */
#baseball-page-title{
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
}

/* Section headings */
#baseball-page h2,
#baseball-page h3,
#baseball-page h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

/* Buttons and button-style links */
#baseball-page button,
#baseball-page .baseball-register-button,
#baseball-page .baseball-buttons a,
#baseball-page a[style*="background"]{
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

/* Keep table typography readable */
#baseball-page table,
#baseball-page table *{
    font-size:17px;
    line-height:1.5;
}

/* Mobile */
@media (max-width:767px){

    #baseball-page p,
    #baseball-page li,
    #baseball-page td,
    #baseball-page th{
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #baseball-page p{
        margin-bottom:20px !important;
    }

}

/* =========================================================
   SOFTBALL PAGE — MATCH ABOUT PAGE TYPOGRAPHY
========================================================= */

#softball-page,
#softball-page *,
#softball-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

/* Main Softball page copy */
#softball-page p,
#softball-page li,
#softball-page td,
#softball-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

/* Paragraph rhythm */
#softball-page p{
    margin-top:0;
    margin-bottom:24px;
}

/* Lists */
#softball-page li{
    margin-bottom:9px;
}

/* Bold text */
#softball-page strong,
#softball-page b{
    color:#222030;
    font-weight:700;
}

/* Main page title */
#softball-page-title{
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
}

/* Section headings */
#softball-page h2,
#softball-page h3,
#softball-page h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

/* Buttons and button-style links */
#softball-page button,
#softball-page .softball-register-button,
#softball-page .softball-buttons a,
#softball-page .softball-button,
#softball-page a[style*="background"]{
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

/* Registration notice */
#softball-page .softball-registration-notice{
    font-size:18px !important;
    line-height:1.7 !important;
}

/* Keep table typography readable */
#softball-page table,
#softball-page table *{
    font-size:17px;
    line-height:1.5;
}

/* Mobile */
@media (max-width:767px){

    #softball-page p,
    #softball-page li,
    #softball-page td,
    #softball-page th{
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #softball-page p{
        margin-bottom:20px !important;
    }

}




/* =========================================================
   BASKETBALL PAGE — MATCH ABOUT PAGE TYPOGRAPHY
========================================================= */

#basketball-page,
#basketball-page *,
#basketball-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#basketball-page p,
#basketball-page li,
#basketball-page td,
#basketball-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

#basketball-page p{margin-top:0;margin-bottom:24px;}
#basketball-page li{margin-bottom:9px;}

#basketball-page strong,
#basketball-page b{
    color:#222030;
    font-weight:700;
}

#basketball-page-title{
    font-weight:800!important;
    line-height:1.15!important;
    letter-spacing:-1px!important;
}

#basketball-page h2,
#basketball-page h3,
#basketball-page h4{
    font-weight:800!important;
    line-height:1.2!important;
    letter-spacing:-.7px!important;
}

#basketball-page button,
#basketball-page .basketball-button,
#basketball-page .basketball-accordion-button,
#basketball-page a[style*="background"]{
    font-weight:700!important;
    letter-spacing:-.15px!important;
}

#basketball-page table,
#basketball-page table *{
    font-size:17px;
    line-height:1.5;
}

@media (max-width:767px){
    #basketball-page p,
    #basketball-page li,
    #basketball-page td,
    #basketball-page th{
        font-size:17px!important;
        line-height:1.68!important;
    }

    #basketball-page p{
        margin-bottom:20px!important;
    }
}



/* =========================================================
   CHEER PAGE — MATCH ABOUT PAGE TYPOGRAPHY
========================================================= */

#cheer-page,
#cheer-page *,
#cheer-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#cheer-page p,
#cheer-page li,
#cheer-page td,
#cheer-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

#cheer-page p{margin-top:0;margin-bottom:24px;}
#cheer-page li{margin-bottom:9px;}

#cheer-page strong,
#cheer-page b{
    color:#222030;
    font-weight:700;
}

#cheer-page-title{
    font-weight:800!important;
    line-height:1.15!important;
    letter-spacing:-1px!important;
}

#cheer-page h2,
#cheer-page h3,
#cheer-page h4{
    font-weight:800!important;
    line-height:1.2!important;
    letter-spacing:-.7px!important;
}

#cheer-page button,
#cheer-page .cheer-button,
#cheer-page .cheer-accordion-button,
#cheer-page a[style*="background"]{
    font-weight:700!important;
    letter-spacing:-.15px!important;
}

#cheer-page table,
#cheer-page table *{
    font-size:17px;
    line-height:1.5;
}

@media (max-width:767px){
    #cheer-page p,
    #cheer-page li,
    #cheer-page td,
    #cheer-page th{
        font-size:17px!important;
        line-height:1.68!important;
    }

    #cheer-page p{
        margin-bottom:20px!important;
    }
}

/* =========================================================
   STARS PAGE — MATCH ABOUT PAGE TYPOGRAPHY
========================================================= */

#stars-page,
#stars-page *,
#stars-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#stars-page p,
#stars-page li,
#stars-page td,
#stars-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

#stars-page p{
    margin-top:0;
    margin-bottom:24px;
}

#stars-page li{
    margin-bottom:9px;
}

#stars-page strong,
#stars-page b{
    color:#222030;
    font-weight:700;
}

#stars-page-title{
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
}

#stars-page h2,
#stars-page h3,
#stars-page h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

#stars-page button,
#stars-page a[style*="background"]{
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

@media (max-width:767px){

    #stars-page p,
    #stars-page li,
    #stars-page td,
    #stars-page th{
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #stars-page p{
        margin-bottom:20px !important;
    }

}

/* =========================================================
   REGISTRATION PAGE — MATCH ABOUT AND SPORTS TYPOGRAPHY
========================================================= */

#registration-page,
#registration-page *,
#registration-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

/* Main body copy */
#registration-page p,
#registration-page li,
#registration-page td,
#registration-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

/* Paragraph and list rhythm */
#registration-page p{
    margin-top:0;
    margin-bottom:24px;
}

#registration-page li{
    margin-bottom:10px;
}

/* Bold text */
#registration-page strong,
#registration-page b{
    color:#222030;
    font-weight:700;
}

/* Main page title */
#registration-page-title{
    background:#9c1f2b !important;
    background-color:#9c1f2b !important;
    color:#ffffff !important;
    padding:18px 28px !important;
    margin:0 0 35px 0 !important;
    border:0 !important;
    border-radius:12px !important;
    box-shadow:0 6px 18px rgba(0,0,0,.15) !important;
    font-size:42px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
    text-transform:none !important;
}

/* Section headings */
#registration-page h2,
#registration-page h3,
#registration-page h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

/* Buttons and button-style links */
#registration-page button,
#registration-page a[style*="background"]{
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

/* Keep card and notice typography aligned */
#registration-page [style*="border-left"]{
    line-height:1.7;
}

/* Mobile */
@media (max-width:767px){

    #registration-page-title{
        padding:16px 20px !important;
        margin-bottom:28px !important;
        font-size:32px !important;
        line-height:1.18 !important;
        letter-spacing:-.6px !important;
    }

    #registration-page p,
    #registration-page li,
    #registration-page td,
    #registration-page th{
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #registration-page p{
        margin-bottom:20px !important;
    }

}

/* =========================================================
   HOMEPAGE — MATCH ABOUT AND SPORTS TYPOGRAPHY
========================================================= */

body#home #content #welcome,
body#home #content #welcome *{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif;
}

/* Homepage body copy */
body#home #content #welcome .sra-home-copy p{
    margin:0 0 24px 0;
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

/* Hero title */
body#home #content #welcome .sra-home-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-weight:800 !important;
    line-height:1.02 !important;
    letter-spacing:-1.3px !important;
}

body#home #content #welcome .sra-home-summerfield,
body#home #content #welcome .sra-home-organization{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-weight:800 !important;
}

/* Hero tagline */
body#home #content #welcome .sra-home-tagline{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-weight:500 !important;
    letter-spacing:-.2px !important;
}

/* Registration button */
body#home #content #welcome .btn-blue{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

/* Mobile */
@media (max-width:767px){

    body#home #content #welcome .sra-home-copy p{
        margin-bottom:20px;
        font-size:17px;
        line-height:1.68;
    }

    body#home #content #welcome .sra-home-title{
        letter-spacing:-.8px !important;
    }

}

/* =========================================================
   CURRENT SPONSORS PAGE — MATCH ABOUT AND SPORTS TYPOGRAPHY
========================================================= */

#current-sponsors-page,
#current-sponsors-page *,
#current-sponsors-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

/* Main title */
#current-sponsors-page-title{
    background:#9c1f2b !important;
    background-color:#9c1f2b !important;
    color:#ffffff !important;
    padding:18px 28px !important;
    margin:0 0 35px 0 !important;
    border:0 !important;
    border-radius:12px !important;
    box-shadow:0 6px 18px rgba(0,0,0,.15) !important;
    font-size:42px !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
    text-transform:none !important;
}

/* Main body copy */
#current-sponsors-page p,
#current-sponsors-page li,
#current-sponsors-page td,
#current-sponsors-page th{
    color:#34363b;
    font-weight:400;
    letter-spacing:-.1px;
}

/* Paragraph rhythm */
#current-sponsors-page p{
    line-height:1.72;
}

/* Headings */
#current-sponsors-page h2,
#current-sponsors-page h3,
#current-sponsors-page h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

/* Bold text */
#current-sponsors-page strong,
#current-sponsors-page b{
    font-weight:700;
}

/* Sponsor names and buttons */
#current-sponsors-page a,
#current-sponsors-page [style*="font-weight:bold"],
#current-sponsors-page [style*="font-weight: bold"]{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

/* Mobile */
@media (max-width:767px){

    #current-sponsors-page-title{
        padding:16px 20px !important;
        margin-bottom:28px !important;
        font-size:32px !important;
        line-height:1.18 !important;
        letter-spacing:-.6px !important;
    }

    #current-sponsors-page p,
    #current-sponsors-page li{
        font-size:17px !important;
        line-height:1.68 !important;
    }

}

/* =========================================================
   SPONSORSHIP PAGE — MATCH ABOUT & SPORTS TYPOGRAPHY
========================================================= */

#sponsorship-page,
#sponsorship-page *,
#sponsorship-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#sponsorship-page-title{
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
}

#sponsorship-page h2,
#sponsorship-page h3,
#sponsorship-page h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

#sponsorship-page p,
#sponsorship-page li,
#sponsorship-page td,
#sponsorship-page th{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

#sponsorship-page p{
    margin-top:0;
    margin-bottom:24px;
}

#sponsorship-page li{
    margin-bottom:9px;
}

#sponsorship-page strong,
#sponsorship-page b{
    font-weight:700;
}

#sponsorship-page button,
#sponsorship-page a[style*="background"]{
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

@media (max-width:767px){

    #sponsorship-page p,
    #sponsorship-page li{
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #sponsorship-page-title{
        font-size:32px !important;
        letter-spacing:-.6px !important;
    }

}

/* =========================================================
   DONATION PAGE — MATCH ABOUT & SPORTS TYPOGRAPHY
========================================================= */

#donation-page-content,
#donation-page-content *,
#donation-page-title{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#donation-page-title{
    background:#9c1f2b !important;
    color:#ffffff !important;
    font-weight:800 !important;
    line-height:1.15 !important;
    letter-spacing:-1px !important;
    text-transform:none !important;
}

#donation-page-content p,
#donation-page-content li,
#donation-page-content td,
#donation-page-content th{
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

#donation-page-content p{
    margin-top:0;
    margin-bottom:24px;
}

#donation-page-content h2,
#donation-page-content h3,
#donation-page-content h4{
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:-.7px !important;
}

#donation-page-content strong,
#donation-page-content b{
    font-weight:700;
}

#donation-page-content .button,
#donation-page-content .handle{
    font-weight:700 !important;
    letter-spacing:-.15px !important;
}

#donation-page-content .venmo,
#donation-page-content .venmo p,
#donation-page-content .venmo h2{
    color:#ffffff !important;
}

@media(max-width:767px){

    #donation-page-content p,
    #donation-page-content li{
        font-size:17px !important;
        line-height:1.68 !important;
    }

    #donation-page-title{
        font-size:28px !important;
        letter-spacing:-.6px !important;
    }

}

/* =========================================================
   GLOBAL SITE TYPOGRAPHY — FINAL CONSOLIDATED SYSTEM
   Applies automatically to all current and future pages
========================================================= */

html,
body,
button,
input,
select,
textarea{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif;
}

/* Main website regions */
#header,
#header *,
#content,
#content *,
#footer,
#footer *,
#copyright,
#copyright *{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif;
}

/* Standard body copy across every content page */
#content p,
#content li,
#content td,
#content th,
#content label,
#content blockquote{
    color:#34363b;
    font-size:18px;
    font-weight:400;
    line-height:1.72;
    letter-spacing:-.1px;
}

/* Consistent paragraph rhythm */
#content p{
    margin-top:0;
    margin-bottom:24px;
}

/* Lists */
#content li{
    margin-bottom:9px;
}

/* Strong text */
#content strong,
#content b{
    font-weight:700;
}

/* Page and section headings */
#content h1,
#content h2,
#content h3,
#content h4,
#content h5,
#content h6{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#content h1{
    font-weight:800;
    line-height:1.15;
    letter-spacing:-1px;
}

#content h2,
#content h3,
#content h4{
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.7px;
}

/* Buttons, navigation, form controls, and linked controls */
#content a,
#content button,
#content input,
#content select,
#content textarea,
#header a,
#footer a{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;
}

#content button,
#content input[type="button"],
#content input[type="submit"],
#content input[type="reset"],
#content a[class*="button"],
#content a[class*="btn"],
#content a[style*="background"]{
    font-weight:700;
    letter-spacing:-.15px;
}

/* Tables */
#content table{
    font-family:
        "Avenir Next",
        Avenir,
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif;
}

/* Preserve white text inside dark or branded panels */
#content [style*="background:#222030"],
#content [style*="background: #222030"],
#content [style*="background:#9c1f2b"],
#content [style*="background: #9c1f2b"]{
    color:#ffffff;
}

/* Mobile typography */
@media (max-width:767px){

    #content p,
    #content li,
    #content td,
    #content th,
    #content label,
    #content blockquote{
        font-size:17px;
        line-height:1.68;
    }

    #content p{
        margin-bottom:20px;
    }

}

/* ==========================================
   CONTACT PAGE HERO TEXT
========================================== */

#contact-page .hero-copy,
#contact-page .hero-copy p,
#contact-page .hero-copy h1,
#contact-page .hero-copy h2,
#contact-page .hero-copy h3,
#contact-page .hero-copy h4{
    color:#ffffff !important;
}

#contact-page .hero-copy p{
    font-size:20px !important;
    line-height:1.7 !important;
}

/* =========================================================
   ABOUT PAGE — MOBILE IMAGE STACKING FIX
========================================================= */

@media (max-width:767px){

    #about-page .about-section{
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    #about-page .about-image,
    #about-page .about-logo{
        float:none !important;
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
        margin:0 auto 24px auto !important;
        clear:both !important;
    }

    #about-page .about-section p{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        clear:both !important;
    }

    #about-page #volunteer-section{
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        gap:22px !important;
        width:100% !important;
        max-width:100% !important;
        margin-bottom:30px !important;
        overflow:visible !important;
    }

    #about-page #volunteer-section > div{
        order:2 !important;
        display:block !important;
        flex:0 0 auto !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    #about-page #volunteer-section > img.about-image{
        order:1 !important;
        display:block !important;
        float:none !important;
        clear:both !important;
        flex:0 0 auto !important;
        align-self:stretch !important;
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
        margin:0 !important;
    }

    #about-page #volunteer-section > div p{
        display:block !important;
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

}