.grecaptcha-badge {
	visibility: hidden !important;
}

/* Default state (section inactive) */
#app {
	padding-top: 0px !important;
}

.bg-scale {
	background-size: 150% 150% !important;
	background-position: center;
	opacity: 0;
	transition:
		opacity 0.8s ease-in,
		background-size 3s ease-in;
}

/* Section entering view (overlap fade-in) */
.bg-scale.fading-in {
	opacity: var(--fade-in-opacity, 0.4); /* overlap stronger */
	transition:
		opacity 0.6s ease-out,
		background-size 3s ease-out;
}

/* Section leaving view (overlap fade-out) */
.bg-scale.fading-out {
	opacity: var(--fade-out-opacity, 0.4);
	transition:
		opacity 0.8s ease-in,
		background-size 3s ease-in;
}

/* Fully active (on snap position) */
.bg-scale.active {
	background-size: 100% 100% !important;
	opacity: 1;
	transition:
		opacity 0.4s ease-out,
		background-size 10s ease-out;
}

@media (max-width: 768px) {
	.bg-scale {
		background-size: auto 150% !important;
	}
}

@media (max-width: 768px) {
	.bg-scale.active {
		background-size: auto 100% !important;
	}
}

/* GSAP panel scroll + video sections */
.panel-scroll {
	opacity: 0;
	visibility: hidden;
	position: relative;
	z-index: 1;
	min-height: 100vh;
}

/* Wrapper animated by GSAP */
.panel-scroll-wrapper {
	position: relative;
	will-change: transform; /* Performance boost */
}

/* Footer stays above panels */
#industry-recognition {
	z-index: 1;
}

#footer {
	z-index: 5;
	/* 	margin-top: -100px; */
}

/* All section videos: fixed full-viewport background */
#home-vid .elementor-background-video-container,
#architecture-vid .elementor-background-video-container,
#interior-vid .elementor-background-video-container,
#process-vid .elementor-background-video-container,
#residential-vid .elementor-background-video-container,
#hospitality-vid .elementor-background-video-container,
#commercial-vid .elementor-background-video-container {
	position: fixed !important;
	inset: 0;
	width: 100vw !important;
	height: 100vh !important;
	pointer-events: none;
	z-index: -1;
	opacity: 0;
	transition: opacity 0.9s ease, transform 0.9s ease;
}

/* Video aktif saat section sedang terlihat */
.sec-active .elementor-background-video-container {
	opacity: 1 !important;
}

#home-vid video,
#architecture-vid video,
#interior-vid video,
#process-vid video,
#residential-vid video,
#hospitality-vid video,
#commercial-vid video {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#home-vid .head-panel,
#architecture-vid .head-panel,
#interior-vid .head-panel,
#process-vid .head-panel,
#residential-vid .head-panel,
#hospitality-vid .head-panel,
#commercial-vid .head-panel {
	transition: opacity 0.9s ease, transform 0.9s ease;
}

#home-vid .head-panel.is-blur,
#architecture-vid .head-panel.is-blur,
#interior-vid .head-panel.is-blur,
#process-vid .head-panel.is-blur,
#residential-vid .head-panel.is-blur,
#hospitality-vid .head-panel.is-blur,
#commercial-vid .head-panel.is-blur {
	filter: blur(8px);
	opacity: 0.0;
	transition: opacity 0.9s ease, transform 0.9s ease;
}

#landmark_header__banner_1,
#landmark_footer__site-footer_1 {
	display: none;
}

:root {
	--e-global-color-primary: #10586e;
	--e-global-color-secondary: #709fb3;
	--e-global-color-text: #000000;
	--e-global-color-accent: #808184;
	--e-global-color-aa72bfb: #9cbbc5;
	--e-global-color-50e4c02: #dae8ed;
	--e-global-color-f867102: #ffffff;
	--e-global-color-99fc6dd: #f2f2f0;
	--e-global-color-e660b6f: #252e30;
	--e-global-color-90da536: #799db0;
	--e-global-border-color: #799db0;
}

html {
	overflow-x: hidden !important;
}

* {
	border-color: var(--e-global-border-color);
}

p:not(footer p) {
	/*     font-size: 18px!important; */
}

p {
	line-height: 1.3em !important;
	font-family: "Montserrat", Sans-serif !important;
	font-weight: 400 !important;
	margin-block-end: 10px !important;
}

p:last-of-type {
	margin-block-end: 0 !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--e-global-color-f867102) !important;
}

body.home p a {
	font-weight: 700 !important;
}

#footer h1 {
	color: var(--e-global-color-primary) !important;
}

.elementor-heading-title#green-heading {
	color: var(--e-global-color-primary) !important;
}

