@font-face {
	font-family: 'Druk Wide Web';
	src: url('fonts/DrukWide-Medium-Web.woff2') format('woff2'),
	     url('fonts/DrukWide-Medium-Web.woff') format('woff');
	font-weight:  500;
	font-style:   normal;
	font-stretch: normal;
	font-display: swap;
}

@font-face {
	font-family: "Ortica Light";
	src: url("fonts/Ortica-Light.woff2") format("woff2"),
	     url("fonts/Ortica-Light.woff") format("woff");
	font-weight:  700;
	font-style:   normal;
	font-stretch: normal;
	font-display: swap;	
}

/*VARIABLES START*/
:root {
	--primary-color: #FFFFFF;
	--default-font: "Ortica Light";
	--secondary-font: 'Druk Wide Web';
	--font-size: 18px;
	--primary-font-color: black;
	--secondary-font-color: #0000F0;
	--bg-color: #E4E4E4;
	--bg-color-opposite: #FFFFFF;
	--bg-color-transparent: rgba(188, 228, 231, 0.95);
	--highlight-color: black;
	--line-height: 1;
	--content-height: calc(100% - 94px);
}
/*VARIABLES END*/



/*DEFAULTS START*/
html {
    font-family: var(--default-font);
	font-size: var(--font-size);
	letter-spacing: var(--letter-spacing);
	background-color: var(--bg-color);
	color: var(--primary-font-color);
	scroll-behavior: smooth;
	max-height: 100vh;
}

body {
	line-height: var(--line-height);
	height: 100vh;
}

*:focus {
	outline: none;
	border-radius: 2px;
}

::selection {
	color: white;
	background: var(--highlight-color);
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Druk Wide Web';
}

h1 {
	margin-bottom: 24px;
	line-height: 1.2;
	letter-spacing: 1px;
}

h2 {
	margin-bottom: 16px;
	line-height: 1.2;
	letter-spacing: 1px;
}

a {
	font-weight: 700;
	color: var(--primary-font-color);
	text-decoration: underline;
	-webkit-text-decoration: underline;
	text-underline-offset: 5px;
	text-decoration-thickness: 2px;	
}

a:hover {
	text-decoration: none;
}

p {
	margin-bottom: 24px;
	line-height: 1.5;
}

hr {
	margin-top: 60px;
	margin-bottom: 60px;
	border: 1px solid #C0C0C0!important;
}

img {
	-webkit-user-select: none;
	user-select: none;
}

strong {
	font-family: 'Druk Wide Web';
	font-weight:  500;
}

.page-content-text ul {
	margin-bottom: 20px;
	padding-inline-start: 20px;
}

.page-content-text ul li {
	line-height: 1.5;
}

.page-content-text ul li:not(:last-child) {
	margin-bottom: 20px;
}
/*DEFAULTS END*/



/*SCROLLBAR START*/
::-webkit-scrollbar {
	width: 8px;
}

::-webkit-scrollbar-track {
	background: rgba(240,242,248,.66);
}

::-webkit-scrollbar-thumb {
  background: #606060;
}

::-webkit-scrollbar-thumb:hover {
	background: #808080;
}

.no-scroll {
	overflow: hidden;
}
/*SCROLLBAR END*/

.intro-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 40px;
	height: 100vh;
}

.intro-text {
	transition-duration: 200ms;
}

.intro-text:hover {
	transform: scale(1.2);
	transition-duration: 200ms;
}

.intro-text a {
	text-decoration: none;
}

.intro-text a .darjapopolitova-logo {
	height: 160px;
	padding: 0 20px;
}

.intro-text a .almazista-logo {
	height: 100px;
	padding: 0 20px;
}

#intro-rotating-ring {
	width: 200px;
	transition-duration: 200ms;
}

#intro-rotating-ring:hover {
	transform: scale(1.2);
	transition-duration: 200ms;
}

@media only screen and (max-width: 768px) {
	#intro-rotating-ring {
		width: 125px;
	}
	
	.intro-rotating-ring-container {
		bottom: 20px; 
		right: 20px;
	}	
}

@media only screen and (max-width: 420px) {
	.intro-text a img {
		height: 80px;
	}

	#intro-rotating-ring {
		width: 160px;
		transition-duration: 200ms;
	}
}

