@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--navy:#0a1d36;--red:#e63835;--cream:#f5f3ec;--muted:#6c747c;--line:#dcdedc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--navy);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e63835;outline-offset:4px}header{height:100px;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:.8px;font-size:17px}.brand img{width:62px;height:58px;object-fit:contain;mix-blend-mode:multiply}.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:4px}nav{display:flex;gap:30px;font-size:13px;font-weight:600}nav a:hover{color:var(--red)}.nav-cta{font-size:12px;border-bottom:1px solid var(--navy);padding-bottom:8px;font-weight:700}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-copy{padding:55px 10% 25px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;display:flex;align-items:center;gap:8px}.eyebrow span{width:7px;height:7px;background:var(--red);border-radius:50%}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;margin:0;line-height:.94;letter-spacing:-.8px}h1{font-size:clamp(70px,7.8vw,118px);font-weight:800;text-transform:uppercase;margin:27px 0 25px}em{font-style:normal;color:var(--red)}.intro{font-size:14px;line-height:1.8;color:#59636d}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 24px;font-size:12px;font-weight:700;border:0}.red{background:var(--red);color:white}.button:hover{filter:brightness(.94)}.hero-copy .button{margin-top:17px}.hero-foot{display:flex;gap:16px;align-items:center;margin-top:45px;font-size:8px;letter-spacing:1.2px;font-weight:700}.hero-foot b{font-size:20px}.hero-art{position:relative;background:var(--navy);display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-art:after{content:'';position:absolute;width:400px;height:400px;border:1px solid #ffffff18;transform:rotate(45deg);z-index:0}.hero-logo{width:80%;position:relative;z-index:1;mix-blend-mode:screen;filter:contrast(1.15);border-radius:4px}.vertical{position:absolute;right:20px;top:40px;writing-mode:vertical-rl;letter-spacing:3px;color:#ffffff70;font-size:9px}.art-caption{position:absolute;bottom:32px;left:10%;color:white;display:flex;flex-direction:column;gap:8px;font-size:9px;letter-spacing:2px}.art-caption b{font-size:14px}.ticker{background:var(--red);color:#fff;display:flex;justify-content:space-around;align-items:center;gap:20px;padding:18px 3%;font-family:'Barlow Condensed',Impact,sans-serif;font-weight:700;letter-spacing:1.5px;font-size:17px;overflow:hidden;white-space:nowrap}.ticker b{font-size:22px}.section{padding:80px 6%}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px}h2{font-size:56px;font-weight:700}.section-head>p{font-size:12px;line-height:1.9;color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.category-card{padding:28px 22px;border-right:1px solid var(--line);transition:background .2s;text-align:left;background:transparent;color:var(--navy);border-top:0;border-bottom:0;border-left:0}.category-card:last-child{border-right:0}.category-card:hover{background:#e9e7df}.cat-number{font-size:10px;color:var(--muted);display:block;margin-bottom:35px}.category-card h3{font-size:29px;margin-bottom:10px}.category-card p{font-size:11px;color:var(--muted)}.cat-link{font-size:10px;display:flex;justify-content:space-between;margin-top:30px;font-weight:700}.note{font-size:10px;color:var(--muted);line-height:1.7;margin-top:20px}.schedule{background:#fff}.red-dot{color:var(--red)}.season{display:flex;flex-direction:column;font-size:9px;letter-spacing:2px;gap:4px}.season b{font-family:'Barlow Condensed',sans-serif;font-size:30px}.schedule-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid var(--line);padding:9px 14px;border-radius:3px;background:white;font-size:11px;color:var(--navy)}.filters button.active{background:var(--navy);color:#fff;border-color:var(--navy)}.demo-label{font-size:8px;letter-spacing:1px;color:#7a6845;background:#f6f1e6;padding:7px 9px;white-space:nowrap}.game-row{display:grid;grid-template-columns:80px 1fr 1fr 140px 135px;align-items:center;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.game-date{font-size:10px;display:flex;gap:10px;align-items:center}.game-date strong{font-family:'Barlow Condensed',sans-serif;font-size:42px}.game-date span{line-height:1.6;color:var(--muted)}.game-name small{display:block;font-size:9px;color:var(--muted);margin-bottom:7px}.game-name b{font-size:14px}.game-name i{font-style:normal;color:var(--muted);font-weight:400}.venue{font-size:11px;line-height:1.9;color:var(--muted)}.status{font-size:10px;color:#28704e}.status.pending{color:#8c7541}.game-link{font-size:10px;font-weight:700;text-align:right}.game-link:hover{color:var(--red)}.moments-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.moment{min-height:350px;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:25px;overflow:hidden;color:#fff}.first{background:#243f34}.second{background:#c8b69a;color:var(--navy)}.third{background:#b73632}.moment-mark{font-size:11px;opacity:.6}.moment small{font-size:8px;letter-spacing:1.2px}.moment h3{font-size:31px;margin-top:12px}.moment p{font-size:10px;opacity:.7;line-height:1.6}.ball,.field-icon,.star-icon{position:absolute;font-size:160px;right:20px;top:30px;opacity:.65;transform:rotate(-20deg)}.field-icon{font-size:220px;top:-10px;right:30px}.star-icon{font-size:190px;top:0px;right:30px}.closing{text-align:center;background:var(--navy);padding:70px 20px;color:white}.closing .eyebrow{justify-content:center;color:#ffffff80}.closing h2{font-size:76px;margin:30px 0}.light{background:var(--cream);color:var(--navy)}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:35px 6%}footer p,footer>span{font-size:10px;color:var(--muted)}.detail{max-width:1000px;margin:auto;padding:50px 25px 80px}.back{font-size:12px;display:inline-block;margin-bottom:40px}.detail-banner{background:var(--navy);padding:40px;color:white;position:relative}.detail-banner h1{font-size:64px;margin:20px 0}.detail-banner .eyebrow{color:#a8d5b7}.detail-banner p{font-size:13px;line-height:1.8}.detail-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:35px}.detail h2{font-size:32px;margin-bottom:25px}.detail dl{display:grid;grid-template-columns:100px 1fr;gap:18px;font-size:12px}.detail dt{color:var(--muted)}.detail dd{margin:0}.rsvp{border:1px solid var(--line);padding:25px}.rsvp label{font-size:11px;display:block;margin:15px 0 7px}.rsvp input,.rsvp select{width:100%;padding:12px;border:1px solid #bbb;background:white}.rsvp button{margin-top:20px;width:100%}.success{background:#e0efe5;color:#20583d;padding:18px;font-size:13px;line-height:1.7;margin-top:15px}.calendar-btn{background:none;border:1px solid var(--navy);padding:12px;font-size:11px;margin-top:20px}.empty{padding:30px;border-top:1px solid var(--line)}[hidden]{display:none!important}@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:950px){header{padding:15px 4%}nav{gap:15px}.nav-cta{display:none}.hero-copy{padding:45px 8% 25px}.hero{min-height:580px}.hero-foot{gap:7px;font-size:6px}.category-card{padding:22px 12px}.category-card h3{font-size:25px}.game-row{grid-template-columns:65px 1fr 1fr 100px;gap:12px}.status{display:none}.moments-grid{gap:10px}.moment{padding:20px}.moment h3{font-size:26px}}@media(max-width:650px){header{height:auto;flex-wrap:wrap;gap:15px;padding:14px 5%}.brand img{width:45px;height:43px}.brand{font-size:14px}nav{width:100%;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line);font-size:11px}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 6% 25px}h1{font-size:78px}.hero-foot{font-size:7px;margin-top:25px}.hero-art{min-height:360px}.hero-logo{width:65%;max-width:320px}.art-caption{bottom:18px;left:6%;font-size:7px}.art-caption b{font-size:10px}.ticker{justify-content:flex-start;font-size:14px}.section{padding:50px 6%}.section-head{display:block}.section-head>p{margin-top:20px}h2{font-size:44px}.category-grid{grid-template-columns:repeat(2,1fr)}.category-card{border-bottom:1px solid var(--line);padding:22px}.cat-number{margin-bottom:20px}.category-card:last-child{grid-column:span 2}.season{display:none}.schedule-toolbar{display:block}.demo-label{display:inline-block;margin-top:15px}.game-row{grid-template-columns:50px 1fr;gap:14px;padding:20px 0}.game-date{grid-row:span 2}.game-name b{font-size:13px}.venue{grid-column:2;font-size:10px}.game-link{grid-column:2;text-align:left}.moments-grid{grid-template-columns:1fr}.moment{min-height:300px}.moment h3{font-size:32px}.closing h2{font-size:61px}footer{flex-wrap:wrap}footer p{display:none}.detail-layout{grid-template-columns:1fr}.detail-banner{padding:25px}.detail-banner h1{font-size:48px}}
#momentFilters{margin-bottom:24px}.moment-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.with-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#071526e8)}.moment-mark,.moment-text{position:relative;z-index:1}.with-photo{color:white}.moment-text p{white-space:pre-line;opacity:.9}.category-grid{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}.moment-text h3{overflow-wrap:anywhere}.moment-text{overflow-wrap:anywhere}#momentCards>.empty{grid-column:1/-1}.moment{min-height:370px;height:auto}.moment .moment-text{margin-top:170px}.moment p{font-size:12px}.detail-banner h1{overflow-wrap:anywhere}
.attendance-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.rsvp .button:disabled{opacity:.6;cursor:wait}.rsvp .calendar-btn{width:100%;margin-top:10px}.rsvp .error{font-size:12px;line-height:1.7;color:#a91b27;margin-top:15px}.rsvp #savedResponses{margin-bottom:16px}.rsvp .success{overflow-wrap:anywhere}
.roster-panel{border:1px solid var(--line);background:white;padding:28px}.roster-heading{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-bottom:22px}.roster-heading h2{font-size:34px;margin-bottom:0}.roster-heading .eyebrow{font-size:8px}.roster-count{min-width:43px;height:43px;background:var(--navy);color:white;display:grid;place-items:center;font-family:'Barlow Condensed',sans-serif;font-size:27px}.confirmed-list{list-style:none;padding:0;margin:0 0 25px;max-height:420px;overflow:auto}.confirmed-list li{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:14px 0;font-size:13px;overflow-wrap:anywhere}.player-check{color:#28704e;background:#e5eee5;display:grid;place-items:center;min-width:26px;height:26px;border-radius:50%}.roster-empty{font-size:13px;color:var(--muted);line-height:1.8;padding:12px 0 22px}.roster-panel>.button{width:100%}.attendance-dialog{border:0;background:var(--cream);color:var(--navy);padding:28px;width:490px;max-width:calc(100% - 28px);max-height:90vh;overflow:auto}.attendance-dialog::backdrop{background:#0a1d36ad}.attendance-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.attendance-dialog-head h2{font-size:36px}.attendance-close{font-size:28px;border:0;background:transparent;cursor:pointer;color:var(--navy)}.attendance-dialog .rsvp{border:0;padding:0}.attendance-dialog .error{color:#a91b27;line-height:1.7;font-size:12px;margin-top:15px}@media(max-width:650px){.roster-panel{padding:22px}.roster-heading h2{font-size:32px}.attendance-dialog{padding:22px}}
.maps-button{display:inline-flex;align-items:center;gap:9px;background:#e5eee5;color:#20583d;padding:13px 16px;font-size:12px;font-weight:700;line-height:1.5;margin:5px 0 12px}.maps-button:hover{background:#d5e7d9}.game-address{line-height:1.7;overflow-wrap:anywhere}
.academy-section{background:#eaece6;border-bottom:1px solid #d5dbd2}.academy-official-link{display:inline-flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--navy);padding-bottom:12px;font-size:12px;font-weight:700}.academy-official-link>span{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.academy-details-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.academy-details-grid article{border-top:2px solid var(--navy);padding:24px 0 0}.academy-detail-label{font-size:8px;font-weight:700;letter-spacing:1.4px;color:#5b685d}.academy-details-grid h3{font-size:33px;line-height:1.05;margin:20px 0}.academy-details-grid h4{font-size:11px;margin:20px 0 8px}.academy-details-grid p,.academy-coaches li{font-size:12px;line-height:1.9;overflow-wrap:anywhere}.academy-detail-item p,.academy-multiline{white-space:pre-line}.academy-coaches ul{list-style:none;padding:0;margin:0}.academy-coaches li{border-bottom:1px solid #cdd5cb;padding:8px 0}.academy-text-link{font-size:11px;font-weight:700;text-decoration:underline;line-height:1.7}.category-training{border-top:1px solid var(--line);padding-top:15px;margin-top:20px}.category-training small{font-size:8px;letter-spacing:1.3px;color:var(--navy);font-weight:700}.category-training p{margin:9px 0 0;line-height:1.7;overflow-wrap:anywhere}.training-hours{white-space:pre-line}.category-card{display:flex;flex-direction:column;align-items:stretch}.cat-link{margin-top:auto;padding-top:25px}.academy-details-grid .note{font-size:10px}@media(max-width:950px){nav{gap:15px}.academy-details-grid{gap:20px}.academy-details-grid h3{font-size:29px}}@media(max-width:650px){.academy-details-grid{grid-template-columns:1fr;gap:25px}.academy-details-grid article{padding-top:20px}.academy-official-link{margin-top:25px}.academy-details-grid h3{font-size:32px}nav{gap:10px;flex-wrap:wrap}.academy-form-section{padding:22px}}
a.moment{transition:transform .2s}a.moment:hover{transform:translateY(-4px)}.moment-open{display:inline-block;font-size:11px;font-weight:700;border-bottom:1px solid currentColor;padding:8px 0;margin-top:10px}.moment-detail{max-width:1180px;margin:0 auto;padding:50px 6% 80px}.moment-detail-heading{height:auto;display:block;border:0;padding:0;margin-bottom:40px}.moment-detail-heading h1{font-size:clamp(45px,6vw,85px);text-transform:none;line-height:1.04;margin:20px 0 30px;overflow-wrap:anywhere}.moment-story{white-space:pre-line;line-height:1.9;font-size:15px;max-width:850px;overflow-wrap:anywhere}.moment-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:35px 0 50px}.moment-gallery figure{margin:0;min-width:0}.moment-gallery figure:first-child{grid-column:1/-1}.moment-gallery img,.moment-gallery video{display:block;width:100%;max-height:700px;object-fit:contain;background:var(--navy);border:1px solid var(--line)}.moment-gallery figcaption{font-size:12px;line-height:1.8;color:var(--muted);margin-top:10px;overflow-wrap:anywhere}.media-original{display:inline-block;font-size:11px;margin-top:10px;text-decoration:underline}@media(max-width:650px){.moment-gallery{grid-template-columns:1fr;gap:20px}.moment-detail{padding-top:30px}.moment-detail-heading h1{font-size:49px}}

/* Proportional photo rows: full images, consistent spacing, no file links. */
.moment-gallery{display:flex;flex-direction:column;gap:24px}.moment-gallery-row{display:flex;align-items:flex-start;gap:16px;max-width:100%}.moment-gallery figure{flex:none;max-width:100%;min-width:0}.moment-gallery img,.moment-gallery video{width:100%;max-height:none;object-fit:contain;border:0;background:transparent}.moment-gallery figcaption{margin-top:8px}.moment-gallery-row:only-child{justify-content:center}@media(max-width:650px){.moment-gallery{gap:20px}.moment-gallery-row{gap:16px}}
