*, *::before, *::after { box-sizing: border-box; font: inherit; margin: 0; } html, body { min-height: 100%; height: 100%; margin: 0; font-family: 'Open Sans', sans-serif; font-size: 18px; color: #222; } html { scroll-snap-type: y proximity; scroll-padding-top: 4rem; } img { display: block; } a { color: inherit; text-decoration: none; } // // Typography // .text { display: block; line-height: 1.5; p + p { margin-top: 0.5rem; } } // // Controls // button, .button, [role='button'] { appearance: none; background: #fff; border: 3px solid #222; border-radius: 6px; box-shadow: 4px 4px 0 0 #222; transition: all 64ms linear; &:hover { background: #f0f0f0; } &:active { transform: translate(2px, 2px); box-shadow: 2px 2px 0 0 #222; } padding: 0.25rem 1.5rem; text-decoration: none; color: #222; font-family: 'Source Sans Pro', sans-serif; font-weight: 600; &.primary { background: #1e6733; color: #f4fef7; &:hover { background: #2b8b47; } } } // // Pages // header { z-index: 10; height: 6rem; border-bottom: 4px solid #222; background: #fff; position: fixed; width: 100%; display: flex; align-items: center; justify-content: space-between; .logo { padding-left: 0.5rem; img { height: 4rem; } } .links { display: flex; align-items: center; gap: 1.5rem; padding: 0 1.5rem; a { font-size: 22px; font-weight: 600; } } } footer { min-height: 6rem; border-top: 4px solid #222; background: #444; color: #fdfdfd; display: grid; place-content: center; font-family: 'Source Sans Pro', sans-serif; font-size: 20px; } .page-homepage { header .logo { visibility: hidden; } section { position: relative; min-height: calc(100vh - 6rem); &:last-of-type { min-height: calc(100vh - 10rem); } display: flex; flex-direction: column; align-items: center; gap: 2rem; scroll-snap-align: start; & > .title { font-weight: 700; font-size: 60px; font-family: 'Source Sans Pro', sans-serif; padding-top: 4rem; } } .zig-zag { z-index: 5; position: absolute; width: 100%; display: flex; &:first-child { bottom: 100%; } } section.principal { z-index: -2; min-height: calc(100vh - 2rem); flex-direction: row; align-items: center; justify-content: center; gap: 6rem; padding: 6rem 0; background: #ecffe3; // circuit color // background: #a6ce94; flex-wrap: wrap; position: relative; .circuit-layer { z-index: -1; position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding-top: 6rem; canvas { width: 100%; height: 100%; } } .logo { max-width: 640px; position: relative; user-select: none; img { width: 100%; filter: drop-shadow(6px 6px 0 #222) drop-shadow(4px 0 0 #222) drop-shadow(0 4px 0 #222) drop-shadow(-4px 0 0 #222) drop-shadow(0 -4px 0 #222); } } .whats-phc { background: #e4c5ff; border: 4px solid #222; border-radius: 8px; box-shadow: 6px 6px 0 0 #222; padding: 2rem; max-width: 37rem; display: flex; flex-direction: column; align-items: center; gap: 1rem; .title { font-family: 'Source Sans Pro', sans-serif; font-weight: 700; font-size: 40px; } .content { @extend .text; } } } section.news { background: #c2a8eb; gap: 3rem; padding-bottom: 6rem; .news-list { display: flex; flex-direction: row; gap: 3rem; padding: 0 3rem; justify-content: center; flex-wrap: wrap; .news { background: #fffbeb; border: 3px solid #222; border-radius: 9px; box-shadow: 9px 9px 0 0 #222; display: flex; flex-direction: column; width: 22rem; max-height: 27rem; ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-thumb { background-color: #c67e14; border: 2px solid #222; &:hover { background-color: #e69419; } } a { font-weight: 600; text-decoration: none; color: #c67e14; &:hover { text-decoration: underline solid 2px; } } & > .title { // border-bottom: 2px solid #222; border-top-left-radius: 9px; border-top-right-radius: 9px; padding: 1rem; background: #f8e8b1; font-family: 'Source Sans Pro', sans-serif; font-weight: 700; font-size: 32px; } & > .abstract { flex-grow: 1; padding: 1rem; overflow-y: auto; @extend .text; } & > .continue { padding: 1rem; display: grid; align-items: end; justify-content: end; } } } [role='button'] { padding: 0.5rem 2rem; &.primary { // background: #824ed4; // color: #f0e6ff; background: #f8e8b1; color: #000d; &:hover { // background: #8e5ddd; } } } } section.projects { background: #f5f2cc; padding-bottom: 6rem; .project-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); gap: 3rem; padding: 0 6rem; align-items: start; .project { // background: #fcddff; background: #ffa89c; color: #000e; border: 3px solid #222; border-radius: 9px; box-shadow: 9px 9px 0 0 #222; padding: 1rem; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto 1fr; gap: 0.25rem 1rem; .title { font-family: 'Source Sans Pro', sans-serif; font-weight: 700; font-size: 32px; } .image { grid-row: span 2; // place-self: center; .box { background: #0003; border: 3px solid #0006; border-radius: 6px; width: 5rem; height: 5rem; } } .description { font-size: 16px; } transition: all 128ms ease-out; &:hover { transform: translate(0, -8px); } } } } section.wanna-be-macchinista { background: #888; color: #fdfdfd; } } // // Misc // ::-webkit-scrollbar-track:vertical { background-color: #f0f0f0; border-left: 2px solid #222; border-top: 2px solid #222; border-bottom: 2px solid #222; } ::-webkit-scrollbar-track:horizontal { background-color: #f0f0f0; border-top: 2px solid #222; border-left: 2px solid #222; border-right: 2px solid #222; } ::-webkit-scrollbar-thumb { background-color: #1e6733; border: 2px solid #222; } ::-webkit-scrollbar-thumb:hover { background-color: #2b8b47; } ::-webkit-scrollbar-corner { background-color: #f0f0f0; // border-left: 2px solid #222; // border-top: 2px solid #222; } ::-webkit-scrollbar { width: 15px; }