@media only screen and (max-width: 320px) {
	.intro-text a img {
		height: 60px;
	}

	#intro-rotating-ring {
		width: 120px;
		transition-duration: 200ms;
	}
}

.page-container {
	display: flex;
	flex-direction: row;
	height: 100%;
	max-width: 1920px;
	margin: auto;
}

.sidemenu-container, .main-container {
	display: flex;
}

.sidemenu-container {
	flex: 0 1 400px;
	display: flex;
	flex-direction: column;
	background-color: var(--bg-color);
}

@media only screen and (max-width: 1439px) {
	.sidemenu-container {
		flex: 0 1 340px;
	}	
}

.main-container {
	display: flex;
	flex-direction: column;
	flex:1;
}

.sidemenu-logo-container {
	width: 100%;
	height: auto;
	padding: 40px 40px 20px 40px;
}

.sidemenu-logo-container .darjapopolitova-logo {
	margin-top: -15px;
}

.sidemenu-content-container {
	z-index: 2;
	padding: 0 40px;
}

.sidemenu-subtitle {
	font-size: 50px;
	font-family: "Ortica Light";
}

/*********************************************************************/
/*NAVBAR START*/
/*********************************************************************/
.navbar-container {
	width: 100%;
	padding: 40px 40px 30px 40px;
}

.navbar-section-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	z-index: 9998;
}

.navbar-item a {
	font-size: 24px;
	text-decoration: none;
}

.navbar-submenu {
	min-width: 260px;
	margin-left: -15px;
	z-index: 100;
}

.navbar-submenu ul li a {
	font-family: 'Druk Wide Web'!important;
	font-size: 14px!important;
	font-weight:  500;
	text-decoration: none;
}

.navbar-submenu ul {
	list-style-type: none;
	padding: 0;
	margin: 0; 
}

.navbar-submenu .menu-item {
	margin-top: 10px;
}

.navbar-submenu {
	position: absolute;
	display: none;
	flex-direction: row;
	justify-content: flex-start;
	align-items: flex-start;
	background-color: rgba(228, 228, 228, 0.85);
	padding: 0 15px 15px 15px!important;
	margin-top: 5px;
}

.navbar-submenu-active {
	display: flex;
}

.navbar-submenu > ul > li.menu-item-has-children > a {
    font-family: "Ortica Light"!important;
    font-size: 14px!important;
    text-transform: uppercase;
    font-weight: 300;
    color: black;
    text-decoration: none;
}

.navbar-submenu > ul > li.menu-item-has-children > .sub-menu {
	padding-left: 20px;
}

.navbar-mobile {
	display: block;
	position: fixed;
	top: 40px;
	right: 20px;
	z-index: 9999;
}

.navbar-menu {
	display: none;
	width: 30px;
}

@media only screen and (max-width: 1048px) {
	.navbar-mobile-active {
		display: flex!important;
		justify-content: flex-start;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		padding-top: 220px!important;
		background-color: var(--bg-color);
		overflow-y: auto;
	}	
	
	.navbar-container {
		width: 100%;
		padding: 20px 20px 15px 20px;
	}	
	
	.navbar-section-container {
		display: none;
		flex-direction: column;
		order: 2;
	}

	.navbar-menu {
		display: block;
	}
	
	.navbar-submenu {
		display: flex;
		position: relative;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		background-color: unset;
		text-align: center;
		padding: 0;
		margin: 0;
	}	
	
	.navbar-submenu > ul > li.menu-item-has-children > .sub-menu {
		padding-left: 0;
	}	
		
	.navbar-item {
		text-align: center;
	}
	
	.sidemenu-logo-container {
		z-index: 9999;
	}
	
	.navbar-section {
		padding-bottom: 20px;
		width: 260px;
	}
	
	.navbar-section:not(:last-of-type) {
		border-bottom: 1px solid #C0C0C0;
	}
	
	.navbar-submenu {
		padding-top: 0!important;
		padding-bottom: 0!important;
	}
	
	.navbar-submenu > ul > li {
		margin-top: 20px!important;
	}
	
	.menu-item a:hover .wp-post-image {
		display: none!important;
	}
	
}

