/* Shared public navigation and readable page foundations. */
.hub-header{font-family:Arial,Helvetica,sans-serif;position:relative;z-index:20;min-height:84px;background:#121019}.hub-header a{text-decoration:none;color:inherit}.hub-header img{display:block}.hub-header .hub-brand-sub{font-size:10px}.hub-header .hub-button{color:#fff}.hub-header nav a{font-size:15px}.hub-page{background:#faf9fc}.hub-main{padding-top:32px}.hub-muted,.field-note{color:#5e546b}.hub-overline{font-size:13px!important}.hub-card-top,.hub-badge{font-size:12px}.hub-card-bottom{font-size:14px}.hub-record span{font-size:14px}.hub-game{box-shadow:0 8px 25px #25163605}.hub-section-title h2{font-size:34px}.hub-story-copy .hub-overline{font-size:12px!important}.hub-story-copy>p:not(.hub-overline){font-size:16px}.hub-footer{font-family:Arial,Helvetica,sans-serif}.hub-footer nav a:hover{text-decoration:underline;text-underline-offset:4px}.community-nav{font-family:Arial,Helvetica,sans-serif}
/* First screen: preserve the role choice and connect it to current coverage. */
.entry-page{background:#111017}.entry-page>.md-ticker{display:flex}.entry-page .welcome{min-height:auto;background:radial-gradient(ellipse at 75% 0,#4a286046,transparent 60%),#111017}.entry-topline{display:flex;justify-content:space-between;gap:20px;padding-block:19px 0;color:#afa3bd;font-size:11px;font-weight:700;letter-spacing:1.8px}.entry-page .welcome-main{padding-block:30px 40px}.entry-page .welcome-heading{margin-bottom:27px}.entry-page .welcome h1{font-size:clamp(39px,4.5vw,65px)}.entry-page .role-card{height:340px;min-height:320px;border-radius:10px;box-shadow:none}.entry-page .role-top{font-size:11px}.entry-page .role-copy strong{font-size:clamp(35px,3.9vw,53px)}.entry-page .role-description{font-size:16px}.entry-page .role-action{font-size:14px}.entry-page .role-card:hover{transform:translateY(-4px)}.entry-page #experience .site-header .wordmark,.entry-page #experience .legacy-nav{display:none}.entry-page #experience .header-inner{min-height:65px;justify-content:flex-end}.entry-page #experience{background:#f8f7fb}.entry-page .state-welcome{min-height:calc(100svh - 140px)}.entry-page .state-welcome .welcome-header .wordmark{display:none}.entry-page .state-welcome .welcome-header{justify-content:flex-end;min-height:64px}.entry-page .state-card{height:390px}.home-community{background:#faf9fc;color:#1a1522;padding:40px max(30px,calc((100vw - 1160px)/2)) 55px;border-top:1px solid #32263f}.home-community-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.home-community-heading h2{font-size:37px;letter-spacing:-1.4px;margin:0;line-height:1.1}.home-community-heading .hub-overline{margin-bottom:10px}.home-community-grid{display:grid;grid-template-columns:1fr;gap:28px}.home-scores{background:#fff;border:1px solid #e3deeb;border-radius:12px;padding:24px}.home-section-label{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin-bottom:18px}.home-section-label a{font-size:13px;color:#6636b6;font-weight:600}.home-scores .hub-game{padding:18px 0;border:0;border-top:1px solid #e7e1ee;border-radius:0;box-shadow:none}.home-scores .hub-game:last-child{padding-bottom:0}.home-scores .hub-match{padding:16px 0;gap:9px}.home-scores .hub-match>span{font-size:19px}.home-scores .hub-card-bottom{border:0;padding:0}.home-feature{padding:30px;background:#eee6fc;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.home-feature h3{font-size:38px;line-height:1.08;letter-spacing:-1.4px;margin-bottom:20px}.home-feature>p:not(.hub-overline){font-size:16px;line-height:1.65;color:#554960;max-width:400px}.home-feature>.hub-text-link{margin-top:20px}.home-feature>.hub-story{width:100%}.home-feature:has(.hub-story){padding:0;background:transparent}.home-feature .hub-story-cover{height:170px}.home-feature .hub-story-cover strong{font-size:29px}.home-feature .hub-story img{height:200px;object-fit:cover}.home-feature .hub-story-copy h2{font-size:23px}.home-feature .hub-story-copy>p:not(.hub-overline){display:none}.home-empty{line-height:1.6;color:#5f546b;margin:20px 0}
/* Score workspace: browse first on every screen size. */
.score-workspace-tabs{display:flex;gap:8px;border-bottom:1px solid #d8cde5;margin:0 0 28px;padding-bottom:12px;overflow:auto}.score-workspace-tabs button{border:1px solid transparent;border-radius:7px;background:transparent;color:#594a6c;min-height:46px;padding:12px 20px;font-weight:700;font-size:15px;white-space:nowrap}.score-workspace-tabs button[aria-selected=true]{background:#17121f;color:#fff;box-shadow:0 5px 14px #25153812}.score-workspace-ready .scores-layout{display:block}.score-workspace-ready .scoreboard-panel{margin:0;padding:0}.score-workspace-ready .submission-panel{max-width:820px;margin-inline:auto;padding:32px}.score-workspace-ready #updates-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.score-workspace-ready #updates-feed .board-empty{grid-column:1/-1;max-width:none}.score-workspace-ready .feed-controls{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;align-items:end;gap:15px;padding:22px;background:#fff;border:1px solid #ded5e8;border-radius:10px}.score-workspace-ready .feed-controls label:first-child{grid-column:auto}.score-workspace-ready .feed-controls input,.score-workspace-ready .feed-controls select{font-size:16px}.score-workspace-ready .update-card{margin:0;box-shadow:0 7px 23px #23132d04}.score-workspace-ready .update-top{flex-direction:column;gap:6px;padding:17px 20px;background:#17121f;color:#bcb0ce}.score-workspace-ready .update-top strong{color:#ddccff;letter-spacing:.6px;font-size:12px}.score-workspace-ready .update-bottom{flex-wrap:wrap;gap:8px}.score-workspace-ready .update-bottom>span{flex-basis:100%;font-size:13px;color:#62546f}.score-workspace-ready .update-bottom>a{font-size:14px;color:#5f2fa4}.score-workspace-ready .update-bottom button{margin-left:auto}.score-workspace-ready .team-line{font-size:18px}.score-workspace-ready .update-player p:not(.eyebrow){color:#5e4d6e}.score-workspace-ready .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.score-related-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.score-related-links a{padding:22px;background:#ede6f9;border:1px solid #ded2ee;border-radius:8px;font-size:16px;font-weight:700;color:#3e255b}.score-workspace-ready .board-heading h2{font-size:32px}.score-workspace-ready .board-heading .eyebrow{margin-bottom:8px}.score-workspace-ready .brand-note{margin-top:25px}.score-workspace-ready .brand-note p{color:#665470}.scores-heading{margin-bottom:26px}.scores-heading h1{font-size:clamp(37px,4.2vw,56px)}.scores-heading>p{font-size:17px;color:#605168}
/* Registration: four focused steps, with the same durable signup form. */
.signup-layout{padding-block:38px 60px;gap:38px}.signup-layout h1{font-size:clamp(33px,3.8vw,49px)}.signup-layout .page-lead{margin-bottom:25px;max-width:650px}.signup-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;scroll-margin-top:25px}.signup-progress button{border:1px solid #d9d0e5;background:#fff;border-radius:8px;padding:12px 8px;display:flex;gap:8px;align-items:center;justify-content:center;font-size:14px;color:#625270;font-weight:600;min-height:52px}.signup-progress button>span{display:grid;place-items:center;background:#ede6f6;width:24px;height:24px;border-radius:50%;font-size:12px}.signup-progress button.active{background:#221530;border-color:#221530;color:white}.signup-progress button.active>span{background:#7643c0;color:white}.signup-progress button.complete{border-color:#b498de;color:#62379d}.signup-step-note{color:#655571;font-size:14px;margin-bottom:20px}.signup-step-actions{display:flex;justify-content:space-between;gap:15px;margin-top:20px}.signup-step-actions #signup-next{margin-left:auto}.signup-layout .form-section{padding:28px;box-shadow:0 8px 25px #29133e04}.signup-layout .form-section h2:focus{outline:none}.signup-aside{align-self:start;position:sticky;top:30px}.signup-layout .optional{font-size:13px}.signup-layout .field-note{color:#665971}.signup-layout .form-grid>label{font-size:15px}
/* The newsroom opens on its working controls; keep staff pages compact. */
.hub-page:has(#article-editor) .hub-page-intro{padding-top:5px;padding-bottom:6px}.hub-page:has(#article-editor) .hub-page-intro h1{font-size:39px;line-height:1.1}.hub-page:has(#article-editor) .hub-page-intro h1 br{display:none}.hub-page:has(#article-editor) .hub-page-intro>p:last-child{font-size:16px}.hub-page:has(#article-editor) .hub-notice{margin-top:15px}.editor-list{position:sticky;top:20px}.editor-form label{font-size:15px}.editor-form .hub-panel{background:#f8f5fd;border-color:#dfd4ee}.score-admin-card .admin-score-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.score-admin-card .admin-score-fields label{font-size:14px}.score-admin-card .admin-score-fields textarea{min-height:95px}.form-header .admin-wrap{flex-wrap:wrap;row-gap:10px}.workspace-heading{padding-block:35px}.workspace-heading h1{font-size:45px}
@media(max-width:1100px){.score-workspace-ready #updates-feed{grid-template-columns:repeat(2,minmax(0,1fr))}.score-workspace-ready .feed-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.score-workspace-ready .feed-controls label:first-child{grid-column:span 2}.hub-header nav a{font-size:14px}}
@media(max-width:760px){.entry-topline{font-size:10px;gap:12px}.entry-topline>span:last-child{display:none}.entry-page .welcome-main{padding-top:26px}.entry-page .welcome-heading{gap:17px;align-items:flex-start}.entry-page .welcome-intro p{font-size:17px}.entry-page .welcome-intro>span{font-size:15px}.entry-page .role-grid{grid-template-columns:1fr;gap:14px}.entry-page .role-card{height:230px;min-height:230px;padding:23px}.entry-page .role-card>img{object-position:center 32%}.entry-page .role-card:before{background:linear-gradient(90deg,#100a1be8 0,#100a1baa 48%,#100a1b20 100%)}.entry-page .role-top{position:absolute;top:21px;left:23px;right:23px;font-size:10px}.entry-page .role-copy{margin-top:auto}.entry-page .role-prefix{font-size:10px;margin-bottom:5px}.entry-page .role-copy strong{font-size:36px;margin-bottom:6px}.entry-page .role-description{font-size:14px}.entry-page .role-action{margin-top:15px;font-size:13px}.entry-page .role-icon{width:30px;height:30px}.entry-page .state-card{height:300px}.home-community{padding:30px 22px 40px}.home-community-grid{grid-template-columns:1fr}.home-community-heading{align-items:flex-start;flex-direction:column;gap:14px}.home-community-heading h2{font-size:32px}.home-feature{padding:28px}.home-feature h3{font-size:33px}.home-scores{padding:20px}.home-section-label{font-size:13px}.home-section-label a{font-size:12px}.score-workspace-tabs{gap:5px}.score-workspace-tabs button{padding:12px;font-size:14px}.score-workspace-ready .feed-controls{grid-template-columns:1fr 1fr;padding:18px;gap:14px}.score-workspace-ready .feed-controls label:first-child{grid-column:1/-1}.score-workspace-ready #updates-feed{grid-template-columns:1fr}.score-workspace-ready .submission-panel{padding:24px}.score-related-links{grid-template-columns:1fr;gap:12px}.score-related-links a{padding:18px}.scores-heading{gap:13px}.scores-heading h1{font-size:38px}.scores-heading>p{font-size:16px}.signup-layout{gap:25px;padding-top:28px}.signup-layout .form-section{padding:22px}.signup-progress{gap:5px}.signup-progress button{font-size:12px;flex-direction:column;padding:9px 4px;gap:7px}.signup-progress button>span{width:23px;height:23px}.signup-aside{position:static}.signup-layout .form-grid>label{font-size:14px}.editor-list{position:static}.hub-page:has(#article-editor) .hub-page-intro h1{font-size:32px}.score-admin-card .admin-score-fields{grid-template-columns:1fr}.hub-header{padding:16px 20px}.hub-header nav{padding-top:4px;gap:12px 19px}.hub-section-title h2{font-size:29px}.hub-header .hub-brand{font-size:20px}.hub-main .hub-hero{min-height:0}.hub-main .hub-hero>div:first-child{padding:30px 25px}.hub-main .hub-hero h1{font-size:40px}.hub-main .hub-hero-photo{height:220px}.hub-main .hub-paths{margin-top:18px}.hub-callout h2{font-size:28px}}
@media(max-width:450px){.score-workspace-ready .form-grid{grid-template-columns:1fr}.score-workspace-ready .form-grid .full{grid-column:auto}.score-workspace-ready .submission-panel{padding:22px 17px}.home-scores .hub-card-top{gap:8px}.entry-page .welcome h1{font-size:36px;letter-spacing:-1.8px}.home-scores .hub-match>span{font-size:17px}.hub-header .hub-brand-sub{font-size:8px}.hub-header .hub-account{font-size:13px}.signup-layout h1{font-size:34px}}

.staff-reporting{border-block:1px solid #e2d8ec;margin:22px 0;padding:16px 0}.staff-reporting>summary{font-size:15px;font-weight:700;color:#5d347e;cursor:pointer}.staff-reporting>.admin-score-fields{margin-top:20px}.staff-reporting textarea{width:100%;min-height:95px}
.hub-paths>a{display:flex;flex-wrap:wrap;overflow:hidden;padding:0 0 24px}.hub-paths>a>.hub-path-photo{flex:0 0 100%;width:100%;height:200px;overflow:hidden;margin-bottom:20px}.hub-path-photo>.program-path-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 32%;transition:transform .65s ease}.hub-paths>a>span{margin-left:22px}.hub-paths>a>div{flex:1;min-width:0}.hub-paths>a>b{margin-right:20px}.hub-header nav{flex-wrap:wrap}

/* Display the uploaded mark without its transparent outer canvas. */
.hub-brand img{width:80px;height:54px;object-fit:contain}
.south-carolina-hero .hub-hero-photo{background:#17131f;min-height:440px}
.south-carolina-hero .hub-hero-photo img{object-fit:contain;object-position:center}
.south-carolina-hero .hub-text-link{display:inline-block;margin-top:24px}
@media(max-width:760px){.south-carolina-hero .hub-hero-photo{height:auto;min-height:0}.south-carolina-hero .hub-hero-photo img{position:static;width:100%;height:auto}}

/* Fill the Maryland photo frames without empty borders. */
.hub-paths.maryland-paths>a>.hub-path-photo{height:300px}.hub-paths.maryland-paths .program-path-photo{object-position:center}
#maryland-options .image-wrap{aspect-ratio:auto;height:300px;min-height:0;background:#17131f}
#maryland-options .image-wrap img{position:static;object-fit:cover;object-position:center}


/* Maryland's supplied team portrait carries through the page background. */
.location-programs-page,body[data-state="maryland"] #experience{background:linear-gradient(#faf9fcbd,#faf9fce8),url("https://ttg32sports.fitclub32.chatgpt.site/assets/maryland-page-background.jpg") center 84px/100% auto no-repeat #faf9fc}
.location-programs-page .hub-hero-photo img{display:block;object-fit:cover;object-position:center}

/* Maryland title and flag-backed reporting actions. */
@font-face{font-family:"32 Sports Display";src:url("/assets/fonts/NimbusSansNarrow-BoldOblique.otf") format("opentype");font-style:italic;font-weight:700;font-display:swap}
.location-programs-page .maryland-hero>div:first-child{container-type:inline-size;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start;padding-block:24px;background:linear-gradient(#181221c9,#181221dc),url("/assets/maryland-state-flag.svg") center/cover no-repeat}
.location-programs-page .maryland-hero h1,body[data-state="maryland"] .hero-copy h1{font-family:"32 Sports Display","Arial Narrow",Arial,sans-serif;font-style:italic;font-weight:700;font-size:min(3rem,6.44cqw);line-height:1.1;letter-spacing:0;white-space:nowrap;margin-bottom:8px}
.location-programs-page .maryland-hero .maryland-subtitle,body[data-state="maryland"] #headline-second{font-family:"32 Sports Display","Arial Narrow",Arial,sans-serif;font-style:italic;font-weight:700;font-size:min(2rem,5cqw);line-height:1.2;letter-spacing:.01em;white-space:nowrap;color:var(--hub-lilac);margin:0 0 20px;max-width:none}
.maryland-score-actions{container-type:inline-size;display:grid;grid-template-columns:1fr;gap:10px;margin:0 0 16px;width:100%;max-width:500px}
.maryland-score-actions .hub-button{min-height:60px;padding:10px 8%;border:1px solid #ffffff70;border-radius:10px;background:linear-gradient(#12101788,#121017aa),url("/assets/maryland-state-flag.svg") center/100% 100% no-repeat;color:#fff!important;box-shadow:0 6px 18px #140e242b;font-family:"32 Sports Display","Arial Narrow",Arial,sans-serif;font-style:italic;font-weight:700;font-size:5.756cqw;letter-spacing:0;line-height:1.15;text-align:center;white-space:nowrap;text-shadow:0 2px 3px #000,0 0 8px #000;transition:filter .15s,border-color .15s}
.maryland-score-actions .hub-button:nth-child(2){font-size:6.674cqw}
.maryland-score-actions .hub-button:nth-child(3){font-size:6.526cqw}
.maryland-score-actions .hub-button:hover,.maryland-score-actions .hub-button:focus-visible{filter:brightness(1.15);border-color:#fff}
.location-programs-page .maryland-hero>div:first-child>p:last-child{margin-bottom:0}
body[data-state="maryland"] .experience-hero{background:linear-gradient(#181221cf,#181221e3),url("/assets/maryland-state-flag.svg") center/cover no-repeat}
body[data-state="maryland"] .experience-hero .hero-photo,body[data-state="maryland"] .experience-hero:before,body[data-state="maryland"] .experience-hero .hero-cta{display:none}
body[data-state="maryland"] .hero-inner{min-height:0;align-items:flex-start;padding-block:24px 48px}
body[data-state="maryland"] .hero-copy{container-type:inline-size;min-width:0;width:100%}
body[data-state="maryland"] .hero-copy h1{margin-bottom:20px}
.hub-paths.maryland-paths>a[href="/maryland/college-showcase"] .program-path-photo,#maryland-college-showcase .image-wrap img{object-position:center 35%}
@media(max-width:760px){.maryland-score-actions .hub-button{min-height:56px}}

/* Shared media and mindset cards on every state page. */
.hub-main>.state-services{margin-top:24px}
.state-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.state-services .program-card{min-width:0;border:1px solid #e4deed;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 7px 24px #22143805}
.state-services .card-link{display:flex;flex-direction:column;height:100%;color:#17131f;text-decoration:none}
.state-services .card-link:focus-visible{outline:4px solid #773cf0;outline-offset:-4px}
.state-services .image-wrap{aspect-ratio:1.57;overflow:hidden;position:relative;background:#ede9f2}
.state-services .image-wrap img{display:block;width:100%;height:100%;object-fit:cover}
.state-services .photo-label{position:absolute;z-index:1;bottom:16px;left:18px;max-width:calc(100% - 36px);padding:8px 10px;font-size:12px;font-weight:800;letter-spacing:.7px;border-radius:3px;color:#fff;background:#211131e8;border:1px solid #ffffff26}
.state-services .card-content{padding:25px 24px 0;display:flex;flex-direction:column;flex:1}
.state-services .kicker{font-size:12px;font-weight:800;letter-spacing:1.2px;color:#7034c8;margin:0 0 12px}
.state-services h2{font-size:28px;line-height:1.2;letter-spacing:-.6px;margin:0 0 18px}
.state-services .description{font-size:17px;color:#68616f;line-height:1.65;margin:0 0 30px}
.state-services .card-action{margin-top:auto;padding:19px 0 20px;border-top:1px solid #e4deed;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:15px;font-weight:750}
.state-services .card-action>span{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#f0e9fc;display:grid;place-items:center;font-size:23px;color:#773cf0;transition:background .2s ease,color .2s ease}
.state-services .card-link:hover .card-action{color:#773cf0}
.state-services .card-link:hover .card-action>span{background:#773cf0;color:#fff}
@media(max-width:760px){.state-services-grid{grid-template-columns:1fr}.state-services .card-content{padding:24px 23px 0}.state-services h2{font-size:26px}}

/* Match the welcome cards' subtle photo zoom across program cards. */
.hub-paths>a,.program-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.image-wrap img{transition:transform .65s ease}
.hub-paths>a:hover,.hub-paths>a:focus-visible,.program-card:hover,.program-card:focus-within{transform:translateY(-4px);border-color:#b89bde;box-shadow:0 18px 35px #39225418}
.hub-paths>a:hover .program-path-photo,.hub-paths>a:focus-visible .program-path-photo,.program-card:hover .image-wrap img,.program-card:focus-within .image-wrap img,.role-card:focus-visible>img{transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){.hub-paths>a,.program-card,.role-card,.program-path-photo,.image-wrap img,.role-card>img{transition:none!important}.hub-paths>a:hover,.hub-paths>a:focus-visible,.program-card:hover,.program-card:focus-within,.role-card:hover,.role-card:focus-visible,.hub-paths>a:hover .program-path-photo,.hub-paths>a:focus-visible .program-path-photo,.program-card:hover .image-wrap img,.program-card:focus-within .image-wrap img,.role-card:hover>img,.role-card:focus-visible>img{transform:none!important}}

/* Keep the group visible in the 4 Quarters photo. */
[data-program="four-quarters"] .image-wrap img,#maryland-options [data-program="four-quarters"] .image-wrap img{object-position:center 28%}

/* Keep the huddle faces visible in the tournament card crop. */
.maryland-paths .program-path-photo[src$="maryland-feature-huddle.jpg"],#maryland-tournaments .image-wrap img{object-position:center 23%}

/* Keep the player-community line aligned with the whole state heading. */
#state-chooser .welcome-heading{display:block}
#state-chooser .state-heading-copy{position:relative;width:max-content;max-width:100%;padding-bottom:64px}
#state-chooser .state-community{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding-top:13px;border-top:1px solid #d8b1ff85;color:#eee2ff;font-family:"32 Sports Athletics","Arial Narrow",Arial,sans-serif;font-size:clamp(24px,3.2vw,40px);font-weight:900;line-height:1.2;letter-spacing:.005em;white-space:nowrap;text-shadow:0 3px 15px #10061c}
#state-chooser .state-community>span:first-child{color:#edaadd}
@media(max-width:760px){#state-chooser .state-heading-copy{padding-bottom:51px}#state-chooser .state-community{font-size:clamp(17px,4.5vw,28px);gap:7px;padding-top:10px}}

#state-chooser #state-title{font-family:"32 Sports Athletics","Arial Narrow",Arial,sans-serif;font-weight:900;font-size:clamp(44px,6.6vw,86px);line-height:1.05;letter-spacing:.005em}
@media(max-width:760px){#state-chooser #state-title{font-size:clamp(35px,9vw,64px)}}

/* Keep the players and kitchen team visible in the community-impact card. */
.maryland-paths a[href="https://standtogether.org/standtogether-nfl"] .program-path-photo,#maryland-philanthropic-locker-room .image-wrap img{object-position:52% 50%}

/* Brazil's destination uses the same typography with Brazilian flag colors. */
.hub-main .brazil-hero{background:linear-gradient(125deg,#006d3d,#005143 48%,#073c8e);border:1px solid #ffdf0070}
.hub-main .brazil-hero h1 span,.brazil-hero .hub-overline{color:#ffdf00}
.brazil-hero .hub-button{background:#ffdf00;border-color:#ffdf00;color:#123969}
.brazil-hero .hub-button.secondary{background:transparent;border-color:#ffdf0099;color:#fff}
.brazil-hero .hub-text-link{display:inline-block;margin-top:24px;color:#fff}
.brazil-hero-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:40px;background:linear-gradient(150deg,#029447,#008057 55%,#064f9a)}
.brazil-hero-brand img{width:250px;height:170px;object-fit:contain;filter:drop-shadow(0 4px 18px #fff7)}
.brazil-hero-brand .brazil-flag{font-size:3rem;line-height:1}
.brazil-hero-brand p{margin:0;color:#ffed68;font-weight:800;letter-spacing:.12em}

/* Give the partnership card name room at every homepage width. */
#welcome .sponsor-role-card .role-label-partnership{font-size:clamp(1.4rem,2.4vw,2.3rem);line-height:1.08;letter-spacing:-.02em}#welcome .role-label-partnership>span{display:block;font:inherit;letter-spacing:inherit;color:inherit;margin:0}#welcome .sponsor-role-card>img{object-position:center 38%}

/* Location first, then role, with the selected community kept in view. */
#state-chooser .welcome-heading{margin-bottom:42px}
#state-chooser .state-heading-copy{width:100%;padding-bottom:0}
#state-chooser .state-community{position:static;justify-content:flex-start;flex-wrap:wrap;white-space:normal;margin-top:24px;font-size:clamp(20px,2.6vw,32px)}
#welcome .role-location-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0 22px}
#welcome .role-location{margin:0;font-size:clamp(18px,2vw,25px);color:#f1e8ff}
#welcome .role-location>span{color:#d4bfff;margin-right:8px}
#welcome .role-location-row button{flex-shrink:0}
@media(max-width:760px){#state-chooser .welcome-heading{margin-bottom:28px}#state-chooser .state-community{font-size:20px;gap:4px 10px}#welcome .role-location-row{gap:12px}#welcome .role-location{font-size:18px}#welcome .role-location-row button{font-size:14px;padding:10px 13px}}

/* Crop above the banner to hide the entire top scaffold, lifting the photo and cards together. */
#state-chooser .location-entry{--location-card-height:clamp(290px,26vw,420px);--location-photo-top:-9vw;position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:calc(var(--location-photo-top) + 66vw + 24px);overflow:hidden;background:#110b1c}
#state-chooser:before{display:none}
#state-chooser .location-entry:after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#110b1ccf 0%,#110b1c33 19%,transparent 37%),linear-gradient(0deg,#110b1c 0%,#110b1ce8 9%,#110b1c00 35%)}
#state-chooser .location-entry .player-page-background{position:absolute;inset:auto;top:var(--location-photo-top);left:0;z-index:0;display:block;width:100%;height:auto;max-width:none;object-fit:contain;object-position:center top;clip-path:inset(12% 0 0);opacity:1;filter:none;pointer-events:none}
#state-chooser .location-entry .welcome-header{position:absolute;top:8px;left:20px;right:20px;z-index:4;min-height:44px;border-bottom:0;width:auto;pointer-events:none}
#state-chooser .location-entry .welcome-header a{pointer-events:auto}
#state-chooser .location-entry .welcome-main{position:static;z-index:auto;width:min(1600px,calc(100% - 80px));flex:1;justify-content:space-between;gap:36px;padding:6px 0 40px}
#state-chooser .location-entry .welcome-heading{position:relative;z-index:2;margin:0;text-align:center;flex:0 0 auto;animation:none;text-shadow:0 2px 4px #10071e,0 8px 30px #10071ecc}
#state-chooser .state-heading-copy{width:100%}
#state-chooser #state-title{font-size:clamp(64px,10vw,150px);line-height:.9}
#state-chooser #state-title br{display:none}
#state-chooser #state-title span:before{content:' '}
#state-chooser .eyebrow{justify-content:center;margin-bottom:6px;font-size:clamp(14px,1.15vw,18px);line-height:1.25}
#state-chooser .state-community{justify-content:center;margin-top:6px;border:0;padding:0;font-size:clamp(20px,2.2vw,32px);line-height:1.2}
#state-chooser .location-entry .state-grid{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:none;width:100%;margin:0;align-items:stretch}
#state-chooser .location-entry .state-card{height:var(--location-card-height);min-height:var(--location-card-height);min-width:0;padding:24px 20px;border-radius:18px;border:2px solid #d8bcf3b3;background:#20112e;box-shadow:0 18px 42px #05020bb3,0 2px 8px #0009;isolation:isolate}
#state-chooser .location-entry .state-card>img{opacity:1;filter:saturate(1);mask-image:none;-webkit-mask-image:none}
#state-chooser .location-entry .state-card:before{background:linear-gradient(180deg,#13091c85 0%,#13091c12 28%,#13091cbf 60%,#13091cfa 100%)}
#state-chooser .location-entry .state-card .role-top{position:static;font-size:12px;letter-spacing:.06em;gap:8px;align-items:center}
#state-chooser .location-entry .state-card .role-copy{padding:0;max-width:100%}
#state-chooser .location-entry .state-card .role-copy strong{font-family:"32 Sports Athletics","Arial Narrow",Arial,sans-serif;font-weight:900;font-size:clamp(30px,3vw,46px);line-height:1.08;margin-bottom:0;letter-spacing:-.025em;text-shadow:0 2px 14px #000a}
#state-chooser .location-entry .state-card .role-description,#state-chooser .location-entry .state-card .role-prefix{display:none}
#state-chooser .location-entry .state-card .role-action{color:#fff;font-weight:800;font-size:16px;margin-top:22px;padding-top:16px;line-height:1.4}
#state-chooser .location-entry .state-card .role-icon{width:30px;height:30px;flex-shrink:0}
#state-chooser .location-entry .state-card .state-flag{mask-image:none;-webkit-mask-image:none}
#welcome .welcome-background{top:100px;opacity:.62}
#welcome .welcome-heading{margin-bottom:clamp(210px,38vw,550px)}
@media(max-width:1000px){#state-chooser .location-entry .welcome-main{width:calc(100% - 40px)}#state-chooser .location-entry .welcome-header{left:20px;right:20px}#state-chooser .location-entry .state-grid{gap:12px}#state-chooser .location-entry .state-card{padding:20px 14px}#state-chooser .location-entry .state-card .role-top>span:first-child{max-width:none;font-size:11px;letter-spacing:0}#state-chooser .location-entry .state-card .role-icon{display:none}#state-chooser .location-entry .state-card .role-copy strong{font-size:clamp(26px,3.3vw,34px)}#state-chooser .location-entry .state-card .role-action>span{display:none}}
@media(max-width:1000px){#state-chooser .location-entry{--location-card-height:280px;min-height:0}#state-chooser .location-entry .welcome-header{position:relative;top:auto;left:auto;right:auto;min-height:58px;width:calc(100% - 40px)}#state-chooser .location-entry .welcome-main{padding-top:0;padding-bottom:24px;gap:0;justify-content:flex-start}
#state-chooser .location-entry .player-page-background{position:relative;top:auto;left:50%;width:100vw;flex:none;margin-top:-9vw;transform:translateX(-50%)}
#state-chooser .location-entry .welcome-heading{margin-bottom:12px}
#state-chooser .location-entry .state-grid{margin-top:-15vw;grid-template-columns:repeat(4,minmax(200px,1fr));overflow-x:auto;scroll-snap-type:x proximity;scroll-padding:2px;padding:7px 2px 15px;scrollbar-color:#c198e1 #ffffff18;scrollbar-width:thin}#state-chooser .location-entry .state-card{scroll-snap-align:start;border-radius:14px}#state-chooser .location-entry .state-card .role-copy strong{font-size:32px}#state-chooser .location-entry .state-card .role-top>span:first-child{font-size:12px}#state-chooser .state-community{font-size:20px;line-height:1.3}#state-chooser #state-title{font-size:clamp(62px,14.5vw,96px);line-height:.98}#state-chooser #state-title br{display:block}#state-chooser #state-title span:before{content:none}#welcome .welcome-background{top:240px}#welcome .welcome-heading{margin-bottom:clamp(200px,65vw,350px)}}

/* A staggered cinematic entrance resolves the welcome copy from soft focus to sharp. */
#state-chooser .state-heading-copy>:is(.eyebrow,h1,.state-community){animation:welcome-focus-in 1.4s cubic-bezier(.16,1,.3,1) both}
#state-chooser .state-heading-copy>.eyebrow{animation-delay:.05s}
#state-chooser .state-heading-copy>h1{animation-delay:.16s}
#state-chooser .state-heading-copy>.state-community{animation-delay:.32s}
@keyframes welcome-focus-in{0%{opacity:0;filter:blur(16px);transform:translateY(10px) scale(1.04)}60%{opacity:1}100%{opacity:1;filter:blur(0);transform:none}}
@media(prefers-reduced-motion:reduce){#state-chooser .state-heading-copy>:is(.eyebrow,h1,.state-community){animation:none;opacity:1;filter:none;transform:none}}

/* Keep the role choices and the unobstructed team photo together in one screen. */
#welcome .welcome-entry{height:calc(100svh - var(--entry-ticker-height,51px));min-height:500px;overflow:visible;background:#100c19}
#welcome .welcome-entry:before{display:none}
#welcome .entry-topline{display:none}
#welcome .welcome-main{width:min(1600px,calc(100% - 64px));height:100%;display:grid;grid-template-rows:auto auto minmax(120px,1fr) auto auto;align-content:stretch;gap:8px;padding:8px 0 12px}
#welcome .role-location-row{margin:0;min-height:40px;gap:12px}
#welcome .role-location{font-size:18px}
#welcome .role-location-row button{min-height:40px;padding:8px 14px;font-size:14px}
#welcome .welcome-heading{margin:0;gap:2px}
#welcome h1{font-size:clamp(40px,5.2vw,70px);line-height:1}
#welcome .welcome-subtitle{font-size:16px;line-height:1.3}
#welcome .role-photo-stage{position:relative;isolation:isolate;min-height:0;overflow:hidden}
#welcome .role-photo-stage .welcome-background{position:absolute;inset:auto;top:-16%;left:0;z-index:0;width:100%;height:125%;max-width:none;object-fit:contain;opacity:1;filter:none;pointer-events:none}
#welcome .role-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0}
#welcome .role-card{height:clamp(156px,23svh,204px);min-height:0;min-width:0;padding:16px;justify-content:space-between}
#welcome .role-top{position:static;margin:0;font-size:12px;line-height:1.2;letter-spacing:.03em;align-items:center}
#welcome .role-icon{width:26px;height:26px;flex-shrink:0}
#welcome .role-copy{padding:0;margin-top:auto;max-width:100%}
#welcome .role-copy strong{font-size:clamp(26px,2.5vw,36px);line-height:1.05;letter-spacing:-.025em;margin-bottom:0}
#welcome .role-copy .role-label-community{font-size:clamp(23px,2vw,30px);line-height:1.08}
#welcome .sponsor-role-card .role-label-partnership{font-size:clamp(22px,2vw,30px);line-height:1.08}
#welcome .role-description{display:none}
#welcome .role-action{font-size:14px;line-height:1.25;margin-top:10px;padding-top:8px;gap:6px}
#welcome .welcome-purpose{margin:0;font-size:14px;line-height:1.3}
@media(max-width:760px){
 #welcome .welcome-main{width:calc(100% - 24px);padding:6px 0 10px;gap:6px}
 #welcome .role-location-row{min-height:36px}
 #welcome .role-location{font-size:16px}
 #welcome .role-location-row button{min-height:36px;padding:7px 11px}
 #welcome h1{font-size:clamp(36px,9vw,52px)}
 #welcome .role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #welcome .role-card{height:116px;min-height:0;padding:10px 12px;border-radius:12px;justify-content:flex-end}
 #welcome .role-top{display:none}
 #welcome .role-copy strong{font-size:26px}
 #welcome .role-copy .role-label-community{font-size:22px;line-height:1.05}
 #welcome .sponsor-role-card .role-label-partnership{font-size:20px;line-height:1.05}
 #welcome .role-action{margin-top:6px;padding-top:6px;font-size:14px;line-height:1.2}
 #welcome .role-action>span{display:none}
}
@media(max-height:650px){
 #welcome .welcome-entry{min-height:420px}
 #welcome .welcome-main{grid-template-rows:auto auto minmax(100px,1fr) auto;gap:6px;padding-block:6px}
 #welcome h1{font-size:40px}
 #welcome .welcome-subtitle,#welcome .welcome-purpose{display:none}
 #welcome .role-card{height:152px;padding:12px 14px}
 #welcome .role-top{display:none}
}
@media(max-height:650px) and (max-width:760px){#welcome .role-card{height:110px;padding:10px 12px}}
