/*
	Theme Name: Hello Elementor
	Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
	Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
	Author: Elementor Team
	Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
	Version: 3.4.4
	Stable tag: 3.4.4
	Requires at least: 6.0
	Tested up to: 6.8
	Requires PHP: 7.4
	License: GNU General Public License v3 or later.
	License URI: https://www.gnu.org/licenses/gpl-3.0.html
	Text Domain: hello-elementor
	Tags: accessibility-ready, flexible-header, custom-colors, custom-menu, custom-logo, featured-images, rtl-language-support, threaded-comments, translation-ready,
*/

/* ----- custom ----- */
body,
html {
	overflow-x: hidden;
}

.d-none {
	display: none;
}
p {
	margin-bottom: 0;
}
a {
	color: var(--e-global-color-00f16f9);
}

/* container */
.container-box.e-con {
	width: calc(100% - 95px);
	margin-left: auto;
    margin-right: auto;
}

/* vertical-rl */
/* .menu-main-header .menu-container.menu-inner, */
.sec-banner .col-banner,
/* .sec-footer .footer-inner, */
.vertical {
/* 	writing-mode: vertical-rl; */
}

/* text-align: center */
.tl-center {
	text-align: center;
}

/* text */
.elementor-widget-text-editor a {
	text-decoration: underline;
}
.elementor-widget-text-editor a:hover {
	text-decoration: unset;
}

/* position: relative */
.p-relative .e-con-inner {
	position: relative;
}

/* header */
header {
	z-index: 9;
    position: relative;
}
.header-light:not(.post-type-archive-works) .logo-header-main:not(.change-dark) img {
	filter: brightness(0) invert(1);
   	-webkit-filter: brightness(0) invert(1);
}
.header-light:not(.post-type-archive-works) .menu-main-header:not(.change-dark) .uc_line {
	background-color: white !important;
}
.menu-main-header .menu-item a {
	gap: 10px;
}
.menu-main-header .menu-item a span {
	margin-top: 5px;
	font-size: 13.2px;
}
.sec-footer .menu-footer .elementor-nav-menu>li a span {
	font-size: 13.2px;
    margin-top: 5px;
}
html.menu-opened .menu-main-header.change-dark .uc_line {
	background-color: white !important;
}
.menu-main-header .uc_hamburger .uc_line {
	width: 30px;
    height: 1px;
	margin: 0;
}
.menu-main-header .uc_hamburger span+span {
	margin-top: 8px !important;
}
.menu-main-header #hamburger-1.is-active .uc_line:nth-child(1),
.menu-main-header #hamburger-1.is-active .uc_line:nth-child(3) {
	background-color: white;
}
.menu-main-header #hamburger-1.is-active .uc_line:nth-child(1) {
	transform: translateY(9px) rotate(45deg);
}
.menu-main-header #hamburger-1.is-active .uc_line:nth-child(3) {
	transform: translateY(-9px) rotate(-45deg);
}
.logo-header-main img {
	transition: all 0.3s;
}
.menu-opened .logo-header-main img {
	filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
}
.menu-main-header .menu-container.menu-inner {
	max-width: 1208px !important;
	width: fit-content !important;
    padding: 24px 60px 0;
    flex-direction: column;
    justify-content: space-between !important;
    align-items: center !important;
	gap: 10px;
}
.menu-main-header .menu-container.menu-inner>div {
	width: 100% !important;
}
.menu-main-header .ue-menu-main #menu-main-menu {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
}
.menu-main-header .ue_menu-social-icons {
	margin: 0 !important;
    display: flex;
    width: min(calc(112 / 1366 * 100vw), 112px);
}

/* banner */
.sec-banner .video-banner {
	height: 102%;
    width: 102% !important;
    max-width: 102% !important;
    position: absolute;
    top: 50%;
    left: 49%;
    z-index: 1;
    transform: translate(-50%, -50%);
}
.sec-banner .video-banner .e-hosted-video.elementor-wrapper {
	width: 100%;
	height: 100%;
}
.sec-banner {
	display: flex;
    justify-content: center;
    align-items: center;
	overflow: hidden;
}
.sec-banner .col-banner {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: 685px;
    padding-bottom: 50px;
    font-size: 1.9rem;
    line-height: 2.275;
    position: relative;
    z-index: 3;
    pointer-events: none;
    width: calc(100% - 95px);
    margin-left: auto;
    margin-right: auto;
}
.button-vd-banner a {
	display: flex !important;
    align-items: center;
    gap: 10px;
    transform: unset !important;
}
.button-vd-banner .text-video {
	line-height: 1.75;
    font-size: 15px;
    color: white;
}

