mirror of
https://github.com/kforney/kforney.github.io.git
synced 2024-11-14 19:10:10 -07:00
555 lines
11 KiB
CSS
555 lines
11 KiB
CSS
/*! HTML5 Boilerplate v8.0.0 | MIT License | https://html5boilerplate.com/ */
|
|
|
|
/* main.css 2.1.0 | MIT License | https://github.com/h5bp/main.css#readme */
|
|
/*
|
|
* What follows is the result of much research on cross-browser styling.
|
|
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
|
|
* Kroc Camen, and the H5BP dev community and team.
|
|
*/
|
|
|
|
/* ==========================================================================
|
|
Base styles: opinionated defaults
|
|
========================================================================== */
|
|
|
|
html {
|
|
color: #222;
|
|
font-size: 1em;
|
|
line-height: 1.4;
|
|
}
|
|
|
|
/*
|
|
* Remove text-shadow in selection highlight:
|
|
* https://twitter.com/miketaylr/status/12228805301
|
|
*
|
|
* Vendor-prefixed and regular ::selection selectors cannot be combined:
|
|
* https://stackoverflow.com/a/16982510/7133471
|
|
*
|
|
* Customize the background color to match your design.
|
|
*/
|
|
|
|
::-moz-selection {
|
|
background: #b3d4fc;
|
|
text-shadow: none;
|
|
}
|
|
|
|
::selection {
|
|
background: #b3d4fc;
|
|
text-shadow: none;
|
|
}
|
|
|
|
/*
|
|
* A better looking default horizontal rule
|
|
*/
|
|
|
|
hr {
|
|
display: block;
|
|
height: 1px;
|
|
border: 0;
|
|
border-top: 1px solid #ccc;
|
|
margin: 1em 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/*
|
|
* Remove the gap between audio, canvas, iframes,
|
|
* images, videos and the bottom of their containers:
|
|
* https://github.com/h5bp/html5-boilerplate/issues/440
|
|
*/
|
|
|
|
audio,
|
|
canvas,
|
|
iframe,
|
|
img,
|
|
svg,
|
|
video {
|
|
vertical-align: middle;
|
|
}
|
|
|
|
/*
|
|
* Remove default fieldset styles.
|
|
*/
|
|
|
|
fieldset {
|
|
border: 0;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
/*
|
|
* Allow only vertical resizing of textareas.
|
|
*/
|
|
|
|
textarea {
|
|
resize: vertical;
|
|
}
|
|
|
|
/* ==========================================================================
|
|
Author's custom styles
|
|
========================================================================== */
|
|
|
|
/* Color Palette:
|
|
BACKGROUND
|
|
#283044 RGBA(40, 48, 68, 1) HSL(223, 26%, 21%)
|
|
#161A25 RGBA(22, 26, 37, 1) HSL(224, 25%, 12%)
|
|
|
|
TEXT
|
|
#78A1BB RGBA(120, 161, 187, 1) HSL(203, 33%, 60%)
|
|
#385B70 RGBA(56, 91, 112, 1) HSL(203, 33%, 33%)
|
|
|
|
ACCENTS
|
|
#FFBC42 RGBA(255, 188, 66, 1) HSL(39, 100%, 63%)
|
|
#B17300 RGBA(177, 115, 0, 1) HSL(39, 100%, 35%)
|
|
*/
|
|
|
|
body, html {
|
|
margin: 0;
|
|
}
|
|
|
|
body {
|
|
background-color: #161A25;
|
|
background-image: url("/img/branding/backgroundSmall.webp");
|
|
}
|
|
|
|
a {
|
|
transition: all 0.4s ease 0s;
|
|
}
|
|
|
|
h1 {
|
|
font-family: VT323, monospace;
|
|
font-size: 64px;
|
|
color: #FFBC42;
|
|
text-align: center;
|
|
}
|
|
|
|
h2 {
|
|
font-family: Oswald, "DejaVu Sans", sans-serif;
|
|
font-size: 64px;
|
|
color: #78a1bb;
|
|
text-align: center;
|
|
}
|
|
|
|
h5 {
|
|
font-family: 'IBM Plex Mono', monospace;
|
|
font-size: 28px;
|
|
color: #78a1bb;
|
|
text-align: center;
|
|
}
|
|
|
|
p {
|
|
font-family: 'IBM Plex Sans', sans-serif;
|
|
font-size: 20px;
|
|
color: #78a1bb;
|
|
text-align: center;
|
|
}
|
|
|
|
hr {
|
|
border-top: #78a1bb dashed 4px;
|
|
max-width: 75%;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
iframe[src*=itch] {
|
|
text-align: center;
|
|
display: block;
|
|
margin-right: auto;
|
|
margin-left: auto;
|
|
max-width: 80%;
|
|
}
|
|
|
|
.parallax {
|
|
position: relative;
|
|
background-attachment: fixed;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
background-size: cover;
|
|
}
|
|
|
|
.bg-dark {
|
|
--bs-dark-rgb: 40, 48, 68;
|
|
--bs-light-rgb: 120, 161, 187;
|
|
--bs-body-color: 120, 161, 187;
|
|
}
|
|
|
|
.navbar-brand {
|
|
font-family: VT323, monospace;
|
|
font-size: 36px;
|
|
color: #FFBC42;
|
|
}
|
|
|
|
.navbar-text {
|
|
font-family: VT323, monospace;
|
|
font-size: 36px;
|
|
color: #78a1bb;
|
|
}
|
|
|
|
.navbar-logo {
|
|
max-height: 50px;
|
|
padding-right: 15px;
|
|
padding-left: 15px;
|
|
padding-bottom: 6px;
|
|
}
|
|
|
|
.nav-item {
|
|
padding-top: 7px;
|
|
}
|
|
|
|
.navbar-brand:hover {
|
|
color: #78a1bb;
|
|
text-shadow: #B17300 2px 2px 3px;
|
|
}
|
|
|
|
.navbar-link {
|
|
color: #FFBC42;
|
|
font-family: VT323, monospace;
|
|
font-size: 36px;
|
|
padding-left: 50px;
|
|
padding-right: 50px;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.navbar-link:hover {
|
|
color: #78a1bb;
|
|
text-shadow: #B17300 2px 2px 3px;
|
|
}
|
|
|
|
.dropdown-menu {
|
|
background-color: RGBA(22, 26, 37, 70%);
|
|
box-shadow: #B17300 0px 0px 20px;
|
|
}
|
|
|
|
.dropdown-item {
|
|
color: #FFBC42;
|
|
font-family: "IBM Plex Mono", monospace;
|
|
}
|
|
|
|
.dropdown-item:hover {
|
|
background-color: #78a1bb;
|
|
}
|
|
|
|
.card {
|
|
background-color: RGBA(22, 26, 37, 70%);
|
|
border-radius: 30px;
|
|
box-shadow: #B17300 0px 0px 20px;
|
|
}
|
|
|
|
.text-shadow {
|
|
text-shadow: #ffbc42 1px 1px 2px;
|
|
}
|
|
|
|
.section-title {
|
|
padding-top: 5px;
|
|
padding-bottom: 10px;
|
|
text-shadow: #B17300 3px 3px 3px;
|
|
}
|
|
|
|
.game-link {
|
|
text-decoration: none;
|
|
color: #78a1bb;
|
|
font-family: "VT323",sans-serif;
|
|
}
|
|
|
|
.game-link:hover {
|
|
color: #FFBC42;
|
|
text-shadow: #78a1bb 3px 3px 3px;
|
|
}
|
|
|
|
/*Code for YouTube CSS is originally from https://stackoverflow.com/questions/50410828/how-to-prevent-youtube-js-calls-from-slowing-down-page-load
|
|
and was then modified by me as necessary.*/
|
|
|
|
.youtube-video {
|
|
background-color: #000;
|
|
margin-bottom: 30px;
|
|
position: relative;
|
|
padding-top: 56.25%;
|
|
overflow: hidden;
|
|
cursor: pointer;
|
|
border-radius: 40px;
|
|
box-shadow: #B17300 0px 0px 10px;
|
|
}
|
|
|
|
.youtube-video img {
|
|
width: 100%;
|
|
top: 0%;
|
|
left: 0;
|
|
opacity: 0.7;
|
|
}
|
|
|
|
.youtube-video .playButton {
|
|
width: 120px;
|
|
height: 90px;
|
|
background-color: #333;
|
|
box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
|
|
z-index: 1;
|
|
opacity: 0.8;
|
|
border-radius: 6px;
|
|
}
|
|
|
|
.youtube-video .playButton:before {
|
|
content: "";
|
|
border-style: solid;
|
|
border-width: 30px 0 30px 52px;
|
|
border-color: transparent transparent transparent #fff;
|
|
}
|
|
|
|
.youtube-video:hover .playButton {
|
|
background-color: #FFBC42;
|
|
}
|
|
|
|
.youtube-video img,
|
|
.youtube-video .playButton {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.youtube-video img,
|
|
.youtube-video iframe,
|
|
.youtube-video .playButton,
|
|
.youtube-video .playButton:before {
|
|
position: absolute;
|
|
}
|
|
|
|
.youtube-video .playButton,
|
|
.youtube-video .playButton:before {
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translate3d(-50%, -50%, 0);
|
|
}
|
|
|
|
.youtube-video iframe {
|
|
height: 100%;
|
|
width: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
|
|
.fa-brands {
|
|
color: #FFBC42;
|
|
transition: all 0.4s ease 0s;
|
|
}
|
|
|
|
.fa-brands:hover {
|
|
color: #78a1bb;
|
|
text-shadow: #B17300 2px 2px 3px;
|
|
}
|
|
|
|
.footer {
|
|
width: 100%;
|
|
height: 60px;
|
|
line-height: 60px;
|
|
text-align: center;
|
|
}
|
|
|
|
#footerText {
|
|
color: lightsteelblue;
|
|
}
|
|
|
|
@media screen and (min-width: 700px) {
|
|
.section-title {
|
|
font-size: 64px;
|
|
}
|
|
}
|
|
|
|
@media screen and (max-width: 699px) {
|
|
.section-title {
|
|
font-size: 45px;
|
|
}
|
|
}
|
|
|
|
@font-face {
|
|
font-family: VT323;
|
|
font-display: swap;
|
|
src: url("../fonts/VT323-Regular.ttf");
|
|
}
|
|
|
|
@font-face {
|
|
font-family: Oswald, "DejaVu Sans";
|
|
font-display: swap;
|
|
src: url("../fonts/Oswald-Regular.ttf");
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'IBM Plex Mono';
|
|
font-display: swap;
|
|
src: url("../fonts/IBMPlexMono-Regular.ttf");
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'IBM Plex Sans';
|
|
font-display: swap;
|
|
src: url("../fonts/IBMPlexSans-Regular.ttf");
|
|
}
|
|
|
|
/* ==========================================================================
|
|
Helper classes
|
|
========================================================================== */
|
|
|
|
/*
|
|
* Hide visually and from screen readers
|
|
*/
|
|
|
|
.hidden,
|
|
[hidden] {
|
|
display: none !important;
|
|
}
|
|
|
|
/*
|
|
* Hide only visually, but have it available for screen readers:
|
|
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
|
|
*
|
|
* 1. For long content, line feeds are not interpreted as spaces and small width
|
|
* causes content to wrap 1 word per line:
|
|
* https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
|
|
*/
|
|
|
|
.sr-only {
|
|
border: 0;
|
|
clip: rect(0, 0, 0, 0);
|
|
height: 1px;
|
|
margin: -1px;
|
|
overflow: hidden;
|
|
padding: 0;
|
|
position: absolute;
|
|
white-space: nowrap;
|
|
width: 1px;
|
|
/* 1 */
|
|
}
|
|
|
|
/*
|
|
* Extends the .sr-only class to allow the element
|
|
* to be focusable when navigated to via the keyboard:
|
|
* https://www.drupal.org/node/897638
|
|
*/
|
|
|
|
.sr-only.focusable:active,
|
|
.sr-only.focusable:focus {
|
|
clip: auto;
|
|
height: auto;
|
|
margin: 0;
|
|
overflow: visible;
|
|
position: static;
|
|
white-space: inherit;
|
|
width: auto;
|
|
}
|
|
|
|
/*
|
|
* Hide visually and from screen readers, but maintain layout
|
|
*/
|
|
|
|
.invisible {
|
|
visibility: hidden;
|
|
}
|
|
|
|
/*
|
|
* Clearfix: contain floats
|
|
*
|
|
* For modern browsers
|
|
* 1. The space content is one way to avoid an Opera bug when the
|
|
* `contenteditable` attribute is included anywhere else in the document.
|
|
* Otherwise it causes space to appear at the top and bottom of elements
|
|
* that receive the `clearfix` class.
|
|
* 2. The use of `table` rather than `block` is only necessary if using
|
|
* `:before` to contain the top-margins of child elements.
|
|
*/
|
|
|
|
.clearfix::before,
|
|
.clearfix::after {
|
|
content: " ";
|
|
display: table;
|
|
}
|
|
|
|
.clearfix::after {
|
|
clear: both;
|
|
}
|
|
|
|
/* ==========================================================================
|
|
EXAMPLE Media Queries for Responsive Design.
|
|
These examples override the primary ('mobile first') styles.
|
|
Modify as content requires.
|
|
========================================================================== */
|
|
|
|
@media only screen and (min-width: 35em) {
|
|
/* Style adjustments for viewports that meet the condition */
|
|
}
|
|
|
|
@media print,
|
|
(-webkit-min-device-pixel-ratio: 1.25),
|
|
(min-resolution: 1.25dppx),
|
|
(min-resolution: 120dpi) {
|
|
/* Style adjustments for high resolution devices */
|
|
}
|
|
|
|
/* ==========================================================================
|
|
Print styles.
|
|
Inlined to avoid the additional HTTP request:
|
|
https://www.phpied.com/delay-loading-your-print-css/
|
|
========================================================================== */
|
|
|
|
@media print {
|
|
*,
|
|
*::before,
|
|
*::after {
|
|
background: #fff !important;
|
|
color: #000 !important;
|
|
/* Black prints faster */
|
|
box-shadow: none !important;
|
|
text-shadow: none !important;
|
|
}
|
|
|
|
a,
|
|
a:visited {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
a[href]::after {
|
|
content: " (" attr(href) ")";
|
|
}
|
|
|
|
abbr[title]::after {
|
|
content: " (" attr(title) ")";
|
|
}
|
|
|
|
/*
|
|
* Don't show links that are fragment identifiers,
|
|
* or use the `javascript:` pseudo protocol
|
|
*/
|
|
a[href^="#"]::after,
|
|
a[href^="javascript:"]::after {
|
|
content: "";
|
|
}
|
|
|
|
pre {
|
|
white-space: pre-wrap !important;
|
|
}
|
|
|
|
pre,
|
|
blockquote {
|
|
border: 1px solid #999;
|
|
page-break-inside: avoid;
|
|
}
|
|
|
|
/*
|
|
* Printing Tables:
|
|
* https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
|
|
*/
|
|
thead {
|
|
display: table-header-group;
|
|
}
|
|
|
|
tr,
|
|
img {
|
|
page-break-inside: avoid;
|
|
}
|
|
|
|
p,
|
|
h2,
|
|
h3 {
|
|
orphans: 3;
|
|
widows: 3;
|
|
}
|
|
|
|
h2,
|
|
h3 {
|
|
page-break-after: avoid;
|
|
}
|
|
}
|
|
|