/* One aligned page frame at every desktop size, with full-bleed artwork inside it. */
:root{--page-width:1180px;--page-gutter:24px}
html{overflow-x:clip}
body{display:block;background:linear-gradient(#10090fe8,#10090ff5),url('/contest-patch-neon-background.png') center top/cover fixed no-repeat;overflow-wrap:break-word}
body:after{box-shadow:inset 0 0 90px #0005;border:1px solid #96704533}
body>header,body>.contest-ribbon,body>main,body>.contest-preview,body>footer{width:calc(100% - var(--page-gutter)*2);max-width:var(--page-width);margin-left:auto;margin-right:auto}
body>header{padding:20px 0;min-height:90px}
body>.contest-ribbon{padding:14px 20px;gap:8px 20px;margin-top:0;margin-bottom:20px;border-radius:5px;justify-content:space-between}
body>.contest-ribbon strong{font-size:29px}
body>main{display:flex;flex:none;align-items:center;min-height:0;height:auto;aspect-ratio:1672/941;padding:42px;position:relative;overflow:hidden;border:1px solid #63485888;border-radius:8px;background:#10090f;box-shadow:0 20px 70px #0005}
body>main .intro{width:52%;max-width:540px;padding:0;text-align:left}
body>main h1{font-size:68px;line-height:1.06;margin-bottom:24px}
body>main .description{font-size:15px;line-height:1.8;max-width:450px}
body>main .invitation{font-size:13px;margin:20px 0}
body>main .coming{font-size:27px;padding:10px 22px}
body>main .coming-artwork{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0}
body>main .coming-artwork img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:right center}
body>main .coming-artwork:after{background:linear-gradient(90deg,#10090ff5 0,#10090fc9 30%,#10090f40 58%,transparent 76%)}
body>main .tape-strip{margin-top:24px;font-size:9px;gap:15px}
body>.contest-preview{margin-top:28px;margin-bottom:32px;padding:32px;background:linear-gradient(135deg,#21121df5,#10130ff5)}
.contest-preview h2{font-size:58px;margin-bottom:16px}
.contest-preview .contest-deck{font-size:20px;margin:14px 0}
.contest-preview>p{max-width:850px}
.contest-how{margin:32px 0}
.contest-how>h3,.contest-rule-summary>h3{font-size:32px}
.contest-steps{gap:16px;margin:20px 0}
.contest-steps li{padding:22px}
.contest-steps h4{font-size:26px}
.contest-dates{margin:24px 0}
.contest-prize-value{max-width:none!important;width:100%;margin:26px 0 20px}
.contest-prizes{gap:20px;align-items:stretch}
.contest-prizes figure{min-width:0}
.contest-prizes figcaption{padding:18px 20px}
.contest-preview .contest-prizes h3{font-size:25px}
.contest-rule-summary{margin:30px 0}
body>footer{padding:20px 0 32px;gap:16px 24px;justify-content:center;text-align:center;background:transparent}
body>footer p{flex-basis:100%}
@media(min-width:2000px){body{background-size:cover}}
@media(max-width:1000px){
 body>main{height:520px;aspect-ratio:auto;padding:32px}
 body>main h1{font-size:58px}
 body>main .intro{width:55%}
 body>.contest-ribbon{justify-content:center;gap:6px 20px}
 body>.contest-ribbon>span:first-child{font-size:9px}
 body>.contest-preview{padding:28px}
}
@media(max-width:740px){
 :root{--page-gutter:18px}
 body>.contest-ribbon{justify-content:flex-start;padding:14px 18px;gap:6px 12px}
 body>.contest-ribbon>span:first-child{flex-basis:100%}
 body>.contest-ribbon strong{font-size:28px}
 body>main{height:480px;padding:28px}
 body>main .intro{width:60%}
 body>main h1{font-size:48px}
 .contest-dates{grid-template-columns:1fr}
 .contest-dates>div{border-right:0;border-bottom:1px solid #634858;padding:14px 18px}
 .contest-timeline dl>div{grid-template-columns:1fr;gap:5px}
 .contest-prizes figcaption{padding:16px}
}
@media(max-width:640px){
 :root{--page-gutter:16px}
 body{background:radial-gradient(ellipse at top,#301321,#10090f 700px)}
 body>header{padding:16px 0;min-height:76px;gap:10px}
 body>header .brand{font-size:23px;gap:8px}
 body>header .brand img{width:42px;height:42px}
 body>header .status{font-size:8px;letter-spacing:1px;padding:6px}
 body>.contest-ribbon{margin-bottom:16px;padding:13px 16px}
 body>.contest-ribbon b{flex-basis:100%}
 body>main{display:flex;flex-direction:column;align-items:stretch;height:auto;aspect-ratio:auto;padding:0;min-height:0}
 body>main .intro{width:100%;max-width:none;padding:28px 22px 0;text-align:center}
 body>main h1{font-size:46px;line-height:1.08;margin:14px 0 20px}
 body>main .eyebrow{font-size:9px;letter-spacing:1.5px;margin:0}
 body>main .description{font-size:13px;line-height:1.8;margin:12px auto 0}
 body>main .coming{font-size:25px;padding:9px 20px;margin-bottom:0}
 body>main .invitation,body>main .tape-strip{display:none}
 body>main .coming-artwork{position:relative;inset:auto;width:100%;height:340px;flex:none;margin:0}
 body>main .coming-artwork img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 64%}
 body>main .coming-artwork:after{background:linear-gradient(180deg,#10090f 0,transparent 20%,transparent 95%,#10090f)}
 body>.contest-preview{margin-top:20px;margin-bottom:22px;padding:22px 20px}
 .contest-preview h2{font-size:43px}
 .contest-preview .contest-deck{font-size:18px}
 .contest-preview>p{font-size:14px}
 .contest-steps,.contest-prizes{grid-template-columns:1fr}
 .contest-how>h3,.contest-rule-summary>h3{font-size:29px}
 .contest-steps li{padding:19px}
 .contest-steps h4{font-size:25px}
 .contest-timeline{padding:18px}
 .contest-prize-value{padding:18px}
 .contest-prize-value strong{font-size:29px}
 .contest-entry-status{padding:18px}
 body>footer{font-size:11px;gap:14px;padding:18px 8px 28px}
}
@media(max-width:360px){body>main h1{font-size:39px}body>header .brand{font-size:21px}.contest-preview h2{font-size:38px}body>main .coming-artwork{height:300px}}
@media(min-width:641px) and (max-width:900px){
 body>main{display:block;height:auto;padding:0;aspect-ratio:auto}
 body>main .intro{width:100%;max-width:none;padding:30px 32px 12px;text-align:center}
 body>main h1{font-size:54px;margin-bottom:20px}
 body>main .description{margin:12px auto;max-width:540px}
 body>main .invitation,body>main .tape-strip{display:none}
 body>main .coming-artwork{position:relative;inset:auto;height:380px;width:100%;margin:0}
 body>main .coming-artwork img{object-fit:cover;object-position:right center}
 body>main .coming-artwork:after{background:linear-gradient(180deg,#10090f 0,transparent 16%)}
}
