/* Edit these tokens first. All fonts are installed system fonts; no remote assets. */
:root{--ink:#101111;--paper:#f2f2ec;--white:#fff;--muted:#b2b6af;--line:#373b36;--accent:#d8ee86;--max:1440px;--gutter:clamp(20px,4vw,64px);--display:Impact,'Arial Narrow','Helvetica Neue',Arial,sans-serif;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #90afff;outline-offset:5px}::selection{background:var(--accent);color:var(--ink)}[hidden]{display:none!important}.skip-link{position:fixed;top:10px;left:20px;padding:12px 18px;background:white;color:black;transform:translateY(-180%);z-index:100}.skip-link:focus{transform:none}.preview-note{background:var(--accent);color:var(--ink);font-size:.875rem;padding:7px var(--gutter);display:flex;justify-content:space-between;gap:20px}.preview-note a{font-weight:bold}.shell{max-width:var(--max);margin:auto;padding-left:var(--gutter);padding-right:var(--gutter)}.site-header{border-bottom:1px solid var(--line)}.header-inner{min-height:104px;display:flex;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand-monogram{font-size:2rem;letter-spacing:-.1em;font-weight:900;line-height:1;border-right:1px solid var(--line);padding-right:14px}.brand-name{font-size:.875rem;font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:.025em}.site-nav{margin-left:auto;display:flex;align-items:center;gap:22px}.site-nav a{font-size:.875rem;text-decoration:none;padding:12px 0}.site-nav a[aria-current=page]{box-shadow:0 2px var(--accent)}.site-nav .nav-register{padding:12px 18px;background:var(--paper);color:var(--ink);font-weight:bold}.menu-toggle{display:none;background:transparent;border:1px solid #7c8177;color:var(--paper);padding:10px 14px}.eyebrow{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;font-weight:bold;display:flex;gap:16px;align-items:center}.eyebrow:before{content:'';display:block;width:27px;height:3px;background:currentColor}.accent{color:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:900;text-transform:uppercase;line-height:.96;letter-spacing:-.025em}h1{font-size:clamp(3.7rem,7.8vw,8rem);margin-bottom:30px}h2{font-size:clamp(2.5rem,4.5vw,4.8rem);margin-bottom:22px}h3{font-size:1.5rem;line-height:1.2}.home-hero{padding-top:44px;padding-bottom:42px;display:grid;grid-template-columns:1.55fr 1fr;gap:6vw;align-items:stretch}.hero-copy h1{font-size:clamp(4rem,8.8vw,8.8rem);line-height:.94;margin:32px 0}.hero-copy h1 span{display:block}.hero-copy .outline{color:var(--paper);-webkit-text-stroke:1px var(--paper);color:transparent}.hero-subline{font-size:1.125rem;max-width:430px;color:#d6d9d1}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.button{display:inline-block;padding:14px 22px;line-height:1.4;border:1px solid #888d80;text-decoration:none;font-size:1rem;font-weight:bold;background:transparent;color:inherit}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--ink)}.button:hover{background:var(--paper);color:var(--ink)}.photo-slot{min-height:475px;background:#1b1e1a;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:28px;border:1px solid #42483d}.photo-slot:before{content:'';position:absolute;inset:90px -160px -170px 60px;border:1px solid #657154;transform:rotate(-22deg);box-shadow:0 0 0 34px #1b1e1a,0 0 0 35px #4a5240,0 0 0 68px #1b1e1a,0 0 0 69px #394230,0 0 0 102px #1b1e1a,0 0 0 103px #30372a;pointer-events:none}.slot-top,.slot-bottom{position:relative;z-index:1}.slot-top{display:flex;justify-content:space-between;font-size:.875rem;text-transform:uppercase;letter-spacing:.08em}.slot-bottom h2{font-size:clamp(2.4rem,3.5vw,4rem);max-width:300px;margin-bottom:16px}.slot-bottom p{max-width:290px;color:#c3c9bc;font-size:.875rem;margin:0}.discipline-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.discipline-inner{display:flex;justify-content:space-between;align-items:center;padding-top:17px;padding-bottom:17px;gap:20px}.discipline-inner span{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase}.discipline-inner strong{font-size:1.2rem}.paper{background:var(--paper);color:var(--ink)}.section{padding-top:72px;padding-bottom:72px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:36px}.section-heading .intro{max-width:370px;margin-top:12px}.section-heading h2{margin-bottom:0}.text-link{font-weight:bold}.event-row{display:grid;grid-template-columns:180px 1fr 230px;gap:32px;align-items:center;border-top:1px solid #b6bab0;padding:28px 0}.event-row:last-child{border-bottom:1px solid #b6bab0}.event-code{font-family:var(--display);font-size:4rem;line-height:1;letter-spacing:-.02em}.event-row h3{margin-bottom:8px}.event-row p{margin-bottom:0;color:#50554b}.event-status{font-size:.875rem}.status-label{display:inline-block;font-size:.875rem;padding:3px 9px;border:1px solid currentColor;margin-bottom:10px}.event-row .text-link{display:block;margin-top:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.split p{max-width:520px}.large-copy{font-size:1.25rem;line-height:1.6}.route-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.route-list li{border-bottom:1px solid var(--line)}.route-list a{padding:20px 0;display:flex;justify-content:space-between;text-decoration:none;font-size:1.25rem;gap:20px}.route-list a:hover{color:var(--accent)}.route-list span{font-size:.875rem;color:var(--muted);padding-top:4px}.newsletter{border-top:1px solid var(--line);padding:48px 0}.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.newsletter h2{font-size:2.8rem}.newsletter p{max-width:440px;color:#c9cec3}.newsletter-form{display:flex;gap:10px;margin-top:10px;align-items:end}.field{display:block;flex:1}.field span{display:block;font-size:.875rem;margin-bottom:8px}.field input{width:100%;border:1px solid #62685b;background:var(--ink);color:var(--paper);padding:13px 16px;min-height:52px}.field input:disabled{color:#b8beaf;opacity:1}.newsletter-form button{background:var(--paper);color:var(--ink);border:0;padding:14px 18px;min-height:52px;font-weight:bold}.form-note{font-size:.875rem;margin-top:14px}.demo-message{border-left:3px solid var(--accent);padding:9px 14px;margin-top:18px;max-width:600px}.footer{border-top:1px solid var(--line);padding-top:38px;padding-bottom:24px}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.footer-top p{font-size:.875rem;color:var(--muted);max-width:340px}.footer-links{display:flex;gap:28px;flex-wrap:wrap;font-size:.875rem}.footer-bottom{margin-top:38px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:.875rem;color:var(--muted)}.footer-bottom strong{color:var(--paper);font-weight:normal}.page-hero{padding-top:64px;padding-bottom:60px}.page-hero h1{margin-top:28px;max-width:980px}.page-hero .lede{font-size:1.25rem;color:#d0d5ca;max-width:620px}.subnav{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.subnav a{border:1px solid #646a5d;padding:9px 15px;text-decoration:none;font-size:.875rem}.content-section{scroll-margin-top:24px}.content-section+.content-section{border-top:1px solid #b6bab0}.detail-row{padding:44px 0;display:grid;grid-template-columns:90px 1fr 1fr;gap:30px}.row-number{font-size:1rem;letter-spacing:.08em;color:#616957}.detail-row h2{font-size:2.8rem;margin-bottom:15px}.detail-row .detail-body{padding-top:4px}.pending{color:#535b4b;border-left:2px solid #8c9977;padding-left:18px}.checklist{padding-left:20px}.checklist li{margin:8px 0}.notice{padding:24px;border:1px solid #939c85;margin:24px 0}.notice p:last-child{margin-bottom:0}.draft-note{font-size:.875rem}.media-placeholder{min-height:280px;border:1px solid #8c957f;background:#e1e5d9;display:flex;align-items:center;justify-content:center;padding:30px;text-align:center}.media-placeholder p{max-width:350px;margin:0}.compact-section{padding:44px 0}.social-list{list-style:none;padding:0;display:flex;gap:12px;flex-wrap:wrap}.social-list li{padding:8px 12px;border:1px solid #929b85;font-size:.875rem}.registration-panel{display:grid;grid-template-columns:1fr 1fr;gap:50px}.registration-panel button{color:var(--ink);border-color:var(--ink)}.registration-panel .demo-message{border-color:#55682f}.registration-panel p{max-width:560px}.site-map{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.site-map h3{font-size:1.15rem}.site-map a{display:block;margin:8px 0}noscript .notice{margin:20px var(--gutter)}
.paper .route-list a:hover{color:#334511}
@media(min-width:1500px){.home-hero{gap:85px}}
@media(max-width:1100px){.header-inner{gap:20px}.brand-name{font-size:.75rem}.site-nav{gap:15px}.site-nav a{font-size:.875rem}.event-row{grid-template-columns:150px 1fr 190px}.home-hero{gap:32px}.hero-copy h1{font-size:clamp(4rem,9vw,7rem)}}
@media(max-width:900px){.header-inner{min-height:86px;flex-wrap:wrap;justify-content:space-between;padding-top:16px;padding-bottom:16px}.menu-toggle{display:block}.site-nav{display:flex;width:100%;margin:8px 0 0;flex-wrap:wrap;gap:10px 24px}.js .site-nav{display:none}.js .site-nav.is-open{display:flex}.site-nav a{padding:10px 4px}.home-hero{grid-template-columns:1.3fr 1fr}.hero-copy h1{font-size:clamp(3.6rem,9.2vw,6rem)}.photo-slot{padding:20px;min-height:445px}.slot-top{font-size:.75rem}.slot-bottom h2{font-size:2.7rem}.event-row{grid-template-columns:120px 1fr}.event-status{grid-column:2}.section-heading{display:block}.section-heading .intro{max-width:520px}.detail-row{grid-template-columns:45px 1fr;gap:20px}.detail-body{grid-column:2}.site-map{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.preview-note{font-size:.75rem;gap:10px}.preview-note a{white-space:nowrap}.brand-name{font-size:.75rem}.home-hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:30px;gap:32px}.hero-copy h1{font-size:clamp(3.5rem,13.5vw,5.5rem);margin-top:25px;margin-bottom:24px}.hero-subline{font-size:1rem}.actions{margin-top:24px}.photo-slot{min-height:295px;padding:22px}.slot-bottom h2{max-width:none;font-size:2.6rem}.slot-bottom p{max-width:300px}.discipline-inner{flex-wrap:wrap;gap:8px 20px}.discipline-inner span{font-size:.75rem}.discipline-inner strong{font-size:1rem}.section{padding-top:46px;padding-bottom:46px}.section-heading{margin-bottom:24px}.event-row{grid-template-columns:1fr;gap:12px;padding:24px 0}.event-code{font-size:3.2rem}.event-row h3{font-size:1.25rem}.event-status{grid-column:auto;margin-top:8px}.split,.newsletter-inner,.registration-panel{grid-template-columns:1fr;gap:28px}.large-copy{font-size:1.125rem}.newsletter{padding:38px 0}.newsletter-form{flex-wrap:wrap}.newsletter-form .field{flex-basis:100%}.newsletter-form button{width:100%}.footer-top,.footer-bottom{display:block}.footer-links{gap:16px;margin-top:24px}.footer-bottom p{margin-bottom:12px}.page-hero{padding-top:40px;padding-bottom:40px}.page-hero h1{font-size:clamp(3.4rem,13vw,5rem)}.page-hero .lede{font-size:1.125rem}.detail-row{grid-template-columns:1fr;gap:12px;padding:34px 0}.detail-body{grid-column:auto}.detail-row h2{font-size:2.4rem}.site-map{grid-template-columns:1fr}.route-list a{font-size:1.1rem}.media-placeholder{min-height:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* STAGED IMAGERY: all three photos are AI-generated placeholders, not event records.
   The hero gradient ensures heading contrast. Replace filenames/alt/captions in HTML. */
.home-hero{position:relative;isolation:isolate;min-height:660px;grid-template-columns:1.2fr 1fr;padding-top:54px;padding-bottom:70px;overflow:hidden}
.hero-copy{position:relative;z-index:2;align-self:center}
.hero-copy h1{font-size:clamp(4rem,8vw,7.8rem)}
.hero-visual{position:absolute;inset:0;margin:0;z-index:-1;background:#101111}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}
.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,17,17,.98) 0%,rgba(16,17,17,.92) 28%,rgba(16,17,17,.65) 45%,rgba(16,17,17,.08) 72%),linear-gradient(0deg,rgba(16,17,17,.55),transparent 35%);pointer-events:none}
.hero-visual figcaption{position:absolute;z-index:1;bottom:20px;right:var(--gutter);max-width:42%;font-size:.75rem;line-height:1.5;color:#fff;background:rgba(16,17,17,.88);padding:7px 11px}
.editorial-photo{margin:0 0 28px}.editorial-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.editorial-photo figcaption{font-size:.75rem;line-height:1.5;margin-top:8px;color:#50554b}.highlight-gallery{display:grid;gap:22px}.highlight-gallery .editorial-photo{margin:0}.highlight-note{font-size:.875rem;margin-top:22px}
@media(min-width:601px) and (max-width:900px){.home-hero{min-height:580px;grid-template-columns:1.3fr 1fr}.hero-copy h1{font-size:clamp(3.8rem,8.7vw,5.5rem)}.hero-visual img{object-position:64% center}.hero-visual figcaption{max-width:38%}}
@media(max-width:600px){.home-hero{min-height:0;grid-template-columns:1fr;padding-top:30px;padding-bottom:0;gap:28px}.hero-copy h1{font-size:clamp(3.5rem,13.5vw,5.5rem)}.hero-visual{position:relative;inset:auto;margin:0 calc(-1 * var(--gutter));height:330px;z-index:auto}.hero-visual img{object-position:70% center}.hero-visual:after{background:linear-gradient(0deg,rgba(16,17,17,.35),transparent 40%)}.hero-visual figcaption{right:14px;left:14px;bottom:12px;max-width:none;width:fit-content;font-size:.7rem}}

/* Decorative generated cheer equipment: no meaningful content is conveyed by this background.
   Replace assets/staged-cheer-equipment.jpg to change props. Dark overlays protect contrast. */
.cheer-equipment,.page-hero,.newsletter{background-color:var(--ink);background-image:linear-gradient(90deg,rgba(16,17,17,.98) 0%,rgba(16,17,17,.92) 35%,rgba(16,17,17,.76) 65%,rgba(16,17,17,.64) 100%),var(--section-image,url('assets/staged-cheer-equipment.jpg'));background-size:cover;background-position:center right;background-repeat:no-repeat}
.page-hero{background-position:center 65%}
.cheer-equipment .route-list{--line:#62665d;--muted:#d5d8d0}
@media(max-width:600px){.cheer-equipment,.page-hero,.newsletter{background-image:linear-gradient(90deg,rgba(16,17,17,.96),rgba(16,17,17,.8)),var(--section-image,url('assets/staged-cheer-equipment.jpg'));background-position:70% center}}

/* Vary decorative imagery by page and section. Keep foreground content semantic. */
.backdrop-bows{--section-image:url('assets/staged-cheer-bows.jpg')}
.backdrop-arena{--section-image:url('assets/staged-cheer-arena.jpg')}
.backdrop-gear{--section-image:url('assets/staged-practice-gear.jpg')}
.backdrop-equipment{--section-image:url('assets/staged-cheer-equipment.jpg')}
.newsletter{background-image:linear-gradient(90deg,rgba(16,17,17,.97),rgba(16,17,17,.84)),var(--section-image);background-position:right center}
@media(max-width:600px){.newsletter{background-image:linear-gradient(90deg,rgba(16,17,17,.96),rgba(16,17,17,.88)),var(--section-image)}}

/* Quiet editable vector pattern for light sections: diagonal ribbons, sparkles, dots.
   Opacity is defined inside assets/paper-pattern.svg. No overlay blocks interactions. */
.paper{background-image:url('assets/paper-pattern.svg?v=geometry-2');background-size:720px 720px;background-position:top right;background-repeat:repeat}
@media(max-width:600px){.paper{background-size:480px 480px}}

/* Restrained warm-gold accents. Lime remains the primary action color. */
:root{--gold:#c8a667;--gold-on-paper:#957037}
.eyebrow:before{background:var(--gold)}
.paper .eyebrow:before{background:var(--gold-on-paper)}
.site-nav a[aria-current=page]{box-shadow:0 2px var(--gold)}
.hero-copy .outline{-webkit-text-stroke-color:var(--gold)}
.paper .status-label{border-color:var(--gold-on-paper)}
.footer-bottom strong{color:var(--gold)}


/* Scattered references use measured empty space; they never intercept input. */
.school-canvas{position:relative}
.school-reserve{grid-column:1/-1;pointer-events:none}
.school-cloud{position:absolute;inset:0;pointer-events:none;user-select:none}
.school-whisper{position:absolute;width:190px;text-align:center;transform:rotate(var(--tilt));display:flex;flex-direction:column;align-items:center;gap:8px}
.school-whisper span{font-size:13px;line-height:1.5;font-weight:600;letter-spacing:.065em;color:rgba(16,17,17,.12)}
.school-whisper.gold-whisper span{font-family:Georgia,serif;color:rgba(140,108,51,.19)}
@media(max-width:600px){.school-whisper{width:132px}.school-whisper span{font-size:11px;letter-spacing:.04em}}
