/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
html.lenis {
  scroll-behavior: auto !important;
}
.data-lenis-prevent a {
	pointer-events: auto !important;
}
#video-section video {
    position: fixed;
    width: 100% !important;
    height: 100vh !important;
}
.icon-adaptive {
	filter: brightness(0) invert(1);   /* pehlay SVG ko white banayen */
	mix-blend-mode: exclusion !important;   /* phir blend apply karein */
}
#site-loader{
	position:fixed; 
	inset:0;
	z-index:99999;
	background:#fdfdfd;
	display:flex; 
	flex-direction:column; 
	align-items:center; 
	justify-content:center;
	will-change: transform;
	padding: 0 15px;
}
.loader-track {
    position: relative;
    width: 100%;
    max-width: 100%;
    height: 5px;
    background: rgba(0, 0, 0, .15);
}
.loader-fill{
	position:absolute; 
	left:0; 
	top:0; 
	height:100%; 
	width:0%;
	background:#333;
}
.loader-icon{
	position:absolute; 
	top:50%; 
	left:0;
	width:36px; 
	height:auto;
	transform:translate(-50%,-96%);
	pointer-events:none;
}
.loader-percent{
	margin-top:18px;
	font-family:sans-serif; 
	font-size:14px; 
	letter-spacing:1px;
	color:#000;
}
.blend-title .elementor-heading-title, .main-menu-icon, .section-border {
	position: relative;
	z-index: 2;
	mix-blend-mode: exclusion !important;
}
.scroll-down-arrow .elementor-icon-list-icon {
	transform: translateX(-50%);
	z-index: 10;
	animation: arrowBounce 1.4s ease-in-out infinite;
}
@keyframes arrowBounce{
	0%, 100% { transform: translateX(-50%) translateY(0); }
	50%      { transform: translateX(-50%) translateY(10px); }
}
.other-sections::before{
	inset: 0;
	background-color: #000000 !important;
	opacity: var(--before-opacity) !important;
	pointer-events: none;
}
.other-sections .elementor-background-video-container {
	z-index: -1;
}
.work-title-section {
	position: relative;
}
.split-title .elementor-heading-title {
	visibility: hidden;
}
.split-title .elementor-heading-title.split-ready{
	visibility: visible;
}
/* Elementor editor mein hamesha visible rakhein, JS na chalne k bawajood */
body.elementor-editor-active .split-title .elementor-heading-title {
  visibility: visible !important;
}
body:not(.elementor-editor-active) a,
body:not(.elementor-editor-active) button,
body:not(.elementor-editor-active) {
	cursor: none;
}
.custom-cursor{
	position: fixed;
	top: 0;
	left: 0;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background-color: #ffffff;
	mix-blend-mode: exclusion;
	pointer-events: none;
	z-index: 9999999999;
	transform: translate(-50%, -50%);
	will-change: transform;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: width 0.3s ease, height 0.3s ease, background-color 0.3s ease, border-radius 0.3s ease;
}
.custom-cursor.hover-view{
	width: 50px;
	height: 50px;
	background-color: transparent;   /* white fill hata di */
	border-radius: 0;                 /* circle ki jagah square */
	mix-blend-mode: normal !important;
	position: relative;
}
.cursor-text{
	opacity: 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.05em;
	color: #ffffff;
	transition: opacity 0.3s ease;
}
.custom-cursor.hover-view .cursor-text{
	opacity: 1;
}
.cursor-image{
	opacity: 0;
	max-width: 50px;
	max-height: 50px;
	object-fit: contain;
	transition: opacity 0.3s ease;
}
.custom-cursor.hover-view .cursor-image{
	opacity: 1;
}
/* Corner brackets khud cursor k andar */
.cursor-corner{
	position: absolute;
	width: 14px;
	height: 14px;
	border: 1.5px solid #ffffff;
	opacity: 0;
	transition: opacity 0.3s ease;
}
.custom-cursor.hover-view .cursor-corner{
	opacity: 1;
}
.cursor-corner.top-left{ top: 0; left: 0; border-right: none; border-bottom: none; }
.cursor-corner.top-right{ top: 0; right: 0; border-left: none; border-bottom: none; }
.cursor-corner.bottom-left{ bottom: 0; left: 0; border-right: none; border-top: none; }
.cursor-corner.bottom-right{ bottom: 0; right: 0; border-left: none; border-top: none; }
.elementor-button .elementor-button-icon {
	display: inline-flex;
	transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	transform-origin: center;
	will-change: transform;
}
.elementor-button:hover .elementor-button-icon {
	transform: rotate(-50deg);
}
.list-bg li {
	border-radius: 30px;
	padding: 3px 8px !important;
	background: #ffffff1a;
}
.portfolio-box{
	position: relative;
	overflow: visible;
}
.corner-bracket{
	position: absolute;
	width: 40px;
	height: 40px;
	border: 1.5px solid #ffffff;
	opacity: 0;
	z-index: 10;
	transition: opacity 0.4s ease, transform 0.4s ease;
	pointer-events: none;
	will-change: transform, opacity;
}
.corner-bracket.top-left{
	top: -16px; left: -16px;
	border-right: none; border-bottom: none;
	transform: translate(10px, 10px);   /* andar se start */
}
.corner-bracket.top-right{
	top: -16px; right: -16px;
	border-left: none; border-bottom: none;
	transform: translate(-10px, 10px);
}
.corner-bracket.bottom-left{
	bottom: -16px; left: -16px;
	border-right: none; border-top: none;
	transform: translate(10px, -10px);
}
.corner-bracket.bottom-right{
	bottom: -16px; right: -16px;
	border-left: none; border-top: none;
	transform: translate(-10px, -10px);
}
.portfolio-box:hover .corner-bracket{
	opacity: 1;
	transform: translate(0, 0);   /* apni asal (bahar) position tak animate */
}
.scramble-char{
	display: inline-block;
}
.portfolio-title {
	position: relative;
	overflow: hidden;
}
.title-sweep-mask{
	position: absolute;
	top: 0;
	left: 0;
	width: 60%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	transform: translateX(-100%);   /* ye CSS mein zaroor honi chahiye, sirf JS par depend na karein */
	pointer-events: none;
	z-index: 5;
	opacity: 1;
}
.underline:hover a {
	text-decoration: underline;
}
.scramble-char{
	display: inline-block;
	white-space: pre;   /* space preserve karay */
}
.aperture-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 10px;
}
.aperture-button {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	color: #000000;
	text-decoration: none;
	overflow: visible;
}
.aperture-svg {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
/* Normal shutter state */
.aperture-normal-state {
	opacity: 1;
	transform-origin: 120px 120px;
	transform: rotate(0deg) scale(1);
	transition:
		opacity 0.35s ease,
		transform 0.75s cubic-bezier(0.22, 1, 0.36, 1);
}
/* Screenshot-style hover state */
.aperture-hover-state {
	opacity: 0;
	transform-origin: 120px 120px;
	transform: rotate(-18deg) scale(1.08);
	transition:
		opacity 1s ease,
		transform 3s cubic-bezier(0.22, 1, 0.36, 1);
}
/* Text */
.aperture-button-text {
	position: relative;
	z-index: 5;
	font-family: Arial, sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1;
	white-space: nowrap;
	color: #000000;
	transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
/* Hover animation */
.aperture-button:hover .aperture-normal-state {
	opacity: 0;
	transform: rotate(18deg) scale(0.94);
}
.aperture-button:hover .aperture-hover-state {
	opacity: 1;
	transform: rotate(0deg) scale(1);
}
.aperture-button:hover .aperture-button-text {
	transform: scale(1);
}
/* Keyboard focus */
.aperture-button:focus-visible {
	outline: 2px solid #000000;
	outline-offset: 5px;
}
.corner-brackets {
	width: 40px;
	height: 40px;
	border: 1.5px solid #000;
}
.corner-brackets.top-left{
	top: -16px; left: -16px;
	border-right: none; border-bottom: none;
}
.corner-brackets.top-right{
	top: -16px; right: -16px;
	border-left: none; border-bottom: none;
}
.corner-brackets.bottom-left{
	bottom: -16px; left: -16px;
	border-right: none; border-top: none;
}
.corner-brackets.bottom-right{
	bottom: -16px; right: -16px;
	border-left: none; border-top: none;
}
.home-logo {
	display: inline-block;
	transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
	transform-origin: center;
}
.home-logo:hover {
	transform: rotate(180deg);
}
.white-image img {
    filter: brightness(0) invert(1) !important;
    transition: filter 0.3s ease;
}
.dialog-close-button.dialog-lightbox-close-button::after {
	content: "CLOSE";
	font-size: 14px;
	color: #FAF5EA;
}
.main-menu-buttons .dialog-close-button {
    display: flex;
    font-size: 12px;
    align-items: center;
    gap: 5px;
}

/* ==================================================
   PAGE AND PARENT
================================================== */

html,
body {
	overflow-x: clip;
}

.vcube-parent,
.vcube-parent > .e-con-inner {
	position: relative !important;
	overflow: visible !important;

	/*
	 * Parent par Elementor Motion Effects aur
	 * CSS transforms disable hone chahiye.
	 */
	transform: none !important;
	will-change: auto !important;
}


/* ==================================================
   MAIN PINNED SECTION
================================================== */

.vcube-section {
	position: relative;

	width: 100% !important;
	height: 100vh !important;
	height: 100svh !important;

	min-height: 100vh !important;
	min-height: 100svh !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: hidden !important;
	isolation: isolate;
	z-index: 1;
	/*
	 * Is section par transform:none !important
	 * bilkul mat lagana. GSAP pin ke liye transform
	 * use kar sakta hai.
	 */
	transition: none !important;
}

.vcube-section > .e-con-inner {
	position: relative !important;

	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	display: grid !important;
	place-items: center !important;

	overflow: hidden !important;
}


/* ==================================================
   BACKGROUND IMAGE CONTAINERS
================================================== */

.cude-image {
	position: absolute !important;
	inset: 0 !important;

	z-index: 0 !important;

	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;

	opacity: 0;
	visibility: hidden;

	transform-origin: 50% 50% !important;

	pointer-events: none !important;

	overflow: hidden !important;

	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;

	will-change: transform, opacity;

	/*
	 * Image zoom aur opacity GSAP control karega.
	 */
	transition: none !important;
}

/*
 * JavaScript load hone se pehle fallback ke taur
 * par first image visible rahegi.
 */
.cude-image-1 {
	opacity: 1;
	visibility: visible;
}

.cude-image > .e-con-inner {
	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}

/*
 * Active class sirf identification ke liye hai.
 * Opacity aur scale GSAP control karega.
 */
.cude-image.active {
	pointer-events: none !important;
}


/* ==================================================
   CUBE SLIDER WRAPPER
================================================== */

.vcube-slider {
	--cube-width: 680px;
	--cube-height: 320px;
	--cube-depth: 160px;

	position: relative !important;
	z-index: 10 !important;

	width: var(--cube-width) !important;
	max-width: calc(100vw - 120px) !important;

	height: var(--cube-height) !important;
	min-height: var(--cube-height) !important;

	margin: 0 auto !important;
	padding: 0 !important;

	align-self: center !important;
	justify-self: center !important;

	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;

	transform: none !important;

	perspective: 1400px;
	-webkit-perspective: 1400px;

	overflow: visible !important;
	transition: none !important;
}

.vcube-slider > .e-con-inner {
	position: relative !important;

	display: block !important;

	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: visible !important;
}


/* ==================================================
   CUBE STAGE
================================================== */

.vcube-stage {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	transform: rotateX(0deg);
	transform-origin: 50% 50% !important;

	transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;

	overflow: visible !important;

	will-change: transform;
	transition: none !important;
}

.vcube-stage > .e-con-inner {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;

	overflow: visible !important;
}


/* ==================================================
   CUBE FACES
================================================== */

.vcube-face {
	position: absolute !important;
	inset: 0 !important;

	width: 100% !important;
	max-width: none !important;

	height: var(--cube-height) !important;
	min-height: var(--cube-height) !important;

	margin: 0 !important;
	padding: 40px !important;

	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;

	box-sizing: border-box;

	transform-style: preserve-3d;
	-webkit-transform-style: preserve-3d;

/* 	backface-visibility: hidden !important;
	-webkit-backface-visibility: hidden !important;
	overflow: hidden !important; */

	will-change: transform;
	transition: none !important;
}

.vcube-face > .e-con-inner {
	position: relative !important;

	width: 100% !important;
	max-width: none !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;

	gap: 18px;
}


/* ==================================================
   FACE POSITIONS
================================================== */

.vcube-face-1 {
	transform:
		rotateX(0deg)
		translateZ(var(--cube-depth));
}

.vcube-face-2 {
	transform:
		rotateX(90deg)
		translateZ(var(--cube-depth));
}

.vcube-face-3 {
	transform:
		rotateX(180deg)
		translateZ(var(--cube-depth));
}

.vcube-face-4 {
	transform:
		rotateX(270deg)
		translateZ(var(--cube-depth));
}


/* ==================================================
   ELEMENTOR CONTENT
================================================== */

.vcube-face .elementor-widget {
	position: relative;
	z-index: 2;
}

.vcube-face .elementor-widget-heading,
.vcube-face .elementor-widget-text-editor {
	width: 100%;
	margin: 0 !important;
}

.vcube-face .elementor-heading-title {
	margin: 0 !important;
	color: inherit;
}

.vcube-face .elementor-widget-text-editor,
.vcube-face .elementor-widget-text-editor p {
	color: inherit;
}

.vcube-face .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}


/* ==================================================
   AUTOMATIC PAGINATION
================================================== */

.vcube-dots {
	position: absolute !important;

	top: 50% !important;
	right: -70px !important;

	z-index: 40 !important;

	width: auto !important;
	max-width: none !important;

	height: auto !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;

	gap: 10px !important;

	transform: translateY(-50%) !important;

	pointer-events: none;
}

.vcube-dot {
	display: block !important;
	flex: 0 0 auto !important;

	width: 6px;
	height: 6px;

	min-width: 6px;
	min-height: 6px;

	max-width: 6px;
	max-height: 6px;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 50%;

	background-color: rgba(255, 255, 255, 0.5);

	box-shadow: none !important;
	outline: none !important;

	pointer-events: none;

	transition:
		width 0.3s ease,
		height 0.3s ease,
		min-width 0.3s ease,
		min-height 0.3s ease,
		max-width 0.3s ease,
		max-height 0.3s ease,
		border-radius 0.3s ease,
		background-color 0.3s ease;
}

.vcube-dot.active {
	width: 4px;
	height: 20px;

	min-width: 4px;
	min-height: 20px;

	max-width: 4px;
	max-height: 20px;

	border-radius: 4px;

	background-color: #ff5722;
}


/* ==================================================
   TABLET
================================================== */

@media screen and (max-width: 1024px) {

	.vcube-slider {
		--cube-width: 560px;
		--cube-height: 300px;
		--cube-depth: 150px;

		width: var(--cube-width) !important;
		max-width: calc(100vw - 100px) !important;
	}

	.vcube-face {
		padding: 34px !important;
	}

	.vcube-dots {
		right: -36px !important;
	}
}


/* ==================================================
   MOBILE
================================================== */

@media screen and (max-width: 767px) {

	.vcube-section {
		height: 100svh !important;
		min-height: 100svh !important;
	}

	.vcube-slider {
		--cube-width: 100%;
		--cube-height: 360px;
		--cube-depth: 180px;

		width: calc(100vw - 70px) !important;
		max-width: none !important;
	}

	.vcube-face {
		padding: 28px 24px !important;
	}

	.vcube-face > .e-con-inner {
		gap: 14px;
	}

	.vcube-dots {
		right: -24px !important;
		gap: 8px !important;
	}

	.vcube-dot.active {
		height: 18px;
		min-height: 18px;
		max-height: 18px;
	}
}


/* ==================================================
   SMALL MOBILE
================================================== */
.next-after-cube{
	position: relative;
	z-index: 50;
	background-color: #ffffff;
	will-change: transform;
}
.vcube-section + section,
.vcube-section + .e-con {
	position: relative;
	z-index: 50;
	background-color: #ffffff;
}



/* =========================================
   WORK LOOP GRID
========================================= */

.work-grid {
	width: 100% !important;
	--grid-columns: 6 !important;
}

.work-grid .elementor-loop-container,
.work-grid .elementor-loop-container.elementor-grid {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	grid-auto-flow: row !important;
	align-items: start !important;
	width: 100% !important;
	gap: 40px !important;
}


/* =========================================
   RESET LOOP ITEMS
========================================= */

.work-grid .elementor-loop-container > .e-loop-item {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	grid-column: auto !important;
}


/* =========================================
   FIRST TWO POSTS — 50% EACH
========================================= */

.work-grid .e-loop-item.work-grid-half {
	grid-column: span 3 !important;
}


/* =========================================
   NEXT THREE POSTS — 33.33% EACH
========================================= */

.work-grid .e-loop-item.work-grid-third {
	grid-column: span 2 !important;
}


/* =========================================
   SIXTH POST — FULL WIDTH
========================================= */

.work-grid .e-loop-item.work-grid-full {
	grid-column: 1 / -1 !important;
}


/* =========================================
   LOOP ITEM WIDTH FIX
========================================= */

.work-grid .e-loop-item > .elementor-element,
.work-grid .e-loop-item > .e-con,
.work-grid .e-loop-item .work-card {
	width: 100% !important;
	max-width: none !important;
}


/* =========================================
   FEATURED IMAGE FIX
========================================= */

.work-grid .elementor-widget-theme-post-featured-image,
.work-grid .elementor-widget-theme-post-featured-image .elementor-widget-container,
.work-grid .elementor-widget-theme-post-featured-image a {
	display: block !important;
	width: 100% !important;
}

.work-grid .elementor-widget-theme-post-featured-image img {
	display: block !important;

	width: 100% !important;
	max-width: none !important;

	object-fit: cover !important;
	object-position: center !important;
}

/* =========================================
   OPTIONAL IMAGE RATIOS
========================================= */

/* First two cards */
.work-grid .work-grid-half
.elementor-widget-theme-post-featured-image img {
	aspect-ratio: 16 / 9;
}

/* Three-column cards */
.work-grid .work-grid-third
.elementor-widget-theme-post-featured-image img {
	aspect-ratio: 4 / 3;
}

/* Full-width card */
.work-grid .work-grid-full
.elementor-widget-theme-post-featured-image img {
	aspect-ratio: 21 / 9;
}

.white-image img {
	filter: brightness(0) invert(1) !important;
}
/* Elementor widget */
/* .auto-video-ratio {
	--video-ratio: 16 / 9;
	width: 100% !important;
} */

/* Elementor video wrappers */
.auto-video-ratio .elementor-widget-container,
.auto-video-ratio .elementor-wrapper,
.auto-video-ratio .e-hosted-video {
	width: 100% !important;
	height: auto !important;
	padding: 0 !important;
	overflow: hidden !important;
	aspect-ratio: var(--video-ratio) !important;
}

/* Actual video */
.auto-video-ratio video,
.auto-video-ratio .elementor-video {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	aspect-ratio: var(--video-ratio) !important;
	object-fit: cover !important;
	background: #000;
}
.auto-video-ratio.has-video-poster .elementor-video {
    object-fit: contain !important;
}
.auto-video-ratio.video-playing .elementor-video {
    object-fit: cover !important;
}
.video-contain.video-playing .elementor-video {
	object-fit: contain !important;
}
.video-contain .elementor-video {
	width:100% !important;
	height:auto !important;
	aspect-ratio:var(--video-ratio);
	object-fit:cover;
}
.text-left .elementor-button-text {
	text-align: left;
}
@media screen and (max-width: 1024px) {

	.work-grid .elementor-loop-container,
	.work-grid .elementor-loop-container.elementor-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 20px !important;
	}

	.work-grid .e-loop-item.work-grid-half,
	.work-grid .e-loop-item.work-grid-third {
		grid-column: span 1 !important;
	}

	.work-grid .e-loop-item.work-grid-full {
		grid-column: 1 / -1 !important;
	}

	.work-grid .work-grid-half
	.elementor-widget-theme-post-featured-image img,
	.work-grid .work-grid-third
	.elementor-widget-theme-post-featured-image img {
		aspect-ratio: 4 / 3;
	}

	.work-grid .work-grid-full
	.elementor-widget-theme-post-featured-image img {
		aspect-ratio: 16 / 9;
	}
}
@media screen and (max-width: 767px) {

	.work-grid .elementor-loop-container,
	.work-grid .elementor-loop-container.elementor-grid {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.work-grid .e-loop-item.work-grid-half,
	.work-grid .e-loop-item.work-grid-third,
	.work-grid .e-loop-item.work-grid-full {
		grid-column: 1 / -1 !important;
	}

	.work-grid .work-grid-half
	.elementor-widget-theme-post-featured-image img,
	.work-grid .work-grid-third
	.elementor-widget-theme-post-featured-image img,
	.work-grid .work-grid-full
	.elementor-widget-theme-post-featured-image img {
		aspect-ratio: 4 / 3;
	}
}
@media screen and (max-width: 480px) {

	.vcube-slider {
		--cube-height: 320px;
		--cube-depth: 160px;

		width: calc(100vw - 60px) !important;
	}

	.vcube-face {
		padding: 24px 20px !important;
	}
}