:root {
    /* Main Colors */
    --gray: #9e8f8b;
    --smoke-black: #210f07;
    --darker-smoke-black: #140e0b;
    --dark-brown: #2d211e;
    --smoke-brown: #44302c;
    --lighter-smoke-brown: #5a4541;
    --pale-cream-orange: #d6b7a7;
    --cream-orange: #ffa585;
    --light-orange: #f96e47;
    --oho-orange: #ff4926;
    --oho-orange-dark: #a5291c;
    --smoke-gray: #968783;
    --light-gray: #ede8e6;
    --pale-orangy-gray: #ead7ca;

    --round-corners: 8px;
    --rounder-corners: 10px;

    /* VIDEO PLAYER ON LIGHT BOX THEME COLOR */
    --plyr-color-main: #ff4926 !important;

    /* MODIFY THE NAVIGATION SIDE BAR'S WIDTH HERE */
    --nav-bar-width: 8px;
}

/* FONTS */
/* Gotham */
@font-face {font-family: 'Gotham Book';src: url('../fonts/Gotham/gotham-book-webfont.woff') format('woff'), url('../fonts/Gotham/gotham-book-webfont.ttf') format('truetype'), url('../fonts/Gotham/gotham-book-webfont.svg#gothambook') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'Gotham Black';src: url('../fonts/Gotham/gotham-black-webfont.woff') format('woff'), url('../fonts/Gotham/gotham-black-webfont.ttf') format('truetype'), url('../fonts/Gotham/gotham-black-webfont.svg#gothamblack') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'Gotham Italic';src: url('../fonts/Gotham/gotham-blackitalic-webfont.woff') format('woff'), url('../fonts/Gotham/gotham-blackitalic-webfont.ttf') format('truetype'), url('../fonts/Gotham/gotham-blackitalic-webfont.svg#gothamitalic') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'Gotham Bold';src: url('../fonts/Gotham/Gotham-Bold.otf');src: url('../fonts/Gotham/gotham-bold-webfont.woff') format('woff'), url('../fonts/Gotham/gotham-bold-webfont.ttf') format('truetype'), url('../fonts/Gotham/gotham-bold-webfont.svg#gothambold') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'Gotham Light';src: url('../fonts/Gotham/gotham-light-webfont.woff') format('woff'), url('../fonts/Gotham/gotham-light-webfont.ttf') format('truetype'), url('../fonts/Gotham/gotham-light-webfont.svg#gothamlight') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'Gotham Medium';src: url('../fonts/Gotham/gotham-medium-webfont.woff') format('woff'), url('../fonts/Gotham/gotham-medium-webfont.ttf') format('truetype'), url('../fonts/Gotham/gotham-medium-webfont.svg#gothammedium') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'amp bold';src: url('../fonts/AMP/arsmaquettepro-bold-webfont.eot');src: url('../fonts/AMP/arsmaquettepro-bold-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/AMP/arsmaquettepro-bold-webfont.woff') format('woff'), url('../fonts/AMP/arsmaquettepro-bold-webfont.ttf') format('truetype'), url('../fonts/AMP/arsmaquettepro-bold-webfont.svg#ars_maquette_probold') format('svg');font-weight: normal;font-style: normal;}
@font-face {font-family: 'amp medium';src: url('../fonts/AMP/arsmaquettepro-medium-webfont.eot');src: url('../fonts/AMP/arsmaquettepro-medium-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/AMP/arsmaquettepro-medium-webfont.woff') format('woff'), url('../fonts/AMP/arsmaquettepro-medium-webfont.ttf') format('truetype'), url('../fonts/AMP/arsmaquettepro-medium-webfont.svg#ars_maquette_promedium') format('svg');font-weight: normal;font-style: normal;}
/* DejaVu Serif */
@font-face {font-family: 'DejaVu Serif';src: url('../fonts/Dejavu/DejaVuSerif-Italic.woff') format('woff'), url('../fonts/Dejavu/DejaVuSerif-Italic.ttf') format('truetype'), url('../fonts/Dejavu/DejaVuSerif-Italic.svg#DejaVuSerif-Italic') format('svg');font-weight: normal;font-style: italic;font-display: swap;}
@font-face {font-family: 'DejaVu Serif';src: url('../fonts/Dejavu/DejaVuSerif.woff') format('woff'), url('../fonts/Dejavu/DejaVuSerif.ttf') format('truetype'), url('../fonts/Dejavu/DejaVuSerif.svg#DejaVuSerif') format('svg');font-weight: normal;font-style: normal;font-display: swap;}

