/* Original photography, arranged at different depths. */
.maryland-photo-backdrop{display:none}
.location-programs-page{position:relative;isolation:isolate;overflow-x:clip;background:#120920}
.location-programs-page>.maryland-photo-backdrop,body[data-state="maryland"] #experience .maryland-photo-backdrop{display:block;position:absolute;inset:84px 0 auto;height:2300px;overflow:hidden;pointer-events:none;z-index:0;mask-image:linear-gradient(#000 0%,#000 70%,transparent 100%)}
.maryland-photo-backdrop img{position:absolute;display:block;width:64%;height:auto;opacity:.48;filter:none;border-radius:34px}
.maryland-photo-backdrop .md-backdrop-one{top:-4%;left:-15%;transform:rotate(-12deg)}
.maryland-photo-backdrop .md-backdrop-two{top:8%;right:-15%;transform:rotate(11deg);opacity:.44}
.maryland-photo-backdrop .md-backdrop-three{top:38%;left:-21%;transform:rotate(8deg);opacity:.42}
.maryland-photo-backdrop .md-backdrop-four{top:48%;right:-19%;transform:rotate(-10deg);opacity:.40}
.location-programs-page>.hub-main,.location-programs-page>.hub-footer{position:relative;z-index:1}
.location-programs-page .maryland-hero{grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:30px;align-items:center;overflow:visible;background:transparent;border-radius:0}
.location-programs-page .maryland-hero>div:first-child{align-self:center;border:1px solid #ffffff65;border-radius:20px;box-shadow:0 22px 60px #21113625,0 2px 8px #21113615;padding:28px}
.maryland-photo-scene{position:relative;isolation:isolate;width:100%;aspect-ratio:1;min-width:0;perspective:1400px}
.md-scene-glow{position:absolute;inset:12% -5% 4%;z-index:0;background:radial-gradient(ellipse at 60% 45%,#b894ef66,transparent 64%),radial-gradient(ellipse at 24% 65%,#f498c940,transparent 57%);filter:blur(20px);pointer-events:none}
.md-scene-backdrop{position:absolute;inset:10% 2% 10% 2%;z-index:0;border-radius:32px;overflow:hidden;transform:rotate(7deg);opacity:.5;box-shadow:0 16px 50px #39215b15;mask-image:linear-gradient(#000a,#000,transparent)}
.md-scene-backdrop img{width:100%;height:100%;object-fit:cover;object-position:60% center;filter:none}
.md-photo{position:absolute;margin:0;padding:4px;background:#fff;border:1px solid #fff;border-radius:16px;box-shadow:0 25px 38px -15px #1b122968,0 5px 10px #1b122924;transform-origin:center;transition:transform .25s ease-out;will-change:transform}
.md-photo img{display:block;width:100%;height:auto;border-radius:11px}
.md-photo-team{z-index:1;left:1%;top:5%;width:49%;transform:translate3d(calc(var(--md-x,0px) * .3),calc(var(--md-y,0px) * .3),0) rotate(-7deg) rotateY(5deg)}
.md-photo-front{z-index:2;left:51%;top:12%;width:47%;transform:translate3d(var(--md-x,0px),var(--md-y,0px),45px) rotate(4deg) rotateY(-7deg)}
.md-photo-catch{z-index:3;left:24%;top:54%;width:35%;box-shadow:0 30px 45px -14px #1b12297a,0 6px 12px #1b12292e;transform:translate3d(calc(var(--md-x,0px) * 1.5),calc(var(--md-y,0px) * 1.5),80px) rotate(-9deg) rotateY(8deg)}
.maryland-photo-scene .md-scene-caption,.maryland-hero .maryland-photo-scene .md-scene-caption{position:absolute;left:15%;right:0;bottom:0;max-width:none;margin:0;text-align:center;color:#614b79;font-size:10px;font-weight:800;letter-spacing:1.7px;line-height:1.5}
.location-programs-page .maryland-paths{position:relative;margin-top:34px}
.location-programs-page .maryland-paths>a{box-shadow:0 10px 28px #2516360c}

/* Keep the alternate Maryland entry route consistent. */
#experience .maryland-photo-scene{display:none}
body[data-state="maryland"] #experience{position:relative;isolation:isolate;overflow:hidden;background:#120920}
body[data-state="maryland"] #experience .maryland-photo-backdrop{inset:0 0 auto}
body[data-state="maryland"] #experience>header,body[data-state="maryland"] #experience>main{position:relative;z-index:1}
body[data-state="maryland"] #experience .experience-hero{background:transparent;color:#fff;overflow:visible}
body[data-state="maryland"] #experience .hero-inner{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);gap:30px;align-items:center;padding-block:24px 48px}
body[data-state="maryland"] #experience .hero-copy{padding:28px;background:linear-gradient(#181221c9,#181221dc),url("/assets/maryland-state-flag.svg") center/cover;border:1px solid #ffffff65;border-radius:20px;box-shadow:0 22px 60px #21113625}
body[data-state="maryland"] #experience .maryland-photo-scene{display:block}
body[data-state="maryland"] #experience .hero-caption{display:none}

@media(max-width:1000px) and (min-width:761px){.location-programs-page .maryland-hero,body[data-state="maryland"] #experience .hero-inner{gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.location-programs-page .maryland-hero>div:first-child{padding:22px}.md-photo{padding:3px;border-radius:12px}.md-photo img{border-radius:8px}.maryland-photo-scene .md-scene-caption,.maryland-hero .maryland-photo-scene .md-scene-caption{font-size:8px;letter-spacing:1px}}
@media(max-width:760px){.location-programs-page .maryland-hero,body[data-state="maryland"] #experience .hero-inner{grid-template-columns:minmax(0,1fr);gap:24px}.location-programs-page .maryland-hero>div:first-child,body[data-state="maryland"] #experience .hero-copy{padding:24px}.maryland-photo-scene{width:94%;margin:0 auto 12px;max-width:590px}.md-photo{padding:3px;border-radius:12px}.md-photo img{border-radius:8px}.maryland-photo-scene .md-scene-caption,.maryland-hero .maryland-photo-scene .md-scene-caption{font-size:8px;letter-spacing:1.2px}.maryland-photo-backdrop img{width:110%}.maryland-photo-backdrop .md-backdrop-one{left:-45%;top:5%}.maryland-photo-backdrop .md-backdrop-two{right:-45%;top:24%}.maryland-photo-backdrop .md-backdrop-three{left:-40%;top:48%}.maryland-photo-backdrop .md-backdrop-four{right:-40%;top:70%}.location-programs-page .maryland-paths{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.md-photo{transition:none;will-change:auto}}

body[data-state="maryland"] #experience>main{isolation:isolate}
body[data-state="maryland"] #experience .maryland-photo-backdrop{z-index:-1}

/* Keep the photography vivid against a nearly black Ravens-inspired purple. */
.location-programs-page,body[data-state="maryland"]{--hub-ink:#f7f2ff;--hub-muted:#c2b8cf;--hub-paper:#120920;--hub-line:#ffffff26;--ink:#f7f2ff;--muted:#c2b8cf;--line:#ffffff26;color:#f7f2ff;background-color:#120920}
.location-programs-page .hub-paths>a,.location-programs-page .state-services .program-card,.location-programs-page .hub-game,.location-programs-page .hub-story,.location-programs-page .hub-empty,body[data-state="maryland"] #maryland-options .program-card{background:#1c1727f2;color:#f7f2ff;border-color:#ffffff26;box-shadow:0 12px 30px #0003}
.location-programs-page .hub-paths>a:hover,.location-programs-page .state-services .program-card:hover,body[data-state="maryland"] #maryland-options .program-card:hover{border-color:#b58aff;box-shadow:0 18px 38px #0005}
.location-programs-page .hub-overline,.location-programs-page .hub-paths>a>span,.location-programs-page .hub-paths b,.location-programs-page .state-services .kicker,body[data-state="maryland"] #maryland-options .kicker{color:#c5a4ff}
.location-programs-page .state-services .card-link,body[data-state="maryland"] #maryland-options .card-link{color:#f7f2ff}
.location-programs-page .state-services .description,.location-programs-page .hub-card-top,.location-programs-page .hub-card-bottom,.location-programs-page .hub-muted,body[data-state="maryland"] #maryland-options .description{color:#c2b8cf}
.location-programs-page .state-services .card-action,.location-programs-page .hub-card-bottom,body[data-state="maryland"] #maryland-options .card-action{border-color:#ffffff26}
.location-programs-page .state-services .card-action>span,body[data-state="maryland"] #maryland-options .card-action>span{background:#392450;color:#d4b5ff}
.location-programs-page .state-services .card-link:hover .card-action,body[data-state="maryland"] #maryland-options .card-link:hover .card-action{color:#d4b5ff}
.location-programs-page .hub-text-link{color:#cbb4ff!important}
.location-programs-page .hub-callout{background:#231a33;border:1px solid #ffffff26}
.location-programs-page .hub-skip{color:#17121f}
.maryland-photo-scene .md-scene-caption,.maryland-hero .maryland-photo-scene .md-scene-caption{color:#d4c2e8}
body[data-state="maryland"] #experience .category-nav{background:#17131f;border-color:#ffffff26}
body[data-state="maryland"] #experience .programs-intro h2,body[data-state="maryland"] #experience .category-nav a{color:#f7f2ff}

.location-programs-page,body[data-state="maryland"] #experience{background-image:radial-gradient(ellipse at 8% 0,#381b603d,transparent 42%),radial-gradient(ellipse at 92% 45%,#5522771f,transparent 48%)}

/* White framing lifts the reporting panel and its flag buttons. */
.location-programs-page .maryland-hero>div:first-child,body[data-state="maryland"] #experience .hero-copy{border:2px solid #fff;box-shadow:0 0 0 4px #ffffff0e,0 0 24px #d8baff38,0 22px 45px #07020d80}
.location-programs-page .maryland-hero .maryland-subtitle,body[data-state="maryland"] #maryland-legacy-subtitle{-webkit-text-stroke:.6px #fff;paint-order:stroke fill;text-shadow:0 0 9px #ffffff35,0 3px 0 #321448}
.maryland-score-actions .hub-button{border:2px solid #ffffffdc;box-shadow:0 0 10px #ffffff24,0 6px 18px #140e2480}
/* Hover captions sit over the original photos without changing the crop. */
.md-photo figcaption{position:absolute;left:4px;right:4px;bottom:4px;padding:35px 14px 16px;border-radius:0 0 11px 11px;background:linear-gradient(transparent,#160922e6 35%,#160922f5);color:#fff;font-family:"32 Sports Athletics","Arial Narrow",Arial,sans-serif;font-weight:900;font-style:italic;font-size:clamp(22px,2.5vw,36px);line-height:1.05;text-align:center;text-transform:uppercase;letter-spacing:.01em;text-shadow:2px 2px 0 #853d9a;pointer-events:none;transition:opacity .2s ease,translate .2s ease}
.md-photo-team figcaption{font-size:clamp(17px,1.8vw,27px);line-height:1.18}
.md-photo-team figcaption>span{display:block}
.md-photo-team figcaption>span:nth-child(even){color:#f7b6e5}
.md-photo-catch figcaption{font-size:clamp(20px,2vw,29px)}
.md-photo:focus-visible{outline:3px solid #fff;outline-offset:5px;z-index:7}
@media(hover:hover) and (pointer:fine){
 .md-photo figcaption{opacity:0;translate:0 8px}
 .md-photo:hover,.md-photo:focus-visible{z-index:7;border-color:#fff;box-shadow:0 0 0 2px #f4ccff,0 18px 40px #05020a90}
 .md-photo:hover figcaption,.md-photo:focus-visible figcaption{opacity:1;translate:0 0}
}
@media(min-width:1100px){
 .location-programs-page>.hub-main{max-width:1480px;padding-inline:24px}
 .location-programs-page .maryland-paths{gap:24px}
 .location-programs-page .maryland-paths>a>.hub-path-photo{height:340px}
 .location-programs-page .maryland-paths h2{font-size:30px}
 body[data-state="maryland"] #experience .wrap{width:min(1432px,calc(100% - 48px))}
 body[data-state="maryland"] #maryland-options .image-wrap{min-height:340px}
}
@media(max-width:760px){.md-photo figcaption{padding:28px 9px 12px}.md-photo-team figcaption{font-size:clamp(16px,4.5vw,24px)}.md-photo-front figcaption{font-size:clamp(22px,6vw,32px)}.md-photo-catch figcaption{font-size:clamp(19px,5vw,27px)}}
@media(prefers-reduced-motion:reduce){.md-photo figcaption{transition:none;translate:none}}

@media(hover:none){.md-photo-team figcaption{top:4px;bottom:auto;padding:14px 9px 28px;background:linear-gradient(#160922f5,#160922dc 65%,transparent)}}
