/*
Theme Name:   OVO Sound
Theme URI:    https://wordpress.org/themes/twentytwentyfour/
Description:  OVO Sound theme - Twenty Twenty-four child
Author:       Lance Encarnado
Author URI:   https://tacklebox.company/
Template:     twentytwentyfour
Version:      1.0.0
Text Domain:  ovo-sound
*/

@font-face {
	font-family: 'Founders Grotesk';
	src: url('fonts/FoundersGroteskWeb-Regular_0.woff2') format('woff2'),
		 url('fonts/FoundersGroteskWeb-Regular_0.woff') format('woff'),
		 url('fonts/FoundersGroteskWeb-Regular_0.ttf') format('truetype');
	font-weight: normal;
}

body, a, div, p, section, article, footer, h2, h1 ,span {
    font-family: 'Founders Grotesk', Helvetica, sans-serif;
    /*color: #e1e1e1;*/
}

/* HEADER STYLING */

header {
	position: absolute;
	z-index: 10;
}

header .wp-block-navigation-item__content {
	font-size: 1.45vw;
	line-height: 1.5;
}

header .wp-block-navigation-item__content:hover {
	text-decoration: none;
	color: #a1193c !important;
}

header .wp-block-navigation-item__content[aria-current="page"] {
	color: #a1193c !important;
}

header .wp-block-navigation .wp-block-page-list {
	gap: unset;
}

.ovosound-toplogo {
	width: 5.14vw;
}

@media only screen and (max-width: 1024px) {
	.ovosound-toplogo {
		width: 10vw;
	}
}

/* don't show site logo on homepage */
header .custom-logo-link[aria-current="page"] {
	visibility: hidden;
}

.ovo-nav-container {
	position: relative;
	top: 14vw;
}

/* MOBILE MENU STYLING */
header .wp-block-navigation__responsive-container-open, header .wp-block-navigation__responsive-container-close {
	position: fixed;
    top: 5vw;
    right: 3vw;
}

header .wp-block-navigation__responsive-container-open {
	width: 50px;
	height: 50px;
	background-image: url("https://web-archive.nli.org.il/National_Library/oe_/https://cdn-s.smehost.net/sites/fdd3454b75be409eab9f11ee02580323/wp-content/uploads/2024/05/menuopenicon2.png");
	background-size: cover;
}

header .wp-block-navigation__responsive-container-open svg {
	display: none;
}

header .wp-block-navigation__responsive-container-close svg {
	width: 50px;
	height: 50px;
}

header .is-menu-open .wp-block-navigation-item__content {
	font-size: 9vw;
	line-height: 1.3;
	font-weight: 800;
}


header .is-menu-open .wp-block-navigation__container .shopmenuitem {
	align-items: flex-start !important;
}

header .is-menu-open .wp-block-navigation__container .shopmenuitem #shop-submenu {
	font-size: 5.1vw;
	text-align: start;
}

header .is-menu-open .wp-block-navigation__container .shop-submenu-item {
	text-align: start;
}


header .is-menu-open .wp-block-navigation__container {
	align-items: flex-start !important;
	padding-top: 6.5vw;
	padding-left: 10vw;
}

header .wp-block-navigation.items-justified-right .is-menu-open.wp-block-navigation__responsive-container {
    --navigation-layout-justification-setting: flex-start !important;
    --navigation-layout-justify: flex-start !important;
}

/* change mobile menu breakpoint */
@media screen and (max-width: 767px) {
	.wp-block-navigation__responsive-container-open  {
		display: block !important;
	}

	.wp-block-navigation__responsive-container:not(.is-menu-open.has-modal-open) {
		display: none !important;
	}
}

/* mobile menu artist submenu  */
#artist-nav-container {
	display: none;
	padding-top: 0;
}

#artist-nav-backbutton {
	cursor: pointer;
	padding-bottom: 7vw;
	margin-left: -10vw;
}

header .is-menu-open .artist-submenu-listitem .wp-block-navigation-item__content {
	font-size: 8vw;
    line-height: 1.15;
    font-weight: 800;
}


/* GENERAL STYLING */
:where(.wp-site-blocks *:focus) {
	outline-style: none;
}

html {
	scroll-behavior: smooth;
}

/* HOMEPAGE STYLING */
@media (max-width: 767px) {
	.hometoplogo-img {
		max-width: 69.5vw !important;
	}

	.hometoplogo-spacer {
		height: 42vw !important;
	}
}

.abouttext {
	font-size: 1.06vw;
	line-height: 1.15;
	padding-left: 58.5vw;
}

.abouttext-mobile {
	font-size: 3vw;
	line-height: 1.15;
	padding-left: 53.5vw;
}

@media (min-width: 768px) {
	.abouttext-mobile {
		display: none;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.abouttext {
		font-size: 1.367vw;
	}
}

@media (max-width: 767px) {
	.abouttext {
		display: none;
	}

	.ovo-about {
		padding-top: 20vw !important;
	}
}

/* MUSIC AND VIDEO PAGE STYLING */
/* MUSIC/VIDEO CONTAINER STYLING */

.musicvideo-list-container {
	padding-top: 13vw;
	padding-bottom: 10vw;

	min-height: 100vh;
}

.musicvideo-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-column-gap: 2vw;
	grid-row-gap: 2vw;

	max-width: 56.7vw;
	margin: auto;
}

:where(figure) {
	margin: unset;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.musicvideo-list {
		max-width: 74.1vw;
	}
}

@media (max-width: 767px) {
	.musicvideo-list-container {
		padding-top: 15vw;
		padding-bottom: 15vw;
	}

	.musicvideo-list {
		grid-template-columns: repeat(2, 1fr);
		max-width: 83.7vw;
	}
}


/* INDIVIDUAL MUSIC/VIDEO ITEM STYLING */

.musicvideo_item_container {
	width: 100%;
	display: none; /* for fade in effect */
}

.musicvideo_item_container figure {
	width: 100%;
	position: relative;
}

.musicvideo_item_art {
	width: 100%;
	aspect-ratio: 1 / 1;
    object-fit: cover;
	display: block;
	transition: filter 0.3s;
}

.musicvideo_item_container:hover .musicvideo_item_art {
	filter: brightness(0.25);
}

.musicvideo_item_name {
	width: 92%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	font-size: 0.878vw;
	letter-spacing: 0.074vw;
	/*padding: 0 0.732vw;*/

	opacity: 0;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.musicvideo_item_name {
		font-size: 1.9vw;
		letter-spacing: 1px;
	}
}

@media only screen and (max-width: 767px) {
	.musicvideo_item_name {
		font-size: 3vw;
		letter-spacing: 1px;
	}
}

.musicvideo_item_container:hover .musicvideo_item_name {
	opacity: 1;
}

/* FOOTER STYLING */
.ovo-footer-left-text, .ovo-footer-right-text {
	font-size: 2.45vw;
	white-space: nowrap;
	line-height: 1;
}

.ovo-footer-middle-text {
	font-size: 1.15vw;
	letter-spacing: 0.07vw;
}

.ovo-footer-middle-text a {
	text-decoration: none;
}

.ovo-footer-middle-text a:hover {
	opacity: 0.5;
}

@media only screen and (max-width: 767px) {
	.ovo-footer-middle-text {
		font-size: 1.8vw;
	}
}
