/* Layout */
html
{
    box-sizing: border-box;
    overflow-x: hidden;
}
*,:after,:before {box-sizing: inherit}

body
{
    display: flex;
    flex-direction: column;
    min-height: 100vh;

    margin: 0;
    background: black url(images/newbgsml.jpg) no-repeat fixed center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;

    font-family: "Noto Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    line-height: 1.5;
    font-size: 1rem
}

header
{
    display: flex;
    justify-content: center;
    padding-top: 7.5rem;
}

.header-content {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.header-buttons {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 2rem;
    margin: 2rem;
}
.header-buttons .button-normal {
    width: 15rem;
}

.content {
    margin-left: auto;
    margin-right: auto;
    max-width: 120rem;
}

ul {
    list-style-type: square;
    list-style-position: outside;
    padding-inline-start: 0;
}

li {
    display: list-item;
    text-align: -webkit-match-parent;
    unicode-bidi: isolate;
}

a {
    color: #f0c45c;
    text-decoration: none;
}

a:hover {color: #f0c45c !important;}

h1 {font-size: 2rem}
h2 {font-size: 1.67rem}
h3 {font-size: 1.34rem}
h4 {font-size: 1.11rem}
h5 {font-size: 1rem}
h6 {font-size: 0.89rem}
h1,h2,h3,h4,h5,h6
{
    font-family: "Noto Sans", sans-serif;
    font-weight: 700;
    margin: 0.67rem 0;
}

img {
    vertical-align: middle;
    border-style: none;
}

.image-scale-to-width {
    max-width: 100%;
    height: auto
}

.bar {
    width: 100%;
    overflow: hidden
}

.bar .bar-item {
    padding: 0.5rem 1rem;
    width: auto;
    border: none;
    display: inline;
    outline: 0
}

.anchor-scroll-padding
{
    scroll-margin-top: 7.45rem;
}

.content-block
{

}
.content-block-title {
    text-transform: uppercase;
    padding-bottom: 1rem;

    font-size: 3.78rem !important;
}

.content-block-portfolio-title {
    font-size: 2.5rem !important;
}

.content-block-sub-title {
    font-size: 1.78rem !important;
}

.content-block-text {
    text-align: left;
}

.call-to-action-bar
{
    box-shadow: inset 0 0.34rem 0.66rem 0 #0007;
}

/* Responsive width tags */
.col{width:100%}

/* Small - sub 600px wide */
.col.s1{width:8.33333%}
.col.s2{width:16.66666%}
.col.s3{width:24.99999%}
.col.s4{width:33.33333%}
.col.s5{width:41.66666%}
.col.s6{width:49.99999%}
.col.s7{width:58.33333%}
.col.s8{width:66.66666%}
.col.s9{width:74.99999%}
.col.s10{width:83.33333%}
.col.s11{width:91.66666%}
.col.s12{width:99.99999%}

/* Medium - between 801px and 1081px wide */
@media (min-width:801px)
{
    .col.m1{width:8.33333%}
    .col.m2{width:16.66666%}
    .col.m3{width:24.99999%}
    .col.m4{width:33.33333%}
    .col.m5{width:41.66666%}
    .col.m6{width:49.99999%}
    .col.m7{width:58.33333%}
    .col.m8{width:66.66666%}
    .col.m9{width:74.99999%}
    .col.m10{width:83.33333%}
    .col.m11{width:91.66666%}
    .col.m12{width:99.99999%}
}

/* Large - > 1081px wide */
@media (min-width:1081px)
{
    .col.l1{width:8.33333%}
    .col.l2{width:16.66666%}
    .col.l3{width:24.99999%}
    .col.l4{width:33.33333%}
    .col.l5{width:41.66666%}
    .col.l6{width:49.99999%}
    .col.l7{width:58.33333%}
    .col.l8{width:66.66666%}
    .col.l9{width:74.99999%}
    .col.l10{width:83.33333%}
    .col.l11{width:91.66666%}
    .col.l12{width:99.99999%}

    h1 {font-size: 2.33rem}
    h2 {font-size: 2rem}
    h3 {font-size: 1.67rem}
    h4 {font-size: 1.34rem}
    h5 {font-size: 1.11rem}
    h6 {font-size: 1rem}
}

/* Phone specific changes */
@media (max-width:650px)
{
    .hide-small {display: none !important}
    header {padding-top: 6.5rem !important;}
    .padding-header {padding: 5.5rem 0 5.5rem 0 !important;}
    .header-buttons {gap: 1rem; margin: 1rem;}
    /*.header-content {flex-direction:column; text-align:center;}
    .header-content .col {width:80%}*/
}
@media (min-width:650px)
{
    .hide-large {display: none !important}
    .mobile-home-button {display:none !important;}
}

/* Navbar */
.top {
    position: fixed;
    width: 100%;
    z-index: 10;
    top: 0;
    box-shadow: 0 0.34rem 0.66rem 0 #000;
}

.mobile-home-button {
    align-content: center;
    font-size: 1.78rem;
}

.center {text-align: center !important}

.padding {padding: 0.5rem 1rem !important}
.padding-header
{
    padding: 11.1rem 0 11.1rem 0;
}

.padding-header-small {
    padding: 2.78rem 0 2.78rem 0;
}
.padding-row
{
    padding: 4rem 1rem;
    width: 100%;
}
.padding-sub-row
{
    padding: 1rem 1rem;
    width: 100%;
}
.padding-16
{
    padding-top: 1rem !important;
    padding-bottom: 1rem !important
}

.padding-bottom-16 {padding-bottom: 1rem;}
.padding-bottom-32 {padding-bottom: 2rem;}
.padding-bottom-48 {padding-bottom: 3rem;}

.margin-bottom-8 {margin-bottom: 0.5rem}

/* Buttons */
.button-normal {
    background-color: rgba(0, 0, 0, 0.2);
    -webkit-backdrop-filter: blur(0.2rem);
    backdrop-filter: blur(0.2rem);
    color: #eff6ee !important;
    border: solid #eff6ee;
    cursor: pointer;
    border-radius: 1rem;
    padding: 0.75rem 1.25rem;
    vertical-align: middle;
    display: inline-block;
    white-space: nowrap;
    font-size: 1rem;
    margin-top: 1rem;
}
.button-normal:hover {
    color: #000 !important;
    background-color: #eff6ee !important;
}
.button-normal a {
    text-decoration: none !important;
    font-size: 1.11rem;
}

.button-tight {
    background-color: rgba(0, 0, 0, 0.2);
    -webkit-backdrop-filter: blur(0.2rem);
    backdrop-filter: blur(0.2rem);
    color: #eff6ee !important;
    border: solid #eff6ee;
    cursor: pointer;
    border-radius: 1rem;
    padding: 0.5rem 0.75rem;
    text-align: center;
}
.button-tight:hover {
    color: #000 !important;
    background-color: #eff6ee !important;
}
.button-tight a {
    text-decoration: none !important;
}

.button-menu {
    color: #eff6ee !important;
    background-color: inherit !important;
    cursor: pointer;
    vertical-align: middle;
    display: inline-block;
    text-align: center;
    white-space: nowrap;
    text-decoration: none !important;
    font-size: 1.11rem;
    transition: box-shadow 0.25s;
}
.button-menu:hover {
    color: #eff6ee !important;
    box-shadow: inset 0 -0.25rem #f0c45c !important;
}
.button-menu a {
    text-decoration: none !important
}

.social-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 2.67rem;

}
.social-buttons a {
    color: #eff6ee;
    min-width: 4.45rem;
    min-height: 4.45rem;
}
.social-buttons a:hover {
    color: #f0c45c !important;
}
.social-buttons i {
    vertical-align: middle;
}

/* Showcase */
.showcase
{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    height: 33.34rem;
    width: 100%;
}

.showcase-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding-bottom: 1rem;
    justify-content: center;
}

