body { background-color: #123245; background-image: none; } h1, h2, h3, .bgtext, .demobox { font-family: Poppins, ui-rounded; } p, h2 { max-width: 800px; } h2 { font-size: 50px; font-weight: 600; } .feature h2:not(:first-child) { margin-top: 100px; } .hero { background-color: hsla(201,63%,15%,1); background-image: radial-gradient(at 50% 96%, hsla(0,100%,20%,0.35) 0px, transparent 50%), radial-gradient(at 5% 30%, hsla(136,95%,15%,1) 0px, transparent 50%), radial-gradient(at 91% 35%, hsla(214,83%,25%,1) 0px, transparent 75%), radial-gradient(at 82% 73%, hsla(265,72%,20%,1) 0px, transparent 50%); padding-bottom: 20vw; } .hero .vertical-padding { padding: 100px 0; } .button { color: rgb(54 206 255); border: 1px solid rgb(54 206 255); } .button:hover { color: white; border-color: white; } .button.cool { position: relative; color: rgb(226 254 214); border: none; /* necessary for gradient dropshadow: */ transform-style: preserve-3d; overflow: unset; } .button.cool::before { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border-radius: 8px; border: 2px solid transparent; background: linear-gradient(to right, #65E823,#D67FDB) border-box; -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; } @property --a { syntax: ''; inherits: false; initial-value: 0deg; } @keyframes a { from { --a: 0deg; } to { --a: 360deg; } } .button.cool sh { position: absolute; inset: -100px; border: 100px solid #0000; border-radius: 110px; /* a little more than the inset+border+border-radius */ mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; transform: translateZ(-1px); /* hack the z-index so as to be behind the transparent element */ pointer-events: none; } .button.cool sh::before { content: ""; position: absolute; inset: 0px; background: conic-gradient(from var(--a), rgb(207, 19, 175) 0.42%, #ee6907 59.24%, #70d52c); filter: blur(25px); transform: translate(0px,0px); --a: 0deg; /* needed for firefox to have a valid output ? */ animation: a 1s linear infinite; opacity: 0; transition: opacity .5s; } .button.cool:hover sh::before { opacity: 1; } h1 { font-size: 120px; font-weight: 800; text-transform: uppercase; color: #65D1C6; line-height: .9; } h1 .color-dodge { mix-blend-mode: color-dodge; } h1 .the { font-size: 75px; line-height: 1; } h1 .sub-h1 { margin-top: 1em; text-transform: none; color: #b1fffe; font-size: 32px; font-weight: normal; line-height: 1.3; font-family: Figtree; } .asides { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 auto; align-items: center; } .asides.top { align-items: stretch; } .asides > * { flex: 1; margin-right: 50px; min-width: 0; /* kind of a hack that allows proper sizing of pre children; see https://weblog.west-wind.com/posts/2016/feb/15/flexbox-containers-pre-tags-and-managing-overflow */ min-width: 300px; } .asides > :last-child { margin-right: 0; } .asides h2 { text-align: left; max-width: none; } .asides p { margin-left: 0; margin-right: 0; } .caption { margin-top: 10px; font-size: 14px; text-align: center; } #demo { display: block; margin-bottom: 2em; } div.ap-wrapper div.ap-player { box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.25); transform: scale(1.1); border-radius: 10px; } div.ap-wrapper:fullscreen div.ap-player { transform: none; } .ap-player pre.ap-terminal { border-color: transparent; background-color: transparent; } .display { perspective: 1500px; } .display code { border-radius: 10px; width: 100%; } .display code { max-width: 800px; font-size: 110%; display: block; position: relative; padding: 20px 40px; white-space: pre; font-weight: bold; overflow-x: auto; box-shadow: 10px 10px 25px rgba(0, 0, 0, 0.1); } .display.right > * { transform: rotateY(-25deg); } .display.left > * { transform: rotateY(25deg); } .display code.light { background: #fff linear-gradient(135deg, rgba(255,255,255,0) 0%,rgba(241,241,241,0.5) 46%,rgba(225,225,225,0.5) 46.25%,rgba(246,246,246,0) 100%); } .display code.dark, .ap-player { /* background: #333 linear-gradient(135deg, rgba(0, 0, 0, 0) 0%,rgba(125, 125, 125, 0.3) 46%,rgba(45, 45, 45, 0.8) 46.8%,rgba(0, 0, 0, 0) 100%); */ background: rgb(0 0 0 / .7) linear-gradient(135deg, transparent 0%, rgb(200 200 200 / 0.25) 46%, rgb(200 200 200 / .15) 46.5%, transparent 100%); color: #fff; } .blinking { animation: blinking 1s infinite; background-color: #fff; width: .5em; height: 1.2em; position: relative; top: 5px; display: inline-block; } @keyframes blinking { 0% { background-color: #fff; } 45% { background-color: #fff; } 60% { background-color: transparent; } 99% { background-color: transparent; } 100% { background-color: #fff; } } .action-buttons { display: flex; gap: 1.5em; margin-top: 55px; } .sponsors-leaders { position: relative; text-align: center; margin: 75px auto; padding: 35px; z-index: 0; } .sponsors-leaders::before { content: ""; position: absolute; padding: 40px; background-color: rgb(207 27 189 / .2); filter: blur(10px); top: 0; left: 0; right: 0; bottom: 0; z-index: -1; pointer-events: none; } .sponsors-leaders h3 { color: #EB5EDD; font-weight: normal; font-size: 18px; margin-bottom: 1em; } .sponsor-logos { display: flex; gap: 50px; flex-wrap: wrap; align-items: center; justify-content: center; margin-bottom: 1em; } .sponsor-logos img { height: 2em; } .wavy-top { background-color: #C4D5E0; margin-top: -10vw; position: relative; z-index: 0; padding-top: 14vw; padding-bottom: 300px; } .wavy-top::before { content: ""; position: absolute; top: -16vw; left: 0; right: 0; bottom: 0; background-image: url('/resources/images/home-curvey-bg.svg'); background-repeat: no-repeat; background-size: 100% auto; z-index: -1; } .bgtext { color: #86A6A3; opacity: .5; width: 90%; min-width: 65vw; max-width: 1200px; font-size: min(15vw, 300px); text-align: center; line-height: .85; font-weight: 800; text-transform: uppercase; mix-blend-mode: color-burn; pointer-events: none; position: absolute; top: 5vw; left: 50%; transform: translateX(-50%); } .bgtext .site-on { font-size: 85%; } .wavy-top h2 { color: #003E4B; font-size: min(3vw, 52px); text-align: center; width: 60vw; max-width: 950px; font-weight: normal; margin: 0 auto 200px; line-height: 2.5em; } .wavy-top h2 b, .section-upset b { font-weight: 800; } .feature p { font-weight: 600; margin-top: 2em; margin-bottom: 4em; line-height: 1.65; } section { padding: 200px; background: white; } .section-upset { background: white; max-width: 1600px; margin: -350px auto 0; padding: 50px 100px 0; border-radius: 20px; z-index: 0; position: relative; box-shadow: 0 -15px 20px -2px rgb(0 0 0 / .1); } .section-upset h2 { background: linear-gradient(195deg, rgb(6, 79, 107) 25%, rgba(139, 189, 224, 1) 49%, rgb(72, 129, 164)50%, rgb(8, 44, 58) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; font-size: 80px; font-weight: 600; text-align: center; margin-bottom: 100px; max-width: none; } .cols { display: flex; flex-wrap: wrap; justify-content:space-around; gap: 50px; color: #424242; } section.dark .cols { color: #c1ced9; } .col { /* max-width: 33.333%; */ min-width: 250px; padding-left: 1em; flex: 1; } .col h3 { font-weight: 600; font-size: 20px; border-left: 2px solid; padding-top: .15em; padding-bottom: .15em; margin-bottom: 10px; /* shove the border over but leave space between border and content */ margin-left: -1em; padding-left: calc(1em - 2px); } .col p { font-family: Inter; font-size: 90%; font-weight: normal; } .col .green { color: #23a460; border-color: #23a460; } .col .purple { color: rgb(151, 39, 151); border-color: rgb(151, 39, 151); } .col .blue { color: rgb(14, 110, 189); border-color: rgb(14, 110, 189); } section.dark .col .green { color: #41e68f; border-color: #41e68f; } section.dark .col .purple { color: rgb(204, 82, 204); border-color: rgb(204, 82, 204); } section.dark .col .blue { color: rgb(81, 165, 234); border-color: rgb(81, 165, 234); } .demobox { position: relative; color: #003e4b; background: radial-gradient(circle at 200px 100px, rgba(184,255,239,1) 0%, rgba(234,249,255,1) 280px); font-size: 20px; padding: 50px; border-radius: 15px; margin-top: 200px; } .demobox h2 { position: absolute; top: -99px; font-size: 90px; font-weight: 700; white-space: nowrap; max-width: none; background: linear-gradient(0deg, rgba(27,180,186,1) 10%, rgba(0,61,75,1) 50%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; } .demobox p { margin-bottom: 2em; } .demo-ips { display: flex; gap: 2em; } .demo-ips code { background: #ecffff; display: flex; border-radius: 5px; box-shadow: 0 4px 16px rgb(0 0 0 / .1); } .record-type, .demo-ip { display: block; padding: 10px 20px; } .record-type { color: #6ea9b7; border-right: 1px solid #cef4f1; } .demo-help { border-top: 1px solid #b5d3d9; font-size: 75%; color: #628991; font-family: Inter; max-width: 800px; } .demo-help p { margin: 10px 0; } section.dark, footer { background-color: #002020; color: #fff; } section.light { background-color: #f5f8f9; } .diagonal { padding: 200px 0; margin: 25px 0; } .diagonal.up { transform: skewY(-5deg); } .diagonal.up > * { transform: skewY(5deg); } .diagonal.down { transform: skewY(5deg); } .diagonal.down > * { transform: skewY(-5deg); } footer { padding: 75px 0; font-size: 14px; color: #7c9393; line-height: 1.5; } footer p { margin: 1em 0; } footer a { color: inherit; font-weight: bold; transition: .25s; } footer a:hover { color: #76b8b8; } footer .wrapper { display: flex; gap: 75px; } footer .logo { display: block; margin-bottom: 15px; height: 40px; } footer .link-col { font-size: initial; line-height: 2; } footer .col-header { font-size: 110%; color: white; font-weight: 700; margin-bottom: .5em; } footer .link-col a { display: block; color: #b7c8c8; font-weight: 500; text-decoration: none; } footer .link-col a:hover { color: #c8ecf5; } @media (max-width: 720px) { .display { margin-top: 50px; margin-bottom: 50px; } .display.right > * { transform: none; } .display.left > * { transform: none; } .asides > * { margin-right: 0; } }