.navbar-noclick {

}
/*********************************************************************/
/*NAVBAR END*/
/*********************************************************************/

.navigation-container {
	width: 100%;
	padding: 40px 40px 20px 40px;
}

.navigation-container .navigation-menu ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	list-style-type: none;	
	justify-content: space-between;
	margin: 0;
	padding: 0;
}	

.navigation-container .navigation-menu ul li a {
	font-family: "Ortica Light";
	font-size: 24px;
	font-weight: 300;
	color: black;
	text-decoration: none;
}	

.content-container {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px;
	padding-top: 20px;
	padding-left: 40px;
	padding-right: 40px;
	padding-bottom: 0;
	margin-bottom: 40px;
	height: var(--content-height);
}

.content-about-page {
	grid-template-columns: repeat(2, minmax(0, 1fr))!important;
}

@media only screen and (max-width: 1280px) {
	.content-about-page {
		grid-template-columns: repeat(1, minmax(0, 1fr))!important;
	}
}

.content-text-container {
	grid-column: 1;
	height: 100%;
	overflow: auto;
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
	padding-bottom: 40px;
}

.content-shop-container {
	grid-column: span 3;
}

.content-text-container::-webkit-scrollbar,
.content-shop-container::-webkit-scrollbar { 
    display: none;  /* Safari and Chrome */
}

.content-images-container {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	grid-column: span 2;
	height: 100%;
	overflow: auto;
	-ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
	margin-right: -70px;
	gap: 40px;
	padding-bottom: 70px;
}	

.content-images-container figure {
	margin-bottom: 40px;
}

.content-images-container figure figcaption {
	font-size: 16px;
	margin-top: 12px;
	letter-spacing: 0.8px;
}

.content-images-container::-webkit-scrollbar { 
    display: none;  /* Safari and Chrome */
}	

@media only screen and (max-width: 1280px) {
	body {
		height: 100%;
	}	
	
	.content-container {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	
	.content-text-container {
		grid-column: unset;
		height: unset;
		overflow: unset;
	}
	
	.content-images-container {
		grid-column: unset;
		height: unset;
		overflow: unset;
	}	
}

@media only screen and (max-width: 768px) {
	.page-container {
		display: flex;
		flex-direction: column;
	}

	.sidemenu-container {
		flex: 1;
	}
	
	.sidemenu-logo-container {
		max-width: 100%;
		background-color: var(--bg-color);
	}	
	
	.sidemenu-logo-container a img {
		max-width: 260px;
	}
}

.content-container-shop {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 40px;
	padding-top: 0;
	padding-left: 40px;
	padding-right: 40px;
	padding-bottom: 0;
	height: var(--content-height);
	grid-column: span 3;
}

.content-container-shop a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-decoration: none;
}

.content-container-shop a div {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0s, opacity 0.2s linear;
}

.content-container-shop a:hover div {
	display: flex;
	visibility: visible;
	opacity: 1;
}

.content-container-shop a div h2 {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px;
    text-align: center;
}

.content-container-shop a div p {
    font-size: 18px;
    font-weight: 300;
}

@media only screen and (max-width: 1440px) {
	.content-container-shop {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 40px;	
		height: var(--content-height);
	}
}

@media only screen and (max-width: 1048px) {
	.content-container-shop {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 40px;	
		height: var(--content-height);
	}
}

@media only screen and (max-width: 960px) {
	.content-container-shop {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 40px;	
		height: var(--content-height);
	}
	
	.content-container-shop a div {
		visibility: visible;
		opacity: 1;
	}
}

.content-container-portfolio {
	padding-top: 0;
	padding-left: 40px;
	padding-right: 40px;
	padding-bottom: 0;
	height: var(--content-height);
}

.content-portfolio-images-container {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: auto 1fr;
	gap: 40px;	
	height: 100%;
	overflow: auto;
	-ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
}
	
.content-portfolio-images-container::-webkit-scrollbar {
	display: none;
}	

#menu-item-31 {
	position: relative;
}

#menu-item-31::before {
    background-image: url('img/ctahand.png');
    position: absolute;
    background-size: 140px 124px;
    width: 140px;
    height: 124px;
    display: inline-block;
    content: "";
    right: 33px;
    top: 7px;
    transform: rotate(-15deg);
}