.media-showcase-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding-bottom: 1rem;
    justify-content: center;
}
.media-showcase-grid .showcase-card { max-width: 34rem; }

.showcase-card {
    flex: 0 0 calc(100% / 4 - 1rem);
    min-width: 22rem;

    margin: 0.5rem;
    padding: 1rem;
    border-radius: 0.66rem;
    text-align: left;
    background-color: rgba(0, 0, 0, 0.6);

    display: flex;
    flex-direction: column;
}
.showcase-card .dev-name {
    text-align: center;
    margin-bottom: 0.5rem;
}
.showcase-card .subcontractor-line {
    text-align: center;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    font-style: italic;
    font-size: 0.8rem;
    color: #bdc4bc;
    min-height: 1.2rem;
}
.showcase-card .dev-role {
    text-align: center;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}
.showcase-card .dev-date {
    text-align: center;
    font-size: 1rem;
    margin-top: 0.5rem;
}
.showcase-card .dev-event {
    text-align: center;
    font-size: 1rem;
}

.showcase-card-media {
    width: 100%;
    aspect-ratio: 2.14;
    object-fit: cover;
    border-radius: 0.33rem 0.33rem 0 0;
}

.showcase-card-text {
    flex: 1;
}

.showcase-card-footer {
}

.showcase-card-hr {
    border: 0;
    height: 1px;
    background: linear-gradient(to right, transparent, #ccc, transparent);
    margin: 1rem 0;
}

.showcase-grid-footer {
    padding-bottom: 1rem;
}
.showcase-grid-footer .button-normal {
    background-color: #f0c45c;
    color: #000 !important;
    border: solid #000;
    min-width: 17.78rem;
}
.showcase-grid-footer .button-normal:not(:hover) {
    animation: showcase-glow 2s ease-in-out infinite alternate;
}

@keyframes showcase-glow {
    50% {
        box-shadow: 0 0 0.66rem hsl(42, 83%, 65%);
    }
}

.showcase-readmore {
    text-align: right !important;
}

/* Forms */
form
{
    display: flex;
    flex-direction: column;
}
.form-row
{
    padding-bottom: 1rem;
}
label
{
    padding-bottom: 0.5rem;
}
input,textarea,label
{
    font-family: "Noto Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 1rem;
    width: 100%;
}

/* Sections */
.section-titlebar {
    display: flex;
    flex-direction: row;
    color: #ffffff !important;
    background-color: #000000 !important;
}
.section-titlebar a {
    text-decoration: none !important;
    color: #ffffff !important;
}
.section-titlebar h1 {
    font-size: 2.67rem !important;
    display: inherit;
    padding-right: 0.5rem;
}
.section-titlebar h2 {
    font-size: 1rem !important;
    display: inherit;
}
.section-titlebar .titlebar-left {
    display: flex;
    flex-direction: row;
    align-items: baseline;
}
.section-titlebar .titlebar-left h1 {margin: 0;}
.section-titlebar .titlebar-left h2 {margin: 0;}
.section-titlebar .social-buttons {
    font-size: 2rem;
}
.section-titlebar .social-buttons a {
    min-width: 3.33rem;
    min-height: 3.33rem;
}
@media (max-width: 800px) {
    .social-buttons {display: none;}
    .titlebar-left {
        flex-direction: column;
    }
}

.tagline {color: #f0c45c !important;}

.section-menubar {
    color: #eff6ee !important;
    background-color: rgba(0, 0, 0, 0.2) !important;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
}

.section-cta {color: #eff6ee !important; background-color: #d08a27 !important}

.section-header { color: #ffffff !important; background-color: rgba(0, 0, 0, 0) !important;}

.section-about {
    color: #eff6ee !important;
    background-color: #080a0c !important;
    padding: 4rem 0 4rem 0;
}

.about-content {
    display: flex;
    flex-direction: row;
    gap: 4rem;
    align-items: center;
    justify-content: center;
}
@media (max-width: 1400px) {
    .about-content {flex-direction: column;}
}

.about-photo {
    border-radius: 13.89rem;
    width: 13.89rem;
    height: 13.89rem;
}

.section-subpage-header {
    color: #ffffff !important;
    background-color: rgba(0, 0, 0, 0.2) !important;
    flex-grow: 1;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
}

.section-showcase {
    color: #eff6ee !important; background-color: rgba(0, 0, 0, 0.5) !important;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
    padding: 4rem 0 4rem 0;
}

.section-contact {
    color: #ffffff !important;
    background-color: rgb(8, 10, 12) !important;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
}

.section-footer {color: #fff !important; background-color: #000 !important}

.section-portfolio-professional { color: #eff6ee !important; background-color: #080a0c !important }

.section-portfolio-professional-tools {
    color: #eff6ee !important;
    background-color: rgba(0, 0, 0, 0.5) !important;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
}

.section-portfolio-personal { color: #eff6ee !important; background-color: #080a0c !important }

.section-portfolio-unreleased {
    color: #eff6ee !important;
    background-color: rgba(0, 0, 0, 0.5) !important;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
}

.section-media {
    padding-top: 1rem;
    color: #eff6ee !important;
    background-color: rgba(0, 0, 0, 0.5) !important;
    -webkit-backdrop-filter: blur(0.66rem);
    backdrop-filter: blur(0.66rem);
}

/* Google Fonts */
.bebas-neue-regular {
  font-family: "Bebas Neue", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.noto-sans-400 {
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
.noto-sans-700 {
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
.noto-sans-symbols-400 {
  font-family: "Noto Sans Symbols", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

/* Unity Player */
.unity-player {
    max-height: calc(100vh - 250px);
    aspect-ratio: 16/9.1;
    border: 0;
    overflow: hidden;
}

.blog-media {
    padding-top: 1.5rem;
}
.blog-media video { width: 80%; }
.blog-media img { width: 80%; }
.blog-media p { font-style: italic; }