/* Box Sizing Hack */
html { box-sizing: border-box; padding: 0px; margin: 0px; }
*, *:before, *:after { box-sizing: inherit; }

/* Index Body Styling */
body {
    background-color: var(--darker-smoke-black);
    background-image: url('../imgs/assets/index-bg.png');
    background-position: top center;
    background-attachment: fixed;
    background-size: 100%;
    background-repeat: no-repeat;
    padding: 0px;
    margin: 0px;
    color: var(--light-gray);
    font-size: 1em;
    font-family: 'Gotham Book', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-user-select: none;
    -o-user-select: none;
    -moz-user-select: none;
    user-select: none;
    overflow-x: hidden;
}
    body.index{ background-image: none; }

/* Costum Scrollbar styling */
::-webkit-scrollbar { width: var(--nav-bar-width); border: none; outline: none;}
::-webkit-scrollbar-button { display: none;}
::-webkit-scrollbar-track { background-color: transparent; border: none; outline: none;}
::-webkit-scrollbar-thumb { background-color: rgba(150, 135, 131, 0.26); outline: none; }
::-webkit-scrollbar-thumb:hover{ background-color: var(--oho-orange);}

/* General Styles */
h1, h2, h3, h4 { margin: 0px; padding: 0px; display: block; }
p { display: block; padding: 0px; margin: 0px; }
a{ outline: none; border: none; cursor: pointer; color: var(--cream-orange);}
a:hover { color: var(--light-orange); }
a:focus{ color: inherit; }

/* Navigation Buttons */
#nav-btns_cont { 
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0px;
	left: 0px;
	z-index: 99;
	padding: 0px 40px;
	pointer-events: none;
	background: transparent;
	overflow: hidden;
}

.pg-nav-el_box{
	display: flex;
	align-items: center;
    -ms-flex-direction: row;
	flex-direction: row;
	flex-wrap: no-wrap;
	gap: 10px;
    -webkit-transition: transform ease-in-out 0.35s;
    -moz-transition: transform ease-in-out 0.35s;
    -o-transition: transform ease-in-out 0.35s;
	transition: transform ease-in-out 0.35s;
}
	.pg-nav-el_box.left { 
        -webkit-transform: translateX(-200%); 
        -moz-transform: translateX(-200%); 
        -o-transform: translateX(-200%); 
        transform: translateX(-200%);
    }
	.pg-nav-el_box.right {
        -webkit-transform: translateX(200%);
        -moz-transform: translateX(200%);
        -o-transform: translateX(200%);
        transform: translateX(200%);
    }
		.pg-nav-el_box.left.dspl {
            -webkit-transform: translateX(0%);
            -moz-transform: translateX(0%);
            -o-transform: translateX(0%);
            transform: translateX(0%);
        }
		.pg-nav-el_box.right.dspl {
            -webkit-transform: translateX(0%);
            -moz-transform: translateX(0%);
            -o-transform: translateX(0%);
            transform: translateX(0%);
        }

	a.pg-nav_btn {
		display: flex;
		width: 55px;
		height: 55px;
		align-items: center;
		justify-content: center;
		font-family: 'amp medium', sans-serif;
		font-weight: normal;
		font-size: 155%;
		color: rgba(237, 232, 230, 0.65);
		border-radius: 100px;
		background-color: rgba(150, 135, 131, 0.25);
		box-shadow: 0px 0px 15px rgba(20, 14, 11, 0.20);
		text-decoration: none;
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		pointer-events: all !important;
	}
	
	a.pg-nav_btn span { height: fit-content; margin-top: -3px; }
		a.pg-nav_btn:hover {
			color: rgba(45, 33, 30, 1);
			background-color: rgba(237, 232, 230, 0.9);
			box-shadow: 0px 0px 15px rgba(20, 14, 11, 0.35);
		}
	a.pg-nav_btn.disabled{
        pointer-events: none;
        cursor: default;
        color: rgba(237, 232, 230, 0.10);
        background-color: rgba(150, 135, 131, 0.10);
        box-shadow: 0px 0px 0px rgba(20, 14, 11, 0);
    }
	
	.nav_info-cont {
		display: flex;
		max-width: 200px;
        min-width: 100px;
        border: 1px solid #44302c;
        -ms-flex-direction: column;
		flex-direction: column;
		opacity: 0;
		gap: 10px;
		padding: 15px;
		font-size: 85%;
		border-radius: var(--rounder-corners);
		background-color: rgba(20, 14, 11, 0.85);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		pointer-events: none;
		-webkit-transition: opacity ease-out 0.2s;
		-moz-transition: opacity ease-out 0.2s;
		-o-transition: opacity ease-out 0.2s;
		transition: opacity ease-out 0.2s;
	}
		.nav_info-cont p{ color: var(--cream-orange); }
		
		.dsplyd{ opacity: 1 }