/* button */
.btn-custom-width a {
	 width: 253px !important;
    border: 1px solid #000;
    display: flex;
    align-items: center;
    transition: .3s ease;
    justify-content: center;
    margin-inline: auto;
    padding: 15px !important;
    font-size: 16px;
    height: 87px;
}
.btn-custom-width a:hover {
	background-color: #000 !important;
    color: white !important;
}
.btn-full-width a {
	height: 80px;
    width: 100% !important;
    display: flex;
    justify-content: center;
    align-items: center;
}
.btn-full-width .elementor-button-icon {
	font-size: 8px;
    position: absolute;
    right: 10px;
}
.btn-custom-all a.elementor-button {
	width: 100%;
    font-size: 17.6px;
    line-height: 1.75;
	font-weight: 400;
}
.btn-custom-all a.elementor-button .elementor-button-content-wrapper {
	justify-content: left;
}
.btn-custom-all a.elementor-button:before {
	width: 100%;
    right: 0;
}
.btn-custom-all a.elementor-button:hover:before {
	width: 0;
    transition: 0.4s ease-in-out;
}
.btn-custom-all a.elementor-button:after {
	width: 0;
    left: 0;
}
.btn-custom-all a.elementor-button:hover:after {
	width: 100%;
    transition: 0.4s 0.1s ease-in-out;
}
.btn-custom-all a.elementor-button:before,
.btn-custom-all a.elementor-button:after {
	content: "";
    display: block;
    height: 1px;
    background: #000;
    position: absolute;
    bottom: 0;
}

/* title */
.un-vertical .elementor-heading-title span {
	margin-top: 0;
}
.elementor-heading-title span {
	margin-top: 25px;
    display: inline-block;
    color: var(--e-global-color-text);
    font-size: 15.4px;
}
.elementor-heading-title span.mg-0 {
	margin-top: 0;
}
.vertical.tt-left {
	display: flex;
    align-items: flex-end;
}

/* accor */
.content-accor-items .uc_container.uc-items-wrapper  .uc_ac_box,
.content-accor-items .uc_container.uc-items-wrapper .uc-heading,
.content-accor-items .uc_container.uc-items-wrapper .uc_content {
	position: relative;
}
.content-accor-items .uc_container.uc-items-wrapper .uc-heading:before,
.content-accor-items .uc_container.uc-items-wrapper .uc_content:before {
	font-family: 'EB Garamond', serif;
    font-size: 17.6px;
    font-weight: 400;
    line-height: 1;
    position: absolute;
    left: 0;
	color: var( --e-global-color-00f16f9 );
}
.content-accor-items .uc_container.uc-items-wrapper .uc-heading:before {
	content: "Q";
    top: 35px;
}
.content-accor-items .uc_container.uc-items-wrapper .uc_content:before {
	content: "A";
    top: 5px;
}
.content-accor-items .uc_container .uc-heading span.ue_accordion_icon {
	position: absolute;
    right: 10px;
    top: 36px;
}

/* row-flow-list */
.row-flow-list .sub-fl {
	margin: 0;
	font-size: 21px;
}
.tt-list-fl {
	display: flex;
    align-items: center;
    justify-content: center;
	writing-mode: vertical-rl;
}
.fl-list-term {
	display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 100%;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    line-height: 1;
    position: absolute;
    top: 0;
    right: 0;
}
.fl-list-term:before {
	content: "";
    display: block;
    width: 1px;
    height: 100%;
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    left: 50%;
}
.fl-list-term .elementor-heading-title {
	display: inline-block;
    padding: 11px 0 10px;
    background: #FFF;
    font-size: 15px;
    letter-spacing: 2px;
    writing-mode: vertical-rl;
    text-orientation: upright;
    position: relative;
    z-index: 2;
}

/* about */
.img-520 {
	--width-img: 520px;
	width: var(--width-img) !important;
    min-width: var(--width-img) !important;
	height: auto;
}