.menu-item a .wp-post-image {
	display: none;
	visibility: hidden;
	opacity: 0;
}

.menu-item a:hover .wp-post-image {
    display: block;
    visibility: visible;
	transition: opacity 200ms;
	opacity: 1;	
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.content-container-shop a img {
	width: 100%;
	height: auto;
}

.landing-random {
    display: block;
    visibility: visible;
    opacity: 1;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	transition-duration: 200ms;
	transition: opacity 200ms;
	opacity: 1;	
}

.landing-random:hover {
	transform: translate(-50%, -50%) scale(1.05);
	transition-duration: 200ms;
}

.landing-random:focus {
    outline: unset;
}

.landing-random.hidden {
  opacity: 0;
}

.landing-hover {
    display: none;
    visibility: visible;
    opacity: 1;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	transition-duration: 200ms;
	transition: opacity 200ms;
	opacity: 1;	
}

.landing-hover img {
	max-height: calc(100vh - 190px);
	max-width: 600px;
	width: auto;
	height: auto;
}

.landing-hover:hover {
	transform: translate(-50%, -50%) scale(1.05);
	transition-duration: 200ms;
}

.landing-hover:focus {
    outline: unset;
}

.landing-hover.hidden {
  opacity: 0;
}

.swiper-button-next, .swiper-button-prev {
  text-rendering: auto;
}

.swiper-slide {
	padding-right: 70px;
}

.swiper-button-next {
    height: 100%!important;
    width: 70px!important;
    right: 0!important;
    align-items: center!important;
    background: #E4E4E4;
    top: 0!important;
    margin-top: 0!important;	
	color: black!important;
}

.swiper-button-next:focus {
    outline: unset;
}

@media only screen and (max-width: 1920px) {
	.content-images-container {
		margin-right: 0;
	}	
}

.menu-item-thumbnail {
	display: none;
}

.content-collections-page {
	grid-column: span 3;
	padding-bottom: 40px;
}

.content-default-page {
	grid-column: span 2;
	padding-bottom: 40px;
}

.collections-container {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px;
}

.collection-item {
	position: relative;
}

.collection-item img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	width: 100%;
	height: auto;
}

.collection-title {
    transform-origin: 0 0;
    transform: rotate(90deg) scale(-1, -1);
    position: absolute;
    left: 0;
    width: 100%;
    display: none;
	font-weight: 400;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: rgba(228, 228, 228, 0.85);
}

.collection-item img:hover + .collection-title {
	display: flex;
	justify-content: center;
}

@media only screen and (max-width: 1440px) {
	.collection-title {
		font-size: 20px;
	}
}

@media only screen and (max-width: 1048px) {
	.collections-container {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 40px;
	}
}

@media only screen and (max-width: 768px) {
	.collection-title {
		font-size: 20px;
	}
}

.wp-block-embed__wrapper {
	overflow: hidden;
	position: relative;
	max-width: 100%;
	height: auto;
	padding-bottom: 56.25%;
	margin-bottom: 20px;
}

.wp-block-embed-youtube iframe,
.wp-block-embed-youtube object,
.wp-block-embed-youtube embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.wp-block-gallery,
.wp-block-image {
	margin-bottom: 20px;
}

.notification {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: white;
	gap: 40px;
	z-index: 9999;
}

.notification p,
.notification a {
	margin: 0;
	padding: 10px;
	text-decoration: none;
	line-height: 1.5;
}

@media only screen and (max-width: 1048px) {
	.notification {
		display: none;
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: column;
		gap: 0;
		padding: 10px;
	}
	
	.notification p {
		padding: 0 10px;
	}
}

.woocommerce-error, 
.woocommerce-info, 
.woocommerce-message {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    flex-direction: row-reverse;	
    padding: 10px!important;
    margin: 0!important;
    position: relative;
    background-color: white;
    color: black;
    border-top: unset;
    list-style: none outside;
    width: auto;
    word-wrap: break-word;	
    border-top-color: unset;
	line-height: 1.5;
}

.woocommerce-error a,
.woocommerce-error::after,
.woocommerce-error::before,
.woocommerce-info a,
.woocommerce-info::after,
.woocommerce-info::before,
.woocommerce-message a,
.woocommerce-message::after,
.woocommerce-message::before {
	display: none!important;
}