/* Top Banner */
#top-banner{
    display: flex;
    flex-direction: column;
    -ms-flex-direction: column;
    align-items: center;
    width: 100%;
    height: auto;
    padding-top: 70px;
    padding-bottom: 60px;
}
    .main-title{
        font-family: 'Gotham Black', sans-serif;
        font-size: 48px;
        font-weight: normal;
        color: var(--pale-orangy-gray);
        text-align: center;
        letter-spacing: 1pt;
        margin-bottom: 16px;
        text-transform: uppercase;
        text-shadow: 0px 0px 20px rgba(249, 110, 71, 0.3);
    }
    .art-type{
        width: 100%;
        max-width: 720px;
        font-family: 'Gotham Medium', sans-serif;
        font-weight: normal;
        font-size: 21px;
        color: var(--cream-orange);
        text-align: center;
    }

/* Gallery Section */
.gallery-section{padding-bottom: 60px; width: 100%; display: flex; align-items: center;}

/* Index only */
.g-wrapper-index{ width: 100%; display: grid; grid-template-columns: repeat(4, 1fr); overflow: hidden; gap: 2px; }
    .g-wrapper-index a{
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
        position: relative;
        aspect-ratio: 1;
    }
    .g-wrapper-index .c-layer {
        width: 100%;
        aspect-ratio: 1;
        position: absolute;
        z-index: 2;
        background-color: rgb(249, 110, 71, 0);
        pointer-events: none;
        border: 1px solid transparent;
        -webkit-transition: background-color ease-out 0.5s, border ease-out 0.5s;
        -moz-transition: background-color ease-out 0.5s, border ease-out 0.5s;
        -o-transition: background-color ease-out 0.5s, border ease-out 0.5s;
        transition: background-color ease-out 0.5s, border ease-out 0.5s;
    }
    .g-wrapper-index a:hover>.c-layer {
        background-color: rgb(249, 110, 71, 0.25);
        border: 1px solid var(--oho-orange-dark);
        -webkit-transition: background-color linear 0s;
        -moz-transition: background-color linear 0s;
        -o-transition: background-color linear 0s;
        transition: background-color linear 0s;
    }
    .g-wrapper-index a img {
        display: block;
        width: 100%;
        position: relative;
        z-index: 1;
    }
/* Index only END */

