/* Native competition information, isolated from homepage layout rules. */
.competition-page{width:90%;max-width:1400px;margin:0 auto;padding:65px 0 80px;color:var(--navy);font-family:Jost,sans-serif}
.competition-page .competition-page-heading{display:block;position:static;isolation:isolate;background:transparent;color:var(--navy);padding:0 0 50px;margin:0;min-height:0;height:auto;border:0;box-shadow:none;z-index:auto}
.competition-page .competition-page-heading>p:first-child{color:var(--red);font-size:17px;margin:0 0 25px}
.competition-page .competition-page-heading h1{font-size:clamp(50px,6vw,86px);font-weight:500;line-height:1.1;letter-spacing:-.04em;margin:0 0 28px;overflow:visible}
.competition-page .competition-page-heading h1 span{position:relative;display:inline-block}
.competition-page .competition-page-heading h1 span:before{content:'';position:absolute;left:-7%;top:50%;width:114%;aspect-ratio:2049/417;transform:translateY(-35%) rotate(-2deg);background:var(--yellow);-webkit-mask:url('brush-red.png') center/contain no-repeat;mask:url('brush-red.png') center/contain no-repeat;z-index:-1;pointer-events:none}
.competition-page p{font-size:18px;line-height:1.65;max-width:68ch;margin:0 0 22px}
.competition-page h2{font-size:clamp(30px,3vw,42px);font-weight:500;line-height:1.15;letter-spacing:-.02em;margin:0 0 25px}
.competition-page h3{font-size:24px;line-height:1.25;font-weight:500;margin:0}
.competition-page a{text-decoration:underline;text-underline-offset:5px}
.competition-page a:focus-visible{outline:3px solid var(--red);outline-offset:5px}
.competition-page :is(section,h2){scroll-margin-top:170px}
.competition-page .competition-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(40px,6vw,90px);align-items:start}
.competition-page .competition-main{min-width:0}
.competition-page .competition-content-section{padding:40px 0;border-top:1px solid #18184b30}
.competition-page .competition-event-links{display:grid;gap:0}
.competition-page .competition-event-links>a,.competition-page .competition-event-notice{display:block;border-bottom:1px solid #18184b25;padding:23px 0;text-decoration:none}
.competition-page .competition-event-links :is(time,strong,span){display:block}
.competition-page .competition-event-links time,.competition-page .competition-event-notice>span{font-size:16px;margin-bottom:7px;color:var(--red)}
.competition-page .competition-event-links strong{font-weight:500;font-size:25px;line-height:1.3;max-width:35ch}
.competition-page .competition-event-links>a>span{font-size:16px;margin-top:12px;text-decoration:underline;text-underline-offset:5px}
.competition-page .competition-event-links>a:hover strong{color:var(--red)}
.competition-page .competition-event-notice{border-bottom:0}
.competition-page .competition-summary{position:sticky;top:155px;padding:32px;background:var(--navy);color:var(--ivory)}
.competition-page .competition-summary p{font-size:17px;line-height:1.5;margin:0 0 20px}
.competition-page .competition-summary strong{display:block;font-size:36px;font-weight:500;line-height:1.1;margin:0 0 24px;color:var(--yellow)}
.competition-page .competition-summary a{font-size:17px;display:inline-block;line-height:1.5;color:var(--ivory)}
.competition-page .competition-summary a:focus-visible{outline-color:var(--yellow)}
.competition-page .competition-age-table{width:100%;border-collapse:collapse;font-size:17px;line-height:1.6;margin:30px 0 0}
.competition-page .competition-age-table :is(td,th){padding:15px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #18184b25;overflow-wrap:anywhere}
.competition-page .competition-age-table thead th{background:var(--navy);color:var(--ivory);font-weight:500}
.competition-page .competition-age-table tbody th{width:24%;font-weight:500}
.competition-page .competition-fees{margin:30px 0}
.competition-page .competition-fees>div{display:flex;justify-content:space-between;gap:30px;align-items:baseline;padding:18px 0;border-bottom:1px solid #18184b25}
.competition-page .competition-fees dt{font-size:20px;line-height:1.4;max-width:34ch}
.competition-page .competition-fees dd{margin:0;font-size:29px;font-weight:500;color:var(--red);white-space:nowrap}
.competition-page .competition-payment{font-weight:500}
.competition-page .competition-year-nav{display:flex;flex-wrap:wrap;gap:15px;margin:0 0 50px;font-size:20px}
.competition-page .competition-year-nav a{padding:10px 20px;border:1px solid #18184b40;text-decoration:none;min-width:80px;text-align:center}
.competition-page .competition-year-nav a:hover{background:var(--navy);color:var(--ivory)}
.competition-page .competition-results-year{display:grid;grid-template-columns:110px minmax(0,1fr);gap:55px;padding:45px 0;border-top:1px solid #18184b40}
.competition-page .competition-results-year>h2{font-size:44px;color:var(--red);margin-top:14px}
.competition-page .competition-result-event{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,.8fr);gap:25px;align-items:center;padding:20px 0;border-bottom:1px solid #18184b20}
.competition-page .competition-result-event:first-child{padding-top:15px}
.competition-page .competition-result-event:last-child{border-bottom:0}
.competition-page .competition-result-date{font-size:15px;line-height:1.4;margin:0 0 8px}
.competition-page .competition-result-event ul{list-style:none;padding:0;margin:0;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px 24px}
.competition-page .competition-result-event a{font-size:17px;display:inline-block;padding:8px 0;line-height:1.4}
.competition-page .competition-photos a{font-size:19px;display:inline-block;padding:5px 0}
@media(max-width:1000px){.competition-page .competition-layout{grid-template-columns:minmax(0,1fr) 240px;gap:35px}.competition-page .competition-summary{padding:25px}.competition-page .competition-summary strong{font-size:31px}.competition-page .competition-results-year{grid-template-columns:90px minmax(0,1fr);gap:30px}.competition-page .competition-result-event{grid-template-columns:1fr;gap:8px}.competition-page .competition-result-event ul{justify-content:flex-start}}
@media(max-width:760px){.competition-page{width:88%;padding:40px 0 55px}.competition-page .competition-page-heading{padding-bottom:30px}.competition-page .competition-page-heading h1{font-size:clamp(42px,10vw,62px)}.competition-page .competition-page-heading>p:first-child{font-size:15px}.competition-page p{font-size:17px}.competition-page .competition-layout{display:flex;flex-direction:column;gap:0}.competition-page .competition-summary{position:static;order:-1;width:100%;margin:0 0 35px;padding:25px}.competition-page .competition-summary strong{font-size:32px}.competition-page .competition-summary strong br{display:none}.competition-page .competition-summary p{max-width:100%}.competition-page .competition-content-section{padding:30px 0}.competition-page .competition-event-links strong{font-size:22px}.competition-page .competition-age-table{font-size:15px}.competition-page .competition-age-table :is(td,th){padding:12px 9px}.competition-page .competition-age-table tbody th{width:28%}.competition-page .competition-fees dt{font-size:18px}.competition-page .competition-fees dd{font-size:26px}.competition-page .competition-results-year{grid-template-columns:1fr;gap:10px;padding:30px 0}.competition-page .competition-results-year>h2{font-size:38px;margin:0 0 15px}.competition-page .competition-result-event{padding:20px 0}.competition-page .competition-result-event h3{font-size:23px}.competition-page .competition-year-nav{gap:10px;margin-bottom:30px}.competition-page .competition-year-nav a{font-size:18px;padding:10px 15px;min-width:70px}.competition-page :is(section,h2){scroll-margin-top:150px}}
