@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#f6f7f8;--ink:#151718;--muted:#62666a;--gold:#e3c37a;--line:#e1e3e5;--white:#fff;--green:#641729}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a67a22;outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:10px;z-index:50;background:white;padding:12px}.skip:focus{top:10px}
header{height:88px;display:flex;align-items:center;padding:0 36px;gap:24px;background:#141617;color:white;border-bottom:1px solid #303234}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-logo{background:#fff;border-radius:5px;display:grid;place-items:center;width:48px;height:48px}.brand-logo img{width:54px;height:54px;object-fit:contain;filter:brightness(0)}.brand-name{font:800 30px/1 'Barlow Condensed',Arial,sans-serif;letter-spacing:.02em}.brand-name>span{color:var(--gold)}.account-link{margin-left:auto;text-decoration:none;border:1px solid #777;padding:9px 16px;border-radius:6px;font-size:14px;white-space:nowrap}.header-tagline{font-size:13px;max-width:170px;color:#c8c8c5;line-height:1.5}
.shell{display:grid;grid-template-columns:210px minmax(0,1fr);max-width:1600px;margin:auto;min-height:calc(100vh - 88px)}aside{border-right:1px solid var(--line);padding:32px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:calc(100vh - 88px)}.side-label,.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;line-height:1.6;color:var(--muted);margin:0 0 12px}.side-label{padding:0 14px;margin-bottom:18px}nav{display:flex;flex-direction:column;gap:7px}nav a{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:14px;font-weight:600;padding:13px 14px;border-radius:7px;color:#686b6e}nav svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;flex-shrink:0}nav a:hover{background:#e9ebed;color:#171819}nav a[aria-current=page]{background:#171819;color:var(--gold)}.side-foot{margin-top:auto;padding:30px 14px 0;color:var(--muted);font-size:12px;letter-spacing:.04em}.side-foot span{display:block;color:var(--ink);font:600 23px/1.2 'Barlow Condensed',sans-serif;margin-top:12px}
main{width:100%;min-width:0;padding:36px 42px;outline:none}.page{max-width:1120px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-heading .eyebrow{margin-bottom:7px}h1,h2,h3,p{margin-top:0}h1{font:700 clamp(36px,4vw,52px)/1.08 'Barlow Condensed',Arial,sans-serif;letter-spacing:-.015em;margin-bottom:0}h2{font-size:23px;line-height:1.25;letter-spacing:-.025em;margin-bottom:12px}h3{font-size:18px;line-height:1.4;margin-bottom:12px}p{color:var(--muted);margin-bottom:18px}.fine{font-size:13px!important;line-height:1.6;margin:16px 0 0}.season-tag,.chip{display:inline-block;border-radius:5px;font-size:12px;font-weight:600;padding:6px 10px;background:#f3ecd9;color:#605029}.season-tag{background:transparent;border:1px solid var(--line);white-space:nowrap;letter-spacing:.04em}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;cursor:pointer}.gold{background:var(--gold);color:#1e1c15}.gold:hover{background:#edcf8d}.outline{background:transparent;border-color:#c8cacc;color:var(--ink)}.outline:hover{background:#eff0f1}.form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.panel{padding:26px;background:white;border:1px solid var(--line);border-radius:10px}.panel>:last-child{margin-bottom:0}.section-title{margin:30px 0 18px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:34px 0 18px}.section-heading h2{margin:0}.section-heading .eyebrow{margin-bottom:7px}.note{border-left:3px solid #b4944f;padding:6px 0 6px 20px;margin-top:24px}.note p{margin:7px 0 0}.note a{display:inline-block;margin-top:10px}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}
.home-account{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:22px}.home-account .eyebrow{margin-bottom:7px}.home-account h2{font-size:21px;margin-bottom:7px}.home-account p:last-child{margin:0;font-size:14px}.home-account>.button{flex-shrink:0}.home-feature{display:grid;grid-template-columns:1fr 1fr;background:#17191a;color:white;border-radius:12px;overflow:hidden;min-height:310px}.home-feature-copy{padding:34px}.home-feature .eyebrow{color:var(--gold)}.home-feature h2{font:700 clamp(38px,4vw,56px)/1.05 'Barlow Condensed',sans-serif;letter-spacing:0}.home-feature p{color:#c8cacc;max-width:330px}.home-feature>img{width:100%;height:100%;max-height:360px;object-fit:cover}.hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.hub-card{display:flex;flex-direction:column;text-decoration:none;padding:22px 18px;background:#fff;border:1px solid var(--line);border-radius:9px}.hub-card:hover{border-color:#b59a62;box-shadow:0 5px 20px #00000008}.hub-number{font-size:12px;color:#7a6a42;letter-spacing:.05em;font-weight:700;margin-bottom:16px}.hub-card h3{font-size:21px;margin-bottom:8px}.hub-card p{font-size:14px;margin-bottom:22px}.hub-link{font-size:13px;font-weight:700;margin-top:auto}.home-program{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;margin-top:24px;border-top:1px solid var(--line)}.home-program h2{margin:10px 0 6px}.home-program p{margin:0}.home-program>.button{flex-shrink:0}
.camp-hero{display:grid;grid-template-columns:1fr 1fr;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.camp-hero>img{width:100%;height:100%;object-fit:cover;min-height:330px}.camp-hero>div{padding:34px}.camp-hero h2{font:700 43px/1.1 'Barlow Condensed',sans-serif}.camp-hero .button{margin-top:20px}.feature-list{padding-left:20px;margin:0;color:var(--muted)}.feature-list li{margin-bottom:8px}.camp-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:24px 0}.camp-gallery figure{margin:0;background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.camp-gallery img{width:100%;height:260px;object-fit:cover;display:block}.camp-gallery figcaption{font-size:14px;padding:16px 20px;color:var(--muted)}
#teams,#schedule{--gold:#e2c589;--line:#e4dce0}#team-area{margin-bottom:30px}.team-picker{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.team-tab{background:white;color:#641729;border:1px solid #cfbfc3;padding:10px 17px;min-height:44px;font-size:15px;border-radius:6px}.team-tab[aria-pressed=true]{background:#641729;color:#fff}.team-overview{padding:22px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.team-overview h2{font-size:30px}.team-overview p{margin-bottom:5px}.season-card{background:#641729;color:#fff9ef;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px;border-radius:10px;margin-top:28px}.season-card .eyebrow{color:#e2c589}.season-card h2{font:400 44px/1.15 Georgia,serif}.season-card p{color:#e9dade}.futsal-crest{background:#faf6e9;color:#641729;width:145px;flex:0 0 145px;display:flex;flex-direction:column;align-items:center;padding:14px;border:1px solid #c8aa72}.futsal-crest img{width:100px;height:100px;object-fit:contain}.futsal-crest span{font-family:Georgia,serif}.futsal-crest small{font-size:12px}.kit-preview{margin-top:18px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white}.kit-preview summary{padding:16px;min-height:48px;font-size:14px;font-weight:600}.kit-preview summary span{float:right;font-size:13px;font-weight:400}.kit-preview figure{margin:0}.kit-preview img{width:100%;display:block}.kit-preview figcaption{display:flex;justify-content:space-between;padding:15px;font-size:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);background:#f2ede3;border:1px solid #e4d8c3;padding:22px 8px;margin:20px 0;border-radius:8px;text-align:center}.stats>div+div{border-left:1px solid #d9cdb7}.stats strong{display:block;font:600 32px/1.2 'Barlow Condensed',sans-serif;color:#641729}.stats span{display:block;font-size:13px;color:var(--muted)}.is-coach .season-card,.is-coach .kit-preview,.is-coach #teams>.stats,.is-coach #teams>.note{display:none}
.account-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:22px 0}.account-toolbar h2{margin:0}.account-toolbar>span{overflow-wrap:anywhere}.account-toolbar>div{display:flex;gap:8px;flex-wrap:wrap}.portal-message{padding:14px 18px;border:1px solid #d8c388;border-radius:7px;background:#fbf3de;color:#514222;margin-bottom:22px;font-size:14px}.portal-message.error{border-color:#db9e96;background:#fff0ef;color:#81241e}.portal-form{display:flex;flex-direction:column;gap:16px}.portal-form label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600}.portal-form input,.portal-form select,.portal-form textarea{width:100%;min-height:46px;padding:11px 12px;background:white;border:1px solid #bfc3c6;border-radius:6px;font-size:16px;color:#171819}.portal-form textarea{resize:vertical}.portal-form .fine{margin:0}.portal-form .button{align-self:flex-start}.portal-form .two-col{gap:14px}.text-button{padding:10px 0;border:0;background:none;text-decoration:underline;text-align:left;font-size:14px}.account-benefits{padding-left:20px;color:var(--muted)}.account-benefits li{margin-bottom:10px}.coach-welcome .form-actions{margin-top:24px}.coach-area>.panel{margin-bottom:20px}.coach-area .two-col{margin:20px 0}.request-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--line)}.request-row p{margin:5px 0 0;font-size:14px}.request-row:first-of-type{margin-top:10px}.roster{margin-top:22px}.announcement,.event-card,.family-card{margin-bottom:18px}.event-card h3{font-size:23px}.event-card .eyebrow{font-size:14px}.event-time{font-weight:600;color:#641729}.event-card.cancelled{border-left:4px solid #a14b49}.event-card details{margin-top:16px}.event-card summary,.coach-area summary,.family-card summary{padding:8px 0;min-height:44px}.event-card .event-form{margin-top:18px}.rsvp{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.rsvp>strong{display:block;margin-bottom:10px}.rsvp>div{display:flex;gap:8px;flex-wrap:wrap}.rsvp button{padding:10px 16px;border:1px solid #c9bdc1;background:white;border-radius:6px;font-size:14px;min-height:44px}.rsvp button[aria-pressed=true]{background:#641729;border-color:#641729;color:white}.rsvp small{display:block;font-size:14px;color:var(--muted);margin-top:9px}.calendar-help{padding:16px 20px;background:#fff;border:1px solid var(--line);border-radius:8px;margin-bottom:22px;font-size:14px}.calendar-help summary{font-weight:600}.calendar-help p{margin:14px 0 0}.calendar-action{margin:18px 0}.calendar-action .button{font-size:13px}.access-card{border-top:3px solid #b4944f}
.program-feature{display:grid;grid-template-columns:1fr 1fr;gap:32px;border:1px solid var(--line);border-top:4px solid #b59852;border-radius:10px;background:white;padding:32px;margin-bottom:24px}.program-feature h2{font:700 44px/1.1 'Barlow Condensed',sans-serif;margin-top:22px}.price{font:600 34px/1.2 'Barlow Condensed',sans-serif;margin:22px 0 10px}.price span{font:13px 'DM Sans',sans-serif;color:var(--muted)}dl{margin:0}dl>div{padding:12px 0;border-bottom:1px solid var(--line)}dt{font-size:13px;color:var(--muted)}dd{margin:4px 0 0;font-size:15px;font-weight:600}.registration-button{margin-top:20px}.program-flyer{max-width:560px;margin:24px auto;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#171819}.program-flyer img{width:100%;height:auto;display:block}.program-flyer figcaption{padding:14px 18px;color:#eee2c7;font-size:14px}.shop-banner{background:#171819;color:white;padding:26px;border-radius:9px;margin-bottom:24px}.shop-banner strong{font:600 32px/1.2 'Barlow Condensed',sans-serif}.shop-banner p{color:#c8cacc;margin:8px 0 0}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.product{background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden}.product-label{min-height:210px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:20px;background:#e3c37a}.product-label>strong{font:700 44px/1 'Barlow Condensed',sans-serif}.product-label>span,.product-label>small{font-size:12px;letter-spacing:.08em}.product-label.inverse,.product-label.dark{background:#202426;color:#e3c37a}.product-label.light{background:#e8eaec}.product-info{padding:22px}.product-info p,.product-info details{font-size:14px}.product-info summary{min-height:36px}.product-info details p{margin:10px 0 0}footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid var(--line);margin-top:44px;padding-top:22px;font-size:12px;color:var(--muted)}.footer-brand{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.08em}.footer-brand img{filter:brightness(0)}footer a{font-size:13px}
@media(max-width:1100px){.shell{grid-template-columns:185px minmax(0,1fr)}main{padding:30px}.hub-grid{grid-template-columns:1fr 1fr}.home-feature-copy{padding:28px}.camp-hero>div{padding:26px}.home-account{flex-wrap:wrap}.header-tagline{display:none}}
@media(max-width:760px){header{height:76px;padding:0 20px;gap:14px}.brand-name{font-size:27px}.brand-logo{width:40px;height:40px}.brand-logo img{width:46px;height:46px}.account-link{font-size:13px;padding:8px 12px}.shell{display:block}aside{position:fixed;inset:auto 0 0;z-index:30;height:auto;border-right:0;border-top:1px solid var(--line);background:#fffffff5;backdrop-filter:blur(14px);padding:0 3px env(safe-area-inset-bottom)}.side-label,.side-foot{display:none}nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}nav a{flex-direction:column;gap:4px;padding:12px 1px 10px;min-height:68px;border-radius:0;font-size:12px}nav a[aria-current=page]{background:transparent;color:#83641c;box-shadow:inset 0 3px #b4944f}nav svg{width:21px;height:21px}main{padding:24px 18px 108px}.page-heading{gap:12px;margin-bottom:22px}h1{font-size:38px}.page-heading .season-tag{display:none}.home-account{padding:20px;gap:18px}.home-account h2{font-size:21px}.home-feature{grid-template-columns:1fr;min-height:0}.home-feature-copy{padding:26px}.home-feature h2{font-size:42px}.home-feature>img{height:210px;object-position:center 55%}.home-feature h2 br{display:none}.home-feature .button{margin-top:0}.hub-grid{gap:12px}.hub-card{padding:20px 16px}.hub-card p{font-size:14px}.hub-number{font-size:12px;margin-bottom:13px}.hub-card h3{font-size:21px}.home-program{align-items:flex-start;flex-direction:column;gap:16px}.two-col,.program-feature,.camp-hero{grid-template-columns:1fr}.camp-hero>img{min-height:0;height:230px;object-position:center 55%}.camp-hero>div{padding:24px}.camp-hero h2{font-size:38px}.camp-gallery{gap:12px}.camp-gallery img{height:190px}.camp-gallery figcaption{padding:13px;font-size:13px}.panel{padding:22px}.program-feature{padding:24px;gap:20px}.program-feature h2{font-size:40px}.registration-button{width:100%}.season-card{padding:24px;gap:16px}.season-card h2{font-size:35px}.futsal-crest{display:none}.stats span{font-size:12px;padding:0 5px}.team-overview .button{width:100%}.team-tab{flex:1 1 auto}.account-toolbar>div{width:100%}.portal-form .two-col{grid-template-columns:1fr 1fr}.request-row{align-items:flex-start}.kit-preview summary span{display:none}.product-grid{gap:12px}.product-label{padding:18px;min-height:200px}.product-label>strong{font-size:36px}.product-info{padding:16px}.product-info h2{font-size:19px}footer{gap:12px;margin-top:32px}footer>span{width:100%}}
@media(max-width:370px){.brand-name{font-size:23px}header{padding:0 14px}main{padding-left:14px;padding-right:14px}.hub-grid,.camp-gallery,.product-grid{grid-template-columns:1fr}nav a{font-size:12px}.portal-form .two-col{grid-template-columns:1fr}.home-account .form-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.program-calendar{border-bottom:1px solid var(--line);padding:15px 0;font-size:14px}.program-calendar summary{font-weight:600;min-height:32px}.program-calendar .form-actions{margin-top:14px}

.family-welcome,.family-teams,.team-requests,.team-invitation{margin-bottom:22px}.family-welcome .form-actions{margin-top:20px}.family-welcome h2{font:700 34px/1.15 'Barlow Condensed',Arial,sans-serif}.family-names{list-style:none;padding:0;margin:0 0 18px}.family-names li{padding:9px 0;border-bottom:1px solid var(--line);font-weight:600}.family-details summary,.team-invitation summary{min-height:44px;font-size:16px;font-weight:600}.family-details .portal-form,.team-invitation .portal-form{margin-top:18px}.family-teams h2{margin-bottom:6px}.family-teams .request-row:last-child{border-bottom:0}.team-requests p:last-child{margin-bottom:0}