@media only screen and (max-width: 768px) {
	.swiper-slide {
		padding-right: unset!important;
	}
	
	.swiper-button-next {
		display: none!important;
	}
}

.current-navbar-item > .navbar-item {
	text-shadow: 2px 2px 15px gray;
}

.current-navbar-single {
	text-shadow: 2px 2px 15px gray;
}

.wp-block-table {
	margin-bottom: 40px;
}

.wp-block-table td, .wp-block-table th {
	border: none;
}

.wp-block-table em {
	font-style: normal;
	font-size: 18px;
}

.wp-block-table td {
	vertical-align: top;
	padding: 10px;
}

.wp-block-table tr {
	padding-bottom: 10px;
}

.content-product-main {
    grid-column: span 2;
    height: 100%;
    overflow: auto;
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
    padding-bottom: 80px;
}

.content-product-description {
    height: 100%;
    overflow: auto;
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
    padding-bottom: 80px;
}

.content-product-main::-webkit-scrollbar,
.content-product-description::-webkit-scrollbar {
  display: none;
}

.summary.entry-summary {
	position: relative;

}

@media only screen and (max-width: 1048px) {
	.summary.entry-summary {
	
	}
}

.woocommerce-product-details__short-description {
	margin-top: 20px;
}

.product_title.entry-title {
	word-wrap: break-word;
}

.variations tr {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.variations .label {
	text-align: left;
	font-weight: normal;
}

.variations select {
	padding: 5px;
	width: 100px;
}

.quantity {
	display: none;
}

.single_add_to_cart_button {
	font-size: 22px;
	font-weight: 700;
	border: none;
	padding: 0;
	background-color: unset;
	text-decoration: underline;
	text-underline-offset: 5px;
	text-decoration-thickness: 2px;		
	margin-top: 40px;
	cursor: pointer;
}

[class*="dp-filter-product-subcategories-"], .dp-filter-subcategory-indicator, .dp-filter-reset-section {
	display: none;
}

.dp-filter-section {
	display: flex;
	flex-direction: column;
	gap: 20px;
	-webkit-user-select: none;
	user-select: none;
}

.dp-filter-product-categories {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.dp-filter-product-tags {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 10px!important;
}

.dp-filter-product-tags .dp-filter-product-tag[data-active="false"] .js-dp-filter-product-tag-name::before {
    position: absolute;
	top: 1px;
    left: -22px;	
	content: "—";
	font-family: "Ortica Light";	
}

.dp-filter-product-tags .dp-filter-product-tag[data-active="true"] .js-dp-filter-product-tag-name::before {
    position: absolute;
    left: -18px;
    content: "×";
    font-family: "Ortica Light";
    font-size: 29px;
    display: flex;
    top: -8px;
    transform: rotate(45deg);
}

.js-dp-filter-subcategory-name {
	display: flex;
	align-items: center;
	position: relative;
}

.dp-filter-subcategory[data-active="false"] .js-dp-filter-subcategory-name::before {
	
}

.dp-filter-subcategory[data-active="true"] .js-dp-filter-subcategory-name::before {
    content: "×";
    position: absolute;
    left: -22px;
    font-family: "Ortica Light";
    font-size: 29px;
    bottom: -2px;
}

.dp-filter-subcategory {
	font-family: 'Druk Wide Web';
	font-size: 16px;
    margin-left: 40px;
}

.js-dp-filter-product-tag-name {
	font-family: 'Druk Wide Web';
	font-size: 16px;	
}

.dp-filter-product-tag-type-title {
	text-transform: capitalize;
}

.dp-filter-product-top-category,
.dp-filter-product-tag-type-title {
	font-family: "Ortica Light";
	font-weight: 700;
}

.js-dp-filter-product-tag {
	position: relative;
	margin-left: 40px;
}

.js-dp-clear-filters {
    color: #F4F4F4;
    background: black;
    border: 0;
    padding: 6px 12px;
    letter-spacing: 0.8px;
}

.dp-filter-group .dp-filter-product-tag-type-title:not(:first-of-type) {
	margin-top: 20px;
}