/* work */
.col-card-works .img-card-work {
	aspect-ratio: 367 / 245;
}
.col-card-works .img-card-work * {
	width: 100%;
	height: 100%;
}
.col-card-works .img-card-work img {
	object-fit: cover;
}
.drd-filter select {
	outline: none;
	height: 32px;
}
.archive-works .uc_post_grid_style_one_image .uc_post_image {
	aspect-ratio: 8 / 5;
}
.archive-works .uc_post_grid_style_one_image .uc_post_image,
.archive-works .uc_post_grid_style_one_image .uc_post_image img {
	width: 100% !important;
    height: 100% !important;
}

/* model */
.btn-book-model a {
	width: 300px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    letter-spacing: 0.025em;
    font-weight: 400;
}
.btn-book-model .elementor-button-icon {
	position: absolute;
    right: 8px;
}

/* build */
.glr-build .elementor-gallery-item__title {
	opacity: 1;
    transform: scale(1);
}

/* blog */
.col-card-blog .img-port-card {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.col-card-blog .img-port-card * {
	width: 100%;
	height: 100%;
}
.col-card-blog .img-port-card img {
	object-fit: cover;
}
.tt-blog-card .elementor-heading-title {
	display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sidebar-blog,
.sidebar-blog ul {
	list-style: none;
}
.sidebar-blog a {
	font-size: 14px;
	line-height: 1.75;
	transition: all 0.3s;
}
.sidebar-blog ul li a:before {
	content: "";
    display: inline-block;
    width: 8px;
    height: 1px;
    margin-right: 8px;
    background: #707070;
    vertical-align: middle;
    transform: translateY(-2px);
}
.sidebar-blog a:hover {
	opacity: 0.7;
}
.sidebar-blog .widgettitle {
	font-size: 15.4px;
	font-weight: 400;
}
.sidebar-blog .widget:nth-child(2) {
	margin-top: 68px;
}
.sidebar-blog .widget+.widget {
	margin-top: 70px;
}
.sidebar-blog ul {
	padding-left: 0;
}
.sidebar-blog ul li {
	margin-top: 8px;
}
.archive-blog .elementor-post__text {
	display: flex;
	flex-direction: column;
}
.archive-blog .elementor-post__text .elementor-post__meta-data {
	order: -1;
	margin: 0;
}
.archive-blog .elementor-post__title {
	margin: 8px 0 53px;
}
.archive-blog .elementor-post__title a {
	font-size: 28.25px;
    line-height: 1.5;
    font-weight: 400;
    color: var(--e-global-color-00f16f9);
}
.archive-blog article.elementor-post {
	padding-bottom: 60px;
    border-bottom: 1px solid var(--e-global-color-5732d54);
}
.archive-blog article.elementor-post+article.elementor-post {
	margin-top: 60px;
}

/* contact */
.form-contact .row-input {
	display: flex;
    padding: 25px 0;
    border-bottom: 1px solid var(--e-global-color-5732d54);
}
.form-contact .col-left {
	width: 250px;
    padding-top: 8px;
}
.form-contact .col-right {
	flex: 1;
    padding: 8px 0;
}
.form-contact .wpcf7-form-control-wrap {
	display: block;
}
.form-contact .row-input .col-right.ip-6 p {
	display: flex;
    justify-content: space-between;
}
.form-contact .row-input .col-right.ip-6 .wpcf7-form-control-wrap {
	width: 49.5%;
    max-width: 368px;
}
.form-contact .wpcf7-checkbox {
	display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
}
.form-contact .wpcf7-checkbox .wpcf7-list-item {
	margin: 0;
}
.form-contact .wpcf7-checkbox .wpcf7-list-item label {
	display: flex;
    align-items: center;
}
.form-contact .wpcf7-checkbox .wpcf7-list-item input[type=checkbox],
.form-contact .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label {
	line-height: 1.75;
}
.form-contact .wpcf7-checkbox .wpcf7-list-item input[type=checkbox] {
	width: 16px;
    height: 16px;
	min-width: 16px;
}
.form-contact .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label {
	display: inline-block;
    padding-left: 10px;
    font-size: 16px;
}
.form-contact .row-button p {
	display: flex;
    justify-content: center;
    align-items: center;
    margin: 50px auto 0;
}
.form-contact .row-button button {
	width: 270px;
    height: 60px;
    border-radius: 0;
    background: #000 url(/wp-content/uploads/2025/08/app_arrow.svg) right 10px center / 6px auto no-repeat;
    color: white;
    border: none;
    font-size: 16px;
    line-height: 1.75;
	transition: all 0.3s;
}
.form-contact .row-button button:hover {
	opacity: 0.7;
}

/* footer */
.sec-footer .footer-inner .e-con-inner .main-menu .elementor-element {
	display: flex;
    flex-direction: column;
    padding-left: 0;
    width: 100%;
    max-width: 100%;
}
.sec-footer .footer-inner .e-con-inner .main-menu {
	justify-content: space-between;
}
/* .sec-footer .footer-inner .e-con-inner .menu-footer {
	width: calc(100% - 100px);
    max-width: 762px;
} */
.sec-footer .footer-inner .e-con-inner .menu-footer .elementor-nav-menu--main,
.sec-footer .footer-inner .e-con-inner .menu-footer ul.elementor-nav-menu {
	width: 100%;
}
.sec-footer .footer-inner .e-con-inner .menu-footer ul.elementor-nav-menu {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
}
/* .sec-footer .menu-footer .elementor-nav-menu>li:first-child {
	padding-left: 37%;
} */
.sec-footer .menu-footer .elementor-nav-menu:after {
	display: none;
}
.sec-footer .menu-footer .elementor-nav-menu>li a {
	flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 5px;
}

/* tablet */
@media (max-width: 1024px) {
	.img-520 {
		--width-img: 48%;
	}
	
	/* title */
	.elementor-heading-title span {
		margin: 0;
		line-height: 30px;
	}
	
	/* d-vtc-mobile */
	.d-vtc-mobile {
		width: 48%;
    	writing-mode: unset;
	}
}

/* mobile */
@media (max-width: 767px) {
	/* d-vtc-mb */
	.d-vtc-mb,
	.menu-main-header .menu-container.menu-inner,
	.sec-footer.d-vtc-mb .footer-inner {
		writing-mode: unset;	
	}
	.container-box.e-con {
		width: 84%;
	}
	.d-vtc-mobile {
		width: 100%;
	}
	.img-520 {
		--width-img: 100%;
	}
	
	/* button */
	.btn-custom-width a {
		width: 100% !important;
	}
	
	/* title - page */
	.tt-page-mb .elementor-heading-title {
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-start;
	}
	
	/* p-relative */
	.p-relative-mb {
		position: relative !important;
	}
	
	/* header */
	.menu-main-header .uc_hamburger .uc_line {
		width: 24px;
	}
	.menu-main-header .uc_hamburger span+span {
		margin-top: 6px !important;
	}
	.menu-main-header .menu-container.menu-inner {
		padding: 147px 0 23px;
		width: 89.4% !important;
	}
	.menu-main-header .menu-container.menu-inner .ue-menu-main {
		width: 100%;
	}.menu-main-header .menu-item li:not(:first-child) {
		margin-top: 10px;
	}
	.menu-main-header .menu-item a span {
		margin: 0 0 0 10px;
	}
	.menu-main-header .ue_menu-social-icons {
		padding-top: 80px;
    	width: 100%;
	}
	
	/* model */
	.btn-book-model a {
		width: 100vw;
		font-size: 16px;
	}
	
	/* contact */
	.form-contact .row-input {
		flex-direction: column;
	}
	.form-contact .row-input .col-right.ip-6.mb-12 .wpcf7-form-control-wrap {
		width: 100%;
	}
	
	/* footer */
	.sec-footer .footer-inner .e-con-inner .menu-footer ul.elementor-nav-menu {
		align-items: flex-start;
	}
	.sec-footer .footer-inner .e-con-inner .main-menu .elementor-element {
		padding: 0;
   		width: 100%;
	}
	.sec-footer .menu-footer .elementor-nav-menu>li:first-child {
		padding-left: 0;
/* 		margin-bottom: 47px !important; */
	}
	.sec-footer .menu-footer .elementor-nav-menu>li a span {
		margin: 0;
	}
	.sec-footer .menu-footer .elementor-nav-menu>li a {
		gap: 10px;
	}
}
/* ----- end custom ----- */
