/* Consistent public pages; scoring controls retain their compact app layout. */
:root{--font:Arial,Helvetica,sans-serif;--display:Arial,Helvetica,sans-serif}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #55753e;outline-offset:5px}
.skip-link{position:fixed;z-index:100;top:8px;left:8px;transform:translateY(-150%);background:#102d36;color:#fff;padding:10px 16px;border-radius:6px}.skip-link:focus{transform:none}
.site-header .brand-mark{width:118px;height:118px}.header-inner{min-height:134px}.site-header nav{font-size:19px}
.public-route .hero h1 span:nth-child(2){margin-right:.2em}
.public-route .hero .archive-deck{background:transparent}
.public-route .upcoming-banner{min-height:220px}.public-route .upcoming-copy{padding:28px 36px}.public-route .poster-court{min-height:220px}.public-route .poster-court span{font-size:29px;line-height:1.1}.public-route .poster-court b{font-size:100px}
.public-route .home-live{margin-top:30px}.public-route .live-empty{border:1px solid #dce2dc;background:#eef1e8;padding:20px 24px}.public-route .live-empty p{margin:0}
.public-route .section-head{margin-top:38px;margin-bottom:20px}.public-route .community{margin-top:38px}.public-route .community-photo{min-height:360px}.public-route .community .btns{align-items:center;gap:18px}.public-route .community h2{font-size:clamp(29px,3.1vw,43px)}
.public-route .page-top{padding-top:30px;padding-bottom:28px}.public-route .page-top h1{max-width:940px;font-size:clamp(32px,4vw,56px);line-height:1.08}.public-route .page-top>p{max-width:660px}.public-route .page-top .btns{margin-top:22px}
.public-event-grid,.news-grid,.venue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.public-event-card,.news-card{display:flex;flex-direction:column;background:#e6ecd9;border-radius:10px;padding:26px;transition:background .2s,transform .2s}.public-event-card:hover,.news-card:hover{background:#dce8c4;transform:translateY(-3px)}.public-event-card h3,.news-card h3{font-size:25px;line-height:1.2;margin:14px 0}.public-event-card p,.news-card p{line-height:1.6;margin:0 0 22px}.public-event-card>div{display:flex;gap:12px;justify-content:space-between;margin-top:auto;font-size:12px}.public-event-card b{font-size:24px}.news-card{background:#eef0e8}.news-card .text-link{margin-top:auto;width:max-content}
.public-section{margin-top:24px}.public-section>.section-head{margin-top:24px}.calendar-empty h3{font-size:25px;margin:0}.calendar-empty p{margin-bottom:0}.calendar-empty .text-link{display:inline-block;margin-top:14px}.news-grid{margin-block:24px}
.public-route .archive-card-art{height:172px}.public-route .archive-card-copy{padding:18px 20px}.public-route .archive-card-copy h3{font-size:19px;line-height:1.25}.public-route .archive-card{transition:transform .2s}.public-route .archive-card:hover{transform:translateY(-3px)}
.event-description{padding:24px 0;max-width:900px;border-top:1px solid var(--line)}.event-description h2{font-size:27px}.event-description .detail-text{font-size:15px;line-height:1.85;overflow-wrap:anywhere}.event-intro-compact{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}.event-intro-compact .event-deck{height:420px}.event-poster-details{margin:20px 0}.event-poster-details summary{cursor:pointer;font-size:13px}.event-poster-details img{margin-top:12px}.event-summary>.text-link{display:inline-block;margin-top:14px}
.document-list{display:grid;gap:0;border-block:1px solid var(--line)}.document-link{display:flex;align-items:center;gap:18px;padding:20px 0;border-bottom:1px solid var(--line);transition:color .2s}.document-link:last-child{border-bottom:0}.document-link:hover{color:#58703a}.document-format{display:grid;place-items:center;flex:0 0 65px;min-height:48px;border:1px solid #c5cfc0;border-radius:5px;font-size:11px;font-weight:700;letter-spacing:.04em}.document-link>span:nth-child(2){min-width:0}.document-link strong{display:block;font-size:15px;line-height:1.45;overflow-wrap:anywhere}.document-link small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.document-link b{font-size:23px;font-weight:400;margin-left:auto}.event-documents{margin-top:12px}
.federation-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin:24px 0}.federation-hero .page-top{padding:15px 0}.federation-hero h1{font-size:clamp(36px,4.3vw,62px)!important}.federation-photo{position:relative;height:430px;border-radius:10px;overflow:hidden}.federation-photo img{width:100%;height:100%;object-fit:cover}.federation-photo span{position:absolute;bottom:20px;left:22px;color:white;font-size:11px;letter-spacing:.12em;background:#102d36c9;padding:10px 15px;border-radius:4px}.federation-mission{display:grid;grid-template-columns:.6fr 1.4fr;gap:48px;padding:40px 0;border-block:1px solid var(--line);margin:32px 0}.federation-mission h2{font-size:clamp(28px,3.4vw,43px);line-height:1.15;margin:0 0 24px}.federation-mission p{max-width:700px;margin:0;font-size:17px;line-height:1.9}.venue-grid article{border-top:2px solid #b7c6a8;padding-top:22px}.venue-number{font-size:12px;color:#687e56;letter-spacing:.1em}.venue-grid h3{font-size:23px;line-height:1.2}.venue-grid p{color:var(--muted)}
.federation-information{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;margin-top:48px}.federation-information h2{font-size:34px;line-height:1.15}.contact-card{background:#e2ebd3;border-radius:10px;padding:32px;display:flex;flex-direction:column;align-items:flex-start;scroll-margin-top:25px}.contact-card h2{font-size:36px;margin:20px 0}.contact-email{font-size:clamp(16px,1.7vw,22px);font-weight:700;margin:14px 0;overflow-wrap:anywhere}.contact-card .btn{margin-top:25px}.public-article,.charter-text{font-size:16px;line-height:1.9;max-width:850px;overflow-wrap:anywhere}.charter-text{background:#fff;padding:30px;border-radius:8px}.event-documents{scroll-margin-top:20px}
.site-footer{margin-top:0}.footer-inner{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:48px;padding-block:34px}.footer-logo{font-size:22px}.footer-logo span{max-width:220px;font-size:12px;line-height:1.6;letter-spacing:0}.footer-nav{display:grid;gap:9px;align-content:start}.footer-nav a{font-size:13px}.footer-end{align-items:flex-start;gap:14px;font-size:11px}.footer-contact{font-size:13px;letter-spacing:0;text-transform:none}.footer-end>span{font-size:9px}
@media(max-width:1100px){.site-header .brand-mark{width:102px;height:102px}.header-inner{min-height:116px}.site-header nav{font-size:17px;gap:24px}.federation-hero{gap:24px}.federation-photo{height:370px}.federation-information{gap:28px}.footer-inner{gap:25px}}
@media(max-width:700px){.site-header .brand-mark{width:90px;height:90px}.header-inner{min-height:0}.site-header nav{font-size:16px;gap:26px}.public-route .hero h1{font-size:clamp(20px,6.1vw,27px);line-height:1.12}.public-route .hero h1 span:nth-child(2){margin-right:.22em}.public-route .upcoming-banner{min-height:0;grid-template-columns:1.6fr 1fr;margin-top:18px}.public-route .upcoming-copy{padding:22px 20px}.public-route .upcoming-copy h2{font-size:25px}.public-route .upcoming-copy p{font-size:12px;line-height:1.6}.public-route .upcoming-copy .eyebrow{font-size:8px}.public-route .upcoming-copy .btn{font-size:10px;padding:12px}.public-route .poster-court{min-height:100%;padding:16px}.public-route .poster-court span{font-size:15px}.public-route .poster-court i{width:44px;height:44px;right:12px;top:18px}.public-route .poster-court b{font-size:62px;right:10px}.public-route .home-live{margin-top:24px}.public-route .section-head{margin-top:28px;gap:18px}.public-route .section-head h2{font-size:27px}.public-route .section-head .text-link{font-size:11px}.public-route .community{margin-top:28px}.public-route .community-copy{padding:26px}.public-route .community h2{font-size:32px}.public-route .community-photo{min-height:220px}.public-route .community .btns{flex-wrap:wrap}.public-route .page-top h1{font-size:33px}.public-route .page-top{padding:24px 0}.public-route .page-top .btns{gap:10px;flex-wrap:wrap}.public-route .page-top .btn{font-size:11px;padding:13px 16px}.public-event-grid,.news-grid,.venue-grid{grid-template-columns:1fr;gap:16px}.public-event-card,.news-card{padding:23px}.public-route .archive-card-art{height:155px}.public-route .archive-card-copy{padding:15px 17px}.public-route .archive-card-copy h3{font-size:19px}.event-intro-compact{grid-template-columns:1fr}.event-intro-compact .event-deck{height:360px}.event-description{margin-top:16px;padding-top:15px}.event-description .detail-text{font-size:14px}.document-link{gap:12px}.document-format{flex-basis:56px;font-size:10px}.document-link strong{font-size:14px}.federation-hero{grid-template-columns:1fr;gap:12px;margin-top:8px}.federation-hero h1{font-size:38px!important}.federation-photo{height:260px}.federation-mission{grid-template-columns:1fr;gap:22px;padding:28px 0;margin:24px 0}.federation-mission h2{font-size:30px}.federation-mission p{font-size:15px;line-height:1.8}.federation-information{grid-template-columns:1fr;gap:28px;margin-top:28px}.contact-card{padding:26px}.footer-inner{grid-template-columns:1fr 1fr;gap:26px;padding-block:28px}.footer-logo{grid-column:1/-1}.footer-logo span{max-width:none}.footer-end{font-size:10px}.footer-contact{font-size:11px;overflow-wrap:anywhere}.charter-text{padding:20px;font-size:14px}}
@media(max-width:360px){.site-header nav{gap:19px;font-size:15px}.brand{font-size:21px;gap:12px}.public-route .upcoming-copy{padding:18px 16px}.public-route .upcoming-copy h2{font-size:22px}.public-route .poster-court span{font-size:13px}.public-route .hero .archive-deck{min-height:170px}.public-route .hero h1{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.public-event-card,.news-card,.archive-card{transition:none}.ticker-track{animation:none}}
@media print{body[data-public-page=charter] .utility,body[data-public-page=charter] .site-header,body[data-public-page=charter] .site-footer,body[data-public-page=charter] .back,body[data-public-page=charter] .print-control{display:none!important}body[data-public-page=charter]{background:#fff;color:#000}body[data-public-page=charter] #app{width:100%;max-width:none;padding:0}body[data-public-page=charter] .charter-text{padding:0;border:0;font-size:11pt;line-height:1.5;max-width:none}body[data-public-page=charter] .page-top h1{font-size:22pt}@page{margin:18mm}}
/* Photo and court frame use the same angle and bounds, rather than two unrelated planes. */
.public-route .archive-card-court{inset:auto;left:auto;right:22px;top:23px;width:43%;height:106px;transform:rotate(-12deg);z-index:0;border-color:#dce8c46b;border-radius:3px}
.public-route .archive-card-art img{right:25px;top:26px;width:calc(43% - 6px);height:100px;max-height:none;object-fit:cover;object-position:center;transform:rotate(-12deg);border-radius:2px;filter:none}
.public-route .archive-card-symbol{right:22px;top:23px;width:43%;height:106px;display:grid;place-items:center;transform:rotate(-12deg);font-size:25px}
.federation-photo img{object-position:center 30%}
@media(max-width:700px){.header-inner{grid-template-columns:minmax(0,1fr)}.site-header nav{min-width:0;max-width:100%}.public-route .archive-card-court,.public-route .archive-card-symbol{right:22px;top:23px;height:90px}.public-route .archive-card-art img{right:25px;top:26px;height:84px}}
@media(max-width:360px){.site-header nav{gap:14px;font-size:14px}}
.event-description .detail-text:has(p){white-space:normal}.event-description .detail-text p{margin:0 0 16px}.event-description .detail-text a{color:#46642e;border-bottom:1px solid #a9b899}.event-description .detail-text table{display:block;max-width:100%;overflow:auto}.event-description .detail-text td,.event-description .detail-text th{padding:6px 10px;border:1px solid var(--line)}
.public-route .community-photo img{object-fit:contain;object-position:center;background:#102d36}.public-route .community-photo:after{background:linear-gradient(0deg,#102d3690,transparent 35%)}