.g-wrapper{
    width: 780px;
	min-height: 100px;
	position: relative;
    margin: auto;
    display: flex;
	align-items: center;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: hidden;
    gap: 2px;
    border-radius: var(--rounder-corners);
	z-index: 1;
}
/* Loader */
.g-wrapper::before {
	content: '';
	display: block;
	opacity: 1;
	visibility: visible;
    width: 35px;
    height: 35px;
	position: absolute;
	bottom: 30px;
	z-index: -1;
    aspect-ratio: 1;
    border-radius: 100%;
    background: radial-gradient(farthest-side, var(--light-gray) 94%,#0000) top/5px 5px no-repeat, conic-gradient(#0000 25%, var(--light-gray));
    -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
    -moz-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
    -o-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
    mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
    -webkit-animation: l13 0.8s infinite linear;
    -moz-animation: l13 0.8s infinite linear;
    -o-animation: l13 0.8s infinite linear;
    animation: l13 0.8s infinite linear;
	-webkit-transition: opacity ease 0.35s;
	-moz-transition: opacity ease 0.35s;
	-o-transition: opacity ease 0.35s;
	transition: opacity ease 0.35s;
 }
  @-webkit-keyframes l13{ 100%{transform: rotate(1turn)} }
  @-moz-keyframes l13{ 100%{transform: rotate(1turn)} }
  @-o-keyframes l13{ 100%{transform: rotate(1turn)} }
  @keyframes l13{ 100%{transform: rotate(1turn)} }
  
.g-wrapper.loaded::before { opacity: 0; visibility: hidden; }

    .row-wrapper{ display: flex; -ms-flex-direction: row; flex-direction: row; gap: 2px; flex-wrap: nowrap;}

    .g-wrapper .p-cont{
		display: flex;
		opacity: 0;
		height: 0px;
		visibility: hidden;
		background-color: var(--darker-smoke-black);
        overflow: hidden;
        position: relative;
        align-items: center;
        justify-content: center;
		-webkit-transition: opacity 0.35s ease-out, height 0.33s ease-out;
		-moz-transition: opacity 0.35s ease-out, height 0.33s ease-out;
		-o-transition: opacity 0.35s ease-out, height 0.33s ease-out;
		transition: opacity 0.35s ease-out, height 0.33s ease-out;
    }
		.p-cont.fi { height: fit-content; opacity: 1; visibility: visible; }
	
        .p-cont:hover>.hue-layer {
            opacity: 0;
            -webkit-transition: all 0.25s ease-out;
            -moz-transition: all 0.25s ease-out;
            -o-transition: all 0.25s ease-out;
            transition: all 0.25s ease-out;
        }
        .p-cont:hover>a img {
            opacity: 1;
            scale: 1.1;
            -webkit-transition: all 0.25s ease-out;
            -moz-transition: all 0.25s ease-out;
            -o-transition: all 0.25s ease-out;
            transition: all 0.25s ease-out;
        }

        .g-wrapper .hue-layer {
            width: 100%;
            height: 100%;
            background-color: var(--darker-smoke-black);
            mix-blend-mode: hue;
            position: absolute;
            z-index: 2;
            opacity: 0;
            -webkit-transition: all 0.25s ease-out;
            -moz-transition: all 0.25s ease-out;
            -o-transition: all 0.25s ease-out;
            transition: all 0.25s ease-out;
            pointer-events: none;
        }
        .g-wrapper img {
            display: block;
            position: relative;
            scale: 1.01;
            z-index: 1;
            width: 100%;
            opacity: 1;
            -webkit-transition: all 0.25s ease-out;
            -moz-transition: all 0.25s ease-out;
            -o-transition: all 0.25s ease-out;
            transition: all 0.25s ease-out;
        }

        a.gl{ display: flex; }

.logo-cont { width: 100%; height: 50px; background-image: url('../imgs/assets/oho-logo_g.png'); background-position: center; background-repeat: no-repeat; background-size: 50px 50px; opacity: 0.4; margin-bottom: 80px;}

/* ------------------- RESPONSIVE ----------------------------- */
/* Enlarge */
@media (max-width: 1920px) {
    :root {
        --round-corners: calc(8px * 1.5);
        --rounder-corners: calc(10px * 1.5);
        --nav-bar-width: calc(8px * 1.5);
    }
    body { font-size: calc(1em * 1.5); }
    #nav-btns_cont { padding: 0px calc(40px * 1.5); }
    a.pg-nav_btn {
        width: calc(55px * 1.5);
        height: calc(55px * 1.5);
        box-shadow: 0px 0px calc(15px * 1.5) rgba(20, 14, 11, 0.20);
    }
    a.pg-nav_btn span { margin-top: calc(-3px * 1.5); }
    a.pg-nav_btn:hover { box-shadow: 0px 0px calc(15px * 1.5) rgba(20, 14, 11, 0.35); }
    .nav_info-cont {
        max-width: calc(200px * 1.5);
        min-width: calc(100px * 1.5);
        padding: calc(15px * 1.5);
    }
    #top-banner{
        padding-top: calc(70px * 1.5);
        padding-bottom: calc(60px * 1.5);
    }
    .main-title{
        font-size: calc(48px * 1.5);
        margin-bottom: calc(16px * 1.5);
        text-shadow: 0px 0px calc(20px * 1.5) rgba(249, 110, 71, 0.3);
    }
    .art-type{
        max-width: calc(720px * 1.5);
        font-size: calc(21px * 1.5);
    }
    .gallery-section{ padding-bottom: calc(60px * 1.5); }
    .g-wrapper{
        width: calc(780px * 1.5);
        min-height: calc(100px * 1.5);
    }
    .g-wrapper::before {
        width: calc(35px * 1.5);
        height: calc(35px * 1.5);
        bottom: calc(30px * 1.5);
        background: radial-gradient(farthest-side, var(--light-gray) 94%,#0000) top/calc(5px * 1.5) calc(5px * 1.5) no-repeat, conic-gradient(#0000 25%, var(--light-gray));
        -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - calc(5px * 1.5)),#000 0);
        -moz-mask: radial-gradient(farthest-side,#0000 calc(100% - calc(5px * 1.5)),#000 0);
        -o-mask: radial-gradient(farthest-side,#0000 calc(100% - calc(5px * 1.5)),#000 0);
        mask: radial-gradient(farthest-side,#0000 calc(100% - calc(5px * 1.5)),#000 0);
    }
    .logo-cont {
        height: calc(50px * 1.5);
        background-size: calc(50px * 1.5) calc(50px * 1.5);
        margin-bottom: calc(80px * 1.5);
    }
}

/* Normalize */
@media (max-width: 1440px) {
    :root {
        --round-corners: 8px;
        --rounder-corners: 10px;
        --nav-bar-width: 8px;
    }
    body { font-size: 1em; }
    #nav-btns_cont { padding: 0px 40px; }
    a.pg-nav_btn {
        width: 55px;
        height: 55px;
        box-shadow: 0px 0px 15px rgba(20, 14, 11, 0.20);
    }
    a.pg-nav_btn span { margin-top: -3px; }
    a.pg-nav_btn:hover {
        box-shadow: 0px 0px 15px rgba(20, 14, 11, 0.35);
    }
    .nav_info-cont {
        max-width: 200px;
        min-width: 100px;
        padding: 15px;
    }
    #top-banner{
        padding-top: 70px;
        padding-bottom: 60px;
    }
    .main-title{
        font-size: 48px;
        margin-bottom: 16px;
        text-shadow: 0px 0px 20px rgba(249, 110, 71, 0.3);
    }
    .art-type{
        max-width: 720px;
        font-size: 21px;
    }
    .gallery-section{
        padding-bottom: 60px;
    }
    .g-wrapper{
        width: 780px;
        min-height: 100px;
    }
    .g-wrapper::before {
        width: 35px;
        height: 35px;
        bottom: 30px;
        background: radial-gradient(farthest-side, var(--light-gray) 94%,#0000) top/5px 5px no-repeat, conic-gradient(#0000 25%, var(--light-gray));
        -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
        -moz-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
        -o-mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
        mask: radial-gradient(farthest-side,#0000 calc(100% - 5px),#000 0);
    }
    .logo-cont {
        height: 50px;
        background-size: 50px 50px;
        margin-bottom: 80px;
    }
}

@media (max-width: 779px) {
    body { padding: 0px 20px; background-size: cover; background-position: center;}
    body.index { padding: 0px; }
	
	#nav-btns_cont { padding: 0px; }
	a.pg-nav_btn { height: 155px; width: 42px; box-shadow: 0px 0px 12px rgba(20, 14, 11, 0.7); }
			a.pg-nav_btn.prev { border-radius: 0px 8px 8px 0px; }
			a.pg-nav_btn.next { border-radius: 8px 0px 0px 8px; }
	
    .g-wrapper{ width: 100%; }
}