@font-face { font-family: "neon-future"; src: url("../fonts/NeonFuture.ttf") } @font-face { font-family: "shuttlex"; src: url("../fonts/SHUTTLE-X.ttf"); } @font-face { font-family: "sunset-club"; src: url("../fonts/SunsetClub.otf") } @font-face { font-family: "robotoreg"; src: url("../fonts/RobotoCondensed-Regular.ttf") } html, body { scroll-behavior: smooth; } body { margin: 0; background-attachment: fixed; background-size: 100% auto; background-clip: border-box; background-color: #1a1a1a; } * { font-family: "Roboto Condensed", sans-serif; } #fullIframe { width:100vw; height: 100vh; } #menu { height: 2rem; display: none; filter: brightness(0) saturate(100%) invert(72%) sepia(0%) saturate(1%) hue-rotate(151deg) brightness(95%) contrast(86%); float: right; margin-right: 1rem; margin-top: .25rem; cursor: pointer; } /* #defaultCanvas0 { position: fixed; top: 0; left: 0; position: fixed; z-index: -69; } */ #map { height: 100%; width: 100vw; position: fixed; top: 0; left: 0; z-index: -69; } .leaflet-layer, .leaflet-control-zoom-in, .leaflet-control-zoom-out, .leaflet-control-attribution { filter: brightness(500%) contrast(130%); } .leaflet-tile-pane { filter: brightness(50%); } h1 { color: #ecebeb; } h2, h3, h4, h5 { color: #a8a8a8; } h5 { margin: 0; } strong { color: #ecebeb; } p, li { color: rgb(212, 212, 212); font-size: 1rem; } a, a p { color: #a0a0a0a0; text-decoration: none; } .transparent { opacity: 0 !important; } .unsetPos { position: unset !important; } .header h1 { display: inline-block; transition: .4s; margin-bottom: 0px; margin-top: .5rem; margin-left: 1rem; font-size: 2rem; } .header { margin-bottom: 0px; margin-left: 0rem; background-color: #1a1a1a; width: 100vw; z-index: 99; position: sticky; top: 0; left: 0; transition: .4s; border-bottom: solid .2em rgba(139, 36, 36, 0.5); overflow: hidden; } #homeIcon { margin: auto; display: block; /* width: 5em; */ width: 15em; /* height: 30em; */ /* max-height: 70vh; */ max-width: 90vw; } #homeName { margin-top: .25em; margin-bottom: 0; } #name-container { display: inline-block; cursor: pointer; max-width: calc(100% - 3em); margin: 0.2em; } .pointer { cursor: pointer; } .name { display: inline; color: #bbbaba; background: url("../icons/neonfinal3.svg") 0/5rem no-repeat; background-size: contain; padding-left: min(10vw, 3.5rem); font-size: xx-large; } .glitch { display: inline; } .textGrad { font-family: "shuttlex" !important; } .navControl { max-height: 57px; float: right; margin-right: 1em; transition: .4s; } .navBar { display: flex; justify-content: space-between; padding-left: 0px; margin: 0px; width: 100%; } .navElement { display: inline-block; border: solid black .2rem; text-align: center; background-color: rgba(139, 36, 36, 0.5); padding: 0 1em; margin-left: .5em; padding-top: 1.2em; margin-top: -1.3em; border-radius: .5em; } .navElement:hover { background-color: rgba(139, 36, 36, 0.8); cursor: pointer; } .navElement * { color: white; margin: 0px; display: block; padding-top: .3rem; padding-bottom: .3rem; transition: .4s; } #home { /* height: 100vh; */ overflow-y: hidden; } .selfcenter { align-self: center; } .langstats { width: min(100%, 350px); /* height: 165px; */ border: none; display: block; } .diamonds { background: black; background-image: linear-gradient(rgba(0, 0, 0, .5), rgba(0, 0, 0, .75)), url('../chesscom-embed/diamonds.png'); } .concentratedHead { display: inline-block; padding-right: 4rem; border-bottom: #0f0f0f solid 5px; color: white; } .foreground { position: fixed; top: 0; left: 0; min-width: 100vw; min-height: 100vh; overflow: hidden; background-color: rgb(24, 24, 24, .85); z-index: -1; } .foregroundContent { padding-left: 8rem; padding-right: 2em; padding-bottom: 1rem; } .foregroundContent p { line-height: 1.5em; } .homeground { background-color: rgb(0, 0, 0, .6); } .homegroundContent { padding-top: 1em; padding-left: 0em; } .noBackground { background: none; } .relative { position: relative; } .noPad { padding-left: 0px !important; padding-right: 0px !important; } .centerContent { position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; } .centerContent>div { margin-top: 30vh; margin-left: auto; margin-right: auto; text-align: center; } #HomeContent { display: inline-block; flex-grow: 1; min-width: 65em; } #nametag { padding: 2em 3em; background-color: rgb(44, 44, 44, .75); text-align: center; } #nametag h2{ font-size: medium; } #nametag p { text-shadow: none; color: #a8a8a8; margin: 0; } #nametagContainer { display: flex; width: 100%; position: absolute; left: 0; justify-content: center; z-index: -1; } .nomargin { margin: 0; } .flex { display: flex; justify-content: space-around; } .equalitems { column-gap: 1em; } .equalitems > * { flex: 1 1 0; } .vFlex { display: flex; flex-direction: column; height: 100%; } .wrap { flex-wrap: wrap; max-width: 100%; } #aboutCards > * { margin: .25em; } .spaceBetween { justify-content: space-between; } .start { justify-content: left; } .hSpacer { width: 2em; height: 0; } .relative { position: relative; } .onRight { overflow: scroll; margin: auto; } .onRight>* { margin: auto; margin-bottom: 5px; } .bgi { background-size: contain; background-repeat: no-repeat; background-position-y: center; height: 100%; width: 100%; position: absolute; z-index: 0; } #Vertical { margin-left: auto; margin-right: auto; width: 0; height: 3rem; border-right: rgb(156, 49, 45) solid 1px; } .sideimg { float: right; top: 0; right: 0; display: block; max-width: min(40rem, 80%); max-height: min(30rem, 100%); } .col { width: calc(50% - 3rem); margin-bottom: 3em; float: left; } .rightCol { float: left; margin-right: 3em; } .boxedImg { border: .5rem solid rgba(22, 22, 22, .8); max-width: calc(90% - 1rem); display: block; margin-left: auto; margin-right: auto; } #skillstag::after { content: "Click for details..."; display: block; font-size: small; color: #a8a8a8; } #skillTree { border-left: rgb(139, 36, 36) solid 3px; background: rgba(22,22,22,.8); font-size: x-large; margin-bottom: 10px; } .skill { display: none; padding: .2em; color: rgb(235, 235, 235); } .skill.activeSkill > .skillname { color: rgb(170, 170, 170); } .skill > .skillname:hover { color: rgb(170, 170, 170); } #skillTree > .skill { display: block; } .skill > .skill { font-size: large !important; padding-left: .5em; } .skill.activeSkill > .skill { display: block !important; } .skill > .skillname { text-decoration: underline; } .skill > .skillname::after { content: " >"; } .skill.activeSkill > .skillname::after { content: " <"; } .skill[data-length="0"].activeSkill > .skillname, .skill[data-length="0"] > .skillname:hover, .skill.activeSkill > .skillname:hover { color: rgb(235, 235, 235); } .skill[data-length="0"] > .skillname::after { content: "" } .skill[data-length="0"] > .skillname { text-decoration: none; } .projectList { padding: 0px; display: flex; flex-wrap: wrap; margin-left: auto; margin-right: auto; width: 100%; } .project { border-top: .3rem rgba(156, 49, 45, .8) solid; background-color: rgb(24, 24, 24, .85); } .projTitle>* { margin: 0; } .projBody { position: relative; z-index: 3; display: flex; min-height: 15em; } .projBody p { margin: 0; } .grow { flex-grow: 1; } .projImage > img { width: 100%; height: 100%; object-fit: contain; border-radius: 1em; } .projImage { flex: 0 0 min(100%, 25em); margin: 1em 0; } .project .projTitle { padding-top: 1rem; z-index: inherit; } .backedBody { padding: .25em; height: unset !important; } .projDesc { max-width: 50em; margin: 0 2em; } .tab { display: inline; float: right; } .project h3 { display: inline-block; border-bottom: black solid .2rem; } .projectLink { margin-top: auto; height: 3rem; } .bottomBox a, .placeholding { vertical-align: middle; display: inline; text-align: left; height: unset; } .project a img, .project a p { padding: .5rem; filter: invert(100%) sepia(0%) saturate(1%) hue-rotate(52deg) brightness(106%) contrast(101%); } .project a img:hover, .project a p:hover { filter: invert(66%) sepia(0%) saturate(3964%) hue-rotate(99deg) brightness(100%) contrast(105%); } .incomplete { color: red; } .WIP { color: yellow; } .complete { color: green; } .footer { position: fixed; bottom: 0; left: 0; } #contentStuffer { display: flex; flex-direction: column; min-height: 100vh; } .socials { margin-left: 1rem; width: 0px; } .socials img { height: 2rem; margin-bottom: 1rem; filter: invert(29%) sepia(20%) saturate(1786%) hue-rotate(314deg) brightness(101%) contrast(110%); transition: .2s; } .socials img:hover { opacity: .5; } #vertLine { border-right: 1px solid rgb(156, 49, 45); margin-left: 1rem; height: 10rem; } .neon { display: inline-block; font-family: "neon-future"; color: #fff; text-shadow: 0 0 7px #fff, 0 0 10px #fff, 0 0 21px #fff, 0 0 42px #5271ff, 0 0 82px #5271ff, 0 0 92px #5271ff, 0 0 102px #5271ff, 0 0 151px #5271ff; animation: pulsate 0.11s ease-in-out infinite alternate; } .neonBox h1 { font-size: min(4em, 12vw); } .neonBox h3 { font-size: min(2em, 6vw); } .neonBox { border: 0.2rem solid #fff; border-radius: 2rem; padding: 2em; margin: 2em; box-shadow: 0 0 0.2rem #fff, 0 0 0.2rem #fff, 0 0 2rem #5271ff, 0 0 0.8rem #5271ff, 0 0 2.8rem #5271ff, inset 0 0 1.3rem #5271ff; background-image: url('https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fwww.thedermacompany.co.uk%2Fwp-content%2Fuploads%2F2020%2F11%2Fblack-brick-scaled.jpg&f=1&nofb=1&ipt=d10be6df79141da1b4ec0c725575cef0f7b67e957e391662226d66cff02d25e6&ipo=images'); /* background-blend-mode: ; */ text-align: center; } @keyframes pulsate { 100% { text-shadow: 0 0 4px #fff, 0 0 11px #fff, 0 0 19px #fff, 0 0 40px #5271ff, 0 0 80px #5271ff, 0 0 90px #5271ff, 0 0 100px #5271ff, 0 0 150px #5271ff; } 0% { text-shadow: 0 0 4px #fff, 0 0 10px #fff, 0 0 18px #fff, 0 0 38px #5271ff, 0 0 73px #5271ff, 0 0 80px #5271ff, 0 0 94px #5271ff, 0 0 140px #5271ff; } } .fPage { height: 100vh; width: 100%; display: flex; position: absolute; justify-content: center; background-position: center; background-repeat: no-repeat; background-size: cover; } #desktopSpacer { height: min(20em, 30vh); } .homeSubContent { background-color: rgb(24, 24, 24, .85); padding: 0 8em; padding-top: 1em; border-top: solid 4px rgba(139,36,36,0.5); } #homeProjects { padding: 1em; } .homeProject { width: 20em; height:5em; } .heightBox { height: 100%; display: flex; flex-direction: column; justify-content: center; } .fullHeight { height: 100%; } .chess { max-width: 300px; border: none; } #chessProfile { border-radius: 5px; width: 300px; height: calc(125px + 2em); color: #AAAAAA; display: grid; grid-template-columns: 1fr 1fr; cursor: pointer; } .chessInfo { background-color: rgba(0, 0, 0, .3); ; margin: 1em; } .chessRapid::after, .chessBlitz::after, .chessBullet::after, .chessPuzzles::after { font-size: xx-small; float: right; margin-right: 5px; margin-top: 1rem; } .chessStat { display: inline; vertical-align: center; } .chessStat::after { font-size: xx-small; float: right; } .chessPuzzles::after { content: 'Tactics'; } .chessBullet::after { content: "Bullet"; } .chessBlitz::after { content: "Blitz"; } .chessRapid::after { content: "Rapid"; } .bottomtext { font-size: x-small; margin: 3px; color: white; text-align: right; } .black { background-color: black; } .identity { margin-right: 0px; } .identity h5 { margin: 0px; margin-top: -25px; background: black; z-index: 50; position: relative; width: 90%; margin-left: 10px; } .pfpContainer { display: flex; justify-content: center; height: 100%; } .pfpContainer>div { display: flex; flex-direction: column; justify-content: center; } .pfp { border-radius: 50%; width: 100px; text-align: center; } .vContainer { display: flex; flex-direction: column; max-height: 100%; max-width: 100%; justify-content: space-around; } .chessIcon { display: inline-block; font-family: Chess New; font-size: x-large; width: 25px; text-align: center; } .rapid { color: #6c9d41; } .blitz { color: #f7c045; } .bullet { color: #a58a45; } .puzzles { color: #db7e3b; } .bookshelf { max-width: 360px; padding: 10px; border: solid 2px #553; background-image: url("/static/photos/wood.jpg"); cursor: pointer; } .bookshelfHeader { color: lightgray; margin: .5em; border-bottom: solid black 3px; flex-grow: 1; } .bookContainer { display: flex; justify-content: space-around; flex-wrap: wrap; } .bookContainer > a { max-width: min(90px, 24%); } .book { display: inline-block; } .book img { display: block; margin: auto; width: 75px; height: 112px; } .book h4 { font-size: x-small; color: lightgray; margin-bottom: 0; text-align: center; } .bookReview { width: min(100%, 30em); padding: 1em; border: solid 3px rgba(139, 36, 36, 0.5); flex-grow: 1; } .bookcover { width: 6em; } .booklist { /* margin: min(10em, 10%); margin-bottom: 2em; margin-top: 2em; */ justify-content: left; } .boxed { background-color: rgba(24, 24, 24, 0.85); border: solid 0.5em rgba(139, 36, 36, 0.5); border-radius: 0.5em; padding: 1em; } .emPad { padding: 1em; } .timeitem { transition: .4s; overflow-y: clip; height: auto; max-height: 500px; } .timeitem a { color: inherit; font-family: inherit; font-size: inherit; text-decoration: underline; } .timeline-item { border-left: solid #AAAAAA 3px; } .timeline-item h2 { margin-top: 0px; margin-left: .5em; font-family: robotoreg; } .timeline-item p { margin-bottom: 0px; padding-bottom: 2em; padding-left: 3em; font-family: robotoreg; } .datetext { margin: .25em; font-size: small; margin-left: -1.5em; font-family: robotoreg; } .smallImg { display: inline-block; width: 75px; } .hover-container { position: relative; } .hover-container .hover-element { position: absolute; top: 3em; left: -50%; padding: 1em; border-radius: 1em; width: 20em; background-color: #1a1a1a; opacity: 0; transition: 1s; z-index: -1; } .hover-container:hover .hover-element { opacity: 1; z-index: 10; } @font-face { font-family: Chess New; src: url('https://www.chess.com/bundles/web/fonts/chessglyph-new.0cc8115c.woff2'); } @media screen and (max-width: 600) { #nametagContainer { width: unset; } } @media screen and (max-width: 1400px) { #homepage { flex-direction: column; } #HomeContent { min-width: 0; } /* fuckin iOS gotta render gaussian blurs differently so better fuckin uhh make rasters for mobile users */ /* Be sure to uncomment this if we ever stop using jebwin memes */ /* #homeIcon { content: url("../icons/rasterLogo.png"); } */ .name { font-size: min(6vw, 2em); background: url("../icons/rasterLogo.png") 0/5rem no-repeat; background-size: contain; } .mobileV { flex-direction: column; } #menu { display: unset; } .header { background-color: #1a1a1a; border-bottom: solid 3px rgb(156, 49, 45, .4); } .footer { position: unset; } #footerSpacer { flex-grow: 1; } #aboutCards { flex-direction: column; } #aboutCards > * { margin: .25em auto; } .header h1 { font-size: 1.5rem; } .navBar { flex-direction: column; } .navElement { width: 100vw; padding: 0; margin-left: 0; padding-top: unset; margin-top: unset; border-radius: 0; } .navControl { max-height: 0px; margin: 0; } .vertOnMobile { flex-direction: column; } .sideimg { position: relative; } body { background-size: auto 100%; } .foregroundContent { /* centered objects will need to remove 1.5 of this to center */ padding-left: 1em; padding-right: 1em; padding-bottom: 36px; padding-top: 3em; } .homegroundContent { padding-top: 5em; } .homeSubContent { padding: 1em; } .onRight { margin: unset; margin-top: 3rem; } .onRight>* { margin: auto; } .projDesc { margin: 0; } .timeline { padding-left: 1em; } .col { width: 100%; margin-bottom: 0; } .rightCol { position: inherit; margin-right: inherit; } .footer { position: relative; width: 100%; display: inline-block; background-color: rgb(156, 49, 45); } .socials { display: flex; justify-content: space-around; padding-top: .5rem; padding-bottom: .5rem; margin-right: auto; margin-left: auto; width: min(100vw, 400px); } .socials * { display: inline; text-align: center; padding-left: 0px; padding-right: 0px; } .socials img { height: 2rem; margin-bottom: 0px; filter: none; } #vertLine { display: none; height: 0px; } }