#footer [data-id="39e8f971"] p,
body p#black-text {
	color: var(--e-global-color-text) !important;
}

#footer .elementor-widget:not([data-id="39e8f971"]) p a,
#footer .elementor-widget:not([data-id="39e8f971"]) p {
	font-weight: normal !important;
}

.h-white h1,
.h-white h2,
.h-white h3,
.h-white h4,
.h-white h5,
.h-white h6,
.h-white h1 a,
.h-white h2 a,
.h-white h3 a,
.h-white h4 a,
.h-white h5 a,
.h-white h6 a,
.p-white p,
.p-white p a {
	color: var(--e-global-color-f867102) !important;
}

.h-green h1,
.h-green h2,
.h-green h3,
.h-green h4,
.h-green h5,
.h-green h6,
.h-green h1 a,
.h-green h2 a,
.h-green h3 a,
.h-green h4 a,
.h-green h5 a,
.h-green h6 a,
.p-green p,
.p-green p a {
	color: var(--e-global-color-primary) !important;
}

.h-dark h1,
.h-dark h2,
.h-dark h3,
.h-dark h4,
.h-dark h5,
.h-dark h6,
.h-dark h1 a,
.h-dark h2 a,
.h-dark h3 a,
.h-dark h4 a,
.h-dark h5 a,
.h-dark h6 a,
.p-dark p,
.p-dark p a {
	color: var(--e-global-color-e660b6f) !important;
}

.p-black p {
	color: var(--e-global-color-text) !important;
}

.icon-white svg {
	fill: var(--e-global-color-f867102) !important;
}

.h-white h1 a:hover,
.h-white h2 a:hover,
.h-white h3 a:hover,
.h-white h4 a:hover,
.h-white h5 a:hover,
.h-white h6 a:hover,
.p-white p a:hover,
.h-green h1 a:hover,
.h-green h2 a:hover,
.h-green h3 a:hover,
.h-green h4 a:hover,
.h-green h5 a:hover,
.h-green h6 a:hover,
.p-green p a:hover,
.p-black p a:hover {
	opacity: 0.7 !important;
}

.btn-border-white a {
	background-color: #FFFFFF00;
	color: var(--e-global-color-f867102) !important;
}

.btn-border-white a:hover {
	color: var(--e-global-color-primary) !important;
	background-color: var(--e-global-color-f867102) !important;
	border-color: var(--e-global-color-f867102) !important;
}

.btn-border-green a:hover {
	color: var(--e-global-color-f867102) !important;
}

.wp_ada_hidden {
	display: none !important;
}

#menu-1-54b63943 > li > a {
	text-shadow: 0 0 8px #fff !important;
}

@media (min-width: 1025px) {
	.max-5 { max-width: calc(1440px * 0.05); }
	.max-10 { max-width: calc(1440px * 0.10); }
	.max-15 { max-width: calc(1440px * 0.15); }
	.max-20 { max-width: calc(1440px * 0.2); }
	.max-25 { max-width: calc(1440px * 0.25); }
	.max-30 { max-width: calc(1440px * 0.3); }
	.max-35 { max-width: calc(1440px * 0.35); }
	.max-40 { max-width: calc(1440px * 0.4); }
	.max-45 { max-width: calc(1440px * 0.45); }
	.max-50 { max-width: calc(1440px * 0.5); }
	.max-55 { max-width: calc(1440px * 0.55); }
	.max-60 { max-width: calc(1440px * 0.6); }
	.max-65 { max-width: calc(1440px * 0.65); }
	.max-70 { max-width: calc(1440px * 0.7); }
	.max-75 { max-width: calc(1440px * 0.75); }
	.max-80 { max-width: calc(1440px * 0.8); }
	.max-85 { max-width: calc(1440px * 0.85); }
	.max-90 { max-width: calc(1440px * 0.9); }
	.max-95 { max-width: calc(1440px * 0.95); }
	.max-100 { max-width: calc(1440px * 1); }
}

@media (min-width: 1921px) {
	.w-5 { width: 5% !important; }
	.w-10 { width: 10% !important; }
	.w-15 { width: 15% !important; }
	.w-20 { width: 20% !important; }
	.w-25 { width: 25% !important; }
	.w-30 { width: 30% !important; }
	.w-35 { width: 35% !important; }
	.w-40 { width: 40% !important; }
	.w-45 { width: 45% !important; }
	.w-50 { width: 50% !important; }
	.w-55 { width: 55% !important; }
	.w-60 { width: 60% !important; }
	.w-65 { width: 65% !important; }
	.w-70 { width: 70% !important; }
	.w-75 { width: 75% !important; }
	.w-80 { width: 80% !important; }
	.w-85 { width: 85% !important; }
	.w-90 { width: 90% !important; }
	.w-95 { width: 95% !important; }
	.w-100 { width: 100% !important; }
}

