gilroyhacks.com/css/general.css
2022-06-01 18:54:41 -07:00

991 lines
16 KiB
CSS

/*
Gilroy Hacks Website Source Code -> CSS (https://gilroyhacks.com)
For more info, contact jamesdinh77 (at) protonmail (dot) com
*/
html {
scroll-behavior: smooth;
}
/* Nav */
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
nav {
height: auto;
width: 100%;
overflow: hidden;
top: 0;
left: 0;
position: fixed;
flex-wrap: nowrap;
z-index: 100;
}
nav * {
padding: 0;
margin: 0px 5px;
list-style: none;
box-sizing: border-box;
z-index: 100;
text-decoration: none;
}
#nav-logo {
margin-top: 5px;
}
#nav-logo-a {
position: relative;
}
nav ul {
float: right;
margin-right: 20px;
}
nav li {
display: inline-block;
line-height: 30px;
margin: 10px 7px;
padding: 3px 5px;
cursor: pointer;
}
nav li a {
color:rgb(233, 203, 104);
font-size: 18px;
text-decoration: none;
position: relative;
}
nav li a.active,a:hover {
color: rgba(233, 203, 104, 0.774);
transition: .5s;
}
nav li a::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 0.1em;
background-color: hotpink;
opacity: 1;
transition: opacity 300ms, transform 300ms;
transform: scale(0);
transform-origin: center;
}
nav li a:hover::after,
nav li a:focus::after{
transform: scale(1);
}
.checkbtn {
font-size: 23px;
color: white;
float: right;
line-height: 59px;
margin-right: 20px;
cursor: pointer;
display: none;
}
#check {
display: none;
}
#nav-links-container {
display: flex;
margin: 0;
padding: 0;
height: 59px;
float: right;
flex-wrap: nowrap;
flex-direction: row-reverse;
align-content: stretch;
}
#sign-up {
padding: 6px 7px;
margin: 14px 15px 14px 4px;
border-radius: 5px;
font-size: 16px;
background-color: rgb(140, 42, 165);
color: bisque;
display: flex;
place-items: center;
}
#sign-up:hover {
transform: scale(1.1);
background-color: blueviolet;
cursor: pointer;
transition: 0.5s;
}
/* Responsive Functions */
@media (max-width: 880px) {
#photo-release-container {
transform: scale(0.8);
font-size: 20px;
}
}
@media (max-width: 800px) {
.checkbtn {
display: inline-block;
}
nav ul {
position: fixed;
width: 100%;
height: 250px;
margin-top: 58px;
margin-right: 0;
background: rgb(24, 24, 24);
top: -100%;
text-align: center;
/*animation: growOut 300ms ease-in-out forwards*/
}
nav ul li {
display: block;
margin: 20px 0;
line-height: 30px;
}
#check:checked ~ul {
top: 0;
}
.checkbtn {
display: inline-block;
}
#card-container {
grid-template-columns: repeat(1, 1fr) !important;
}
#prize-logo, .podium-label {
transform: scale(0.9);
font-size: 16px !important;
}
#podium-label-1 {
margin-right: 1px !important;
}
#podium-label-2 {
margin-left: 1px !important;
}
}
@media (max-width: 500px) {
#event, #rules, #prizes, #team {
transform: scale(0.9);
}
}
@media (max-width: 470px) {
.checkbtn {
display: none;
}
#logo {
height: 300px;
width: 300px;
}
#prizes-container {
transform: scale(0.9);
}
}
@media (max-height: 700px) {
#logo {
height: 300px;
width: 300px;
}
}
#spots-container {
display: flex;
place-items: center;
border-radius: 10px;
margin-top: 5px;
padding: 0 7px;
border: 1px solid rgb(73, 73, 73);
background-color: rgb(22, 22, 22);
}
.blob {
background: black;
border-radius: 50%;
box-shadow: 0 0 0 0 rgba(0, 0, 0, 1);
margin: 10px 4px;
height: 10px;
width: 10px;
transform: scale(1);
animation: pulse-black 2s infinite;
position: relative;
}
.blob.green {
background: rgba(51, 217, 178, 1);
box-shadow: 0 0 0 0 rgba(51, 217, 178, 1);
animation: pulse-green 2s infinite;
}
@keyframes pulse-green {
0% {
transform: scale(0.95);
box-shadow: 0 0 0 0 rgba(51, 217, 178, 0.7);
}
70% {
transform: scale(1);
box-shadow: 0 0 0 10px rgba(51, 217, 178, 0);
}
100% {
transform: scale(0.95);
box-shadow: 0 0 0 0 rgba(51, 217, 178, 0);
}
}
/* Header */
#header-background {
background-image: none;
background-position: center;
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;
height: 100vh; /* makes it so it covers the entire page */
}
#header {
width: 100%;
height: 100%;
display: flex;
flex-flow: column nowrap;
justify-content: center;
align-items: center;
text-align: center;
position: relative;
background-image: linear-gradient(#0d111733 50%, #0d11175e 60%, #0d1117 100%);
}
#header-subtitle-date {
padding: 5px;
margin-top: 5px;
border-radius: 10px;
border: 1px solid rgb(73, 73, 73);
background-color: rgb(22, 22, 22);
}
#header-subtitle-spots {
padding: 5px;
}
#entrance-arrow {
width: 50px;
height: 50px;
position: absolute;
bottom: 10px;
float: bottom;
animation: bounce 3s infinite;
}
#entrance-arrow:hover {
font-size: 17px;
transition: 0.1s;
}
@keyframes bounce {
0%, 20%, 50%, 80%, 100% {
transform: translateY(0);
}
40% {
transform: translateY(-5px);
}
60% {
transform: translateY(-3px);
}
}
#logo {
min-height: 300px;
min-width: 300px;
}
/* Main Section */
main {
width: 100%;
padding: 10px 0 10px 0;
align-items: center;
justify-content: center;
text-align: center;
position: relative;
margin: auto;
display: grid;
padding-bottom: 30px;
}
section {
width: auto;
padding: 70px 0px 0 0px;
text-align: center;
align-items: center;
max-width: 1500px;
}
.topic {
width: auto;
font-size: 35px;
padding: 0 20px 0 20px;
color:rgb(255, 243, 205);
}
#discord-widget {
margin: 50px auto 0;
/* width: 20%; */
float: right;
}
#event-container {
display: flex;
flex-wrap: wrap;
margin-top: 20px;
justify-content: center;
}
#event-description {
padding: 10px;
margin: 0 20px;
max-width: 700px;
min-width: 200px;
font-size: 18px;
text-align: left;
}
#description-heading {
text-align: center;
}
.list {
padding-left: 20px;
}
.list li{
margin: 10px 0;
}
/* Timeline */
#timeline {
width: 100%;
height: 100%;
text-align: center;
margin-top: 50px;
}
#timeline-heading {
text-align: center;
margin-top: 20px;
}
.flex-parent {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
width: 100%;
height: 100%;
}
.input-flex-container {
display: flex;
justify-content: space-around;
align-items: center;
flex-wrap: wrap;
width: 80%;
max-width: 1000px;
position: relative;
z-index: 0;
}
input {
width: 22px;
height: 22px;
background-color: #2C3E50;
position: relative;
border-radius: 50%;
display: block;
appearance: none;
cursor: pointer;
}
input:focus {
outline: none;
}
input::before, input::after {
content: "";
display: block;
position: absolute;
z-index: -1;
top: 50%;
transform: translateY(-50%);
background-color: #2C3E50;
width: 80px;
/* width: 6vw; */
height: 5px;
}
input::before {
right: calc(2vw);
}
input::after {
left: calc(1vw);
}
input:checked {
background-color: #2C3E50;
}
input:checked::before {
background-color: #2C3E50;
}
input:checked::after {
background-color: #AEB6BF;
}
input:checked ~ input, input:checked ~ input::before, input:checked ~ input::after {
background-color: #AEB6BF;
}
input:checked + .dot-info span {
font-size: 13px;
color: rgb(243, 174, 252);
font-weight: bold;
}
.dot-info {
width: 25px;
height: 25px;
display: flex;
visibility: hidden;
position: relative;
z-index: -1;
left: calc((((80vw - 25px) / 20) * -1) - 1px);
}
.dot-info span {
visibility: visible;
position: absolute;
font-size: 12px;
}
.dot-info span.year {
bottom: -30px;
right: -0.2vw;
/* transform: translateX(-60%); */
}
.dot-info span.label {
top: -56px;
left: -10px;
transform: rotateZ(-45deg);
width: 70px;
text-indent: -10px;
}
#timeline-descriptions-wrapper {
width: 100%;
margin-top: 70px;
font-size: 22px;
font-weight: 400;
margin-bottom: 200px;
text-align: left;
}
#timeline-descriptions-wrapper div {
margin-top: 0;
display: none;
}
.timeline-description {
font-size: 16px;
font-weight: normal;
}
.timeline-description-subtitle {
font-size: 18px;
color: rgb(121, 120, 120);
}
.timeline-description-list li {
margin: 10px 40px;
font-size: 16px;
}
.important-text {
color: rgb(255, 126, 126);
}
input[data-description="1"]:checked ~ #timeline-descriptions-wrapper div[data-description="1"] {
display: block;
}
input[data-description="2"]:checked ~ #timeline-descriptions-wrapper div[data-description="2"] {
display: block;
}
input[data-description="3"]:checked ~ #timeline-descriptions-wrapper div[data-description="3"] {
display: block;
}
input[data-description="4"]:checked ~ #timeline-descriptions-wrapper div[data-description="4"] {
display: block;
}
input[data-description="5"]:checked ~ #timeline-descriptions-wrapper div[data-description="5"] {
display: block;
}
@media (min-width: 1250px) {
input::before {
left: -37.5px;
}
input::after {
right: -37.5px;
}
.dot-info {
left: calc((((1000px - 25px) / 20) * -1) - 1px);
}
#timeline-descriptions-wrapper {
margin-left: -37.5px;
}
}
@media (max-width: 630px) {
.flex-parent {
justify-content: initial;
}
.input-flex-container {
flex-wrap: wrap;
justify-content: center;
width: 400px;
height: auto;
margin-top: 7vh;
margin-left: 0;
}
input, .dot-info {
width: 60px;
height: 60px;
margin: 0 10px 50px;
}
input {
background-color: transparent !important;
z-index: 1;
}
input::before, input::after {
content: none;
}
input:checked + .dot-info {
background-color: #2C3E50;
}
input:checked + .dot-info span.year {
font-size: 14px;
}
input:checked + .dot-info span.label {
font-size: 12px;
}
.dot-info {
visibility: visible;
border-radius: 50%;
z-index: 0;
left: 0;
margin-left: -70px;
background-color: #AEB6BF;
}
.dot-info span.year {
top: 0;
left: 0;
transform: none;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
color: #ECF0F1;
}
.dot-info span.label {
top: calc(100% + 5px);
left: 50%;
transform: translateX(-50%);
text-indent: 0;
text-align: center;
}
#timeline-descriptions-wrapper {
margin-top: 30px;
margin-left: 0;
text-align: left;
}
}
@media (max-width: 480px) {
.input-flex-container {
width: 340px;
}
}
@media (max-width: 400px) {
.input-flex-container {
width: 300px;
}
}
/* Signup Container */
#signup-container {
margin: 20px auto;
}
#steps-card {
width: 400px;
min-width: 300px;
border-radius: 10px;
background-color: #0d1117;
background-color: #1e2227;
margin: 10px auto;
padding: 10px 30px;
box-shadow: 5px 5px 10px rgb(0 0 0 / 20%);
text-align: left;
}
.list-item {
margin: 0 0 30px 30px;
padding: 10px;
position: relative;
}
.list-item::before {
content: "";
position: relative;
margin-right: 10px;
width: 10px;
height: 10px;
background: rgb(255, 255, 255);
border-radius: 999px;
float: left;
border: 3px solid rgb(44, 44, 44);
}
/* Outer Layer with the steps border */
.outer {
border-left: 2px solid #333;
}
/* Card container */
.card {
position: relative;
margin: 0 0 20px 20px;
padding: 10px;
background: #333;
color: gray;
border-radius: 8px;
max-width: 400px;
}
#signup-header {
padding-top: 10px;
}
/* Title of the card */
.title {
color: rgb(255, 255, 255);
position: relative;
font-size: 16px;
}
/* Steps dot */
.card::before {
content: "";
position: absolute;
width: 10px;
height: 10px;
background: white;
border-radius: 999px;
left: -28px;
border: 2px solid rgb(155, 144, 144);
}
#rules-description {
margin: 10px 20px;
}
#photo-description {
margin: 10px 20px;
}
#photo-release-container {
border-radius: 10px;
border: 1px solid white;
background-color: #1f2b22;
margin: 10px auto;
max-width: 850px;
min-width: 400px;
padding: 10px;
}
#rules-container {
display: flex;
flex-wrap: wrap;
margin-top: 20px;
justify-content: center;
}
#guidelines {
margin: 20px;
}
#code-of-conduct {
margin: 20px;
}
.rules-card {
position: relative;
padding: 10px;
margin: 0 0 20px 20px;
background: rgb(47, 55, 70);
color: rgb(179, 179, 179);
border-radius: 8px;
max-width: 400px;
}
#rules-main-card {
width: 400px;
min-width: 300px;
border-radius: 10px;
background-color: #131d29;
margin: 10px auto;
padding: 10px 30px;
box-shadow: 5px 5px 10px rgb(0 0 0 / 20%);
text-align: left;
}
#rules-header {
padding-top: 10px;
}
/* Title of the card */
.rules-title {
color: rgb(253, 103, 103);
position: relative;
font-size: 17px;
}
.rules-card::before {
content: "";
font-size: 30px;
position: absolute;
width: 10px;
height: 10px;
left: -28px;
}
#rules-1::before {
content: "1";
}
#rules-2::before {
content: "2";
}
#rules-3::before {
content: "3";
}
#rules-4::before {
content: "4";
}
#rules-5::before {
content: "5";
}
#prizes-container {
display: grid;
margin: 50px 20px 0;
width: auto;
height: 280px;
justify-content: center;
grid-template-columns: repeat(3, 1fr);
}
.podium-description {
width: 100%;
height: auto;
display: flex;
flex-flow: column nowrap;
justify-content: center;
align-items: center;
text-align: center;
position: relative;
}
.prize-laurel {
height: 150px;
width: auto;
position: relative;
}
.prize-title {
position: absolute;
color: rgb(203, 218, 77);
font-size: 25px;
}
#pr-ti-2 {
margin-bottom: 110px;
}
#pr-ti-1 {
margin-bottom: 160px;
}
#pr-ti-3 {
margin-bottom: 100px;
}
.prize-content {
margin-bottom: 10px;
}
#second-column {
width: 100%;
height: auto;
margin-top: 40px;
}
#first-column {
width: 100%;
height: auto;
position: relative;
}
#third-column {
width: 100%;
height: auto;
margin-top: 50px;
}
#second-podium {
width: 100%;
height: 50px;
background-color: #333;
}
#first-podium {
width: 100%;
height: 90px;
background-color: #333;
align-items: center;
text-align: center;
display: flex;
justify-content: center;
}
#third-podium {
width: 100%;
height: 40px;
background-color: #333;
}
.podium-edge {
width: 105%;
height: 10px;
background-color: #24282e;
border-radius: 4px;
z-index: 1;
}
#prize-logo {
height: 50px;
border-radius: 50%;
border: 1px solid rgb(119, 119, 119);
}
.podium-label {
position: relative;
font-size: 20px;
}
#podium-label-1 {
margin-right: 7px;
color: #ff914d;
}
#podium-label-2 {
margin-left: 7px;
color: #ffde59;
}
/* Utilities */
#line-header {
width: 200px;
margin: 0 auto 5px;
}
abbr[title] {
text-decoration: underline dotted;
cursor: help;
}
.emphasis-text {
color:rgb(51, 235, 189);
}
.line {
width: 100px;
margin: 10px auto;
}
#footer-line {
width: 100px;
margin: 10px auto;
}
#arrow-link {
color:rgb(252, 188, 93);
text-decoration: none;
cursor: pointer;
}
.link {
color:rgb(252, 188, 93);
text-decoration: none;
cursor: pointer;
background:
linear-gradient(to right, rgba(100, 200, 200, 1), rgba(100, 200, 200, 1)),
linear-gradient(to right, rgba(255, 0, 0, 1), rgba(255, 0, 180, 1), rgba(0, 100, 200, 1));
background-size: 100% 0.1em, 0 0.1em;
background-position: 100% 100%, 0 100%;
background-repeat: no-repeat;
transition: background-size 400ms;
}
.link:hover {
color:rgba(252, 188, 93, 0.719);
background-size: 0 0.1em, 100% 0.1em;
}
footer {
width: auto;
height: 100px;
background-color: rgb(24, 24, 24);
justify-content: center;
align-items: center;
text-align: center;
padding: 10px 20px 20px 20px;
flex-flow: row wrap;
}
footer ul {
float: top;
}
footer li {
display: inline-block;
margin: 0 7px;
}
footer a {
color:rgb(108, 176, 231);
font-size: 16px;
}