@media (min-width: 2400px) {
	.mh-300 { min-height: 300px !important; }
	.mh-350 { min-height: 350px !important; }
	.mh-400 { min-height: 400px !important; }
	.mh-450 { min-height: 450px !important; }
	.mh-500 { min-height: 500px !important; }
	.mh-550 { min-height: 550px !important; }
	.mh-600 { min-height: 600px !important; }
	.mh-650 { min-height: 650px !important; }
	.mh-700 { min-height: 700px !important; }
	.mh-800 { min-height: 800px !important; }
	.max-h-900 { max-height: 900px !important; }
	.mh-1150 { min-height: 1150px !important; }
	.mh-1200 { min-height: 1200px !important; }
	.mw-30 { width: 30% !important; }
	.mw-35 { width: 35% !important; }
	.mw-40 { width: 40% !important; }
	.mw-45 { width: 45% !important; }
}

/* Code Global Font Setup */
h1,
.elementor-heading-title.elementor-size-xxl,
body.elementor-page-25725 h1 {
	font-size: clamp(2rem, 1rem + 2.5vw, 3.5rem) !important;
}

h2,
.elementor-heading-title.elementor-size-xl,
body.elementor-page-25725 h2 {
	font-size: clamp(1.75rem, 0.875rem + 2.2vw, 3rem) !important;
}

h3,
.elementor-heading-title.elementor-size-large {
	font-size: clamp(1.5rem, 0.75rem + 1.8vw, 2.5rem) !important;
}

h4,
.elementor-heading-title.elementor-size-medium {
	font-size: clamp(1.25rem, 0.625rem + 1.5vw, 2rem) !important;
}

h5 {
	font-size: clamp(1.1rem, 0.55rem + 1.2vw, 1.75rem) !important;
}

h6 {
	font-size: clamp(1rem, 0.5rem + 1vw, 1.5rem) !important;
}

p,
.elementor-widget-text-editor,
body.elementor-page-25725 p,
.elementor-widget .elementor-icon-list-item,
.elementor-widget .elementor-icon-list-item a,
span {
	font-size: clamp(1rem, 0.875rem + 0.4vw, 1.375rem) !important;
}

@media (min-width: 2400px) {
	.elementor-button {
		font-size: clamp(0.9rem, 0.45rem + 0.8vw, 1.3rem) !important;
		padding: clamp(12px, 1vw, 24px) clamp(24px, 2vw, 48px) !important;
	}

	.elementor-nav-menu .elementor-item,
	nav a,
	.menu-item a {
		font-size: clamp(0.875rem, 0.5rem + 0.6vw, 1.25rem) !important;
	}
}

/* -------------------------------------------------------------------------
   Project / component typography (merged from site snippet)
   ------------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 500 !important; /* medium */
	/* color: #10586e !important; */
}

.page-nav__item a {
	font-weight: 500 !important; /* medium */
}

.project-details__column h5 {
	font-weight: 500; /* medium */
	color: #10586e !important;
	font-family: "Montserrat", sans-serif;
}

.project-details__column h6 {
	font-weight: 400; /* medium */
	color: #000 !important;
	font-family: "Montserrat", sans-serif;
}

.project-details__column h5 span {
	font-weight: 500 !important; /* medium */
}

.project-details__column h6 span {
	font-weight: 400 !important; /* medium */
}

.project-details__column a {
	font-weight: 400 !important; /* medium */
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
	color: #10586e !important;
}

a:hover {
	color: #709fb3 !important;
}

body {
	font-family: "Montserrat", sans-serif !important;
}

.accordions-component,
.accordions-component__topic,
.accordions-component__button {
	font-family: "Montserrat", sans-serif !important;
	font-weight: 500;
}

/* -------------------------------------------------------------------------
   WP admin bar — keep toolbar out of global fluid type (esp. `span` + clamp)
   Placed last; enqueue loads after `admin-bar` when the bar is visible.
   ------------------------------------------------------------------------- */
#wpadminbar span,
#wpadminbar p,
#wpadminbar a,
#wpadminbar li,
#wpadminbar .ab-item,
#wpadminbar .ab-label,
#wpadminbar .elementor-widget-text-editor,
#wpadminbar .elementor-widget .elementor-icon-list-item,
#wpadminbar .elementor-widget .elementor-icon-list-item a,
body.elementor-page-25725 #wpadminbar p {
	font-size: revert !important;
}
