body {
			background: #f6f9ff;
		}

		.kara-topbar {
			background: linear-gradient(90deg, #11361f 0%, #1e7444 50%, #89EA5F 100%);
		}

		header.main-header {
			width: 100%;
			max-width: 100% !important;
			margin: 0;
			background: transparent;
			border-radius: 0;
			border-bottom: 0;
			box-shadow: none;
			font-family: 'Poppins', sans-serif;
		}

		header.main-header .header-sticky {
			position: sticky;
			top: 0;
			z-index: 999;
			padding: 0;
			background: #ffffff;
			transition: box-shadow 0.25s ease;
			box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
			border-bottom: 1px solid #f1f1f1;
		}

		.kara-navbar-card {
			background: #ffffff;
			border-radius: 0;
			box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
			padding: 0 50px;
			min-height: 75px;
			transition: box-shadow 0.25s ease, background 0.25s ease;
			border: 0;
			width: 100% !important;
			max-width: 100%;
			margin: 0;
			display: block;
		}

		.navbar.kara-navbar-card {
			width: 100% !important;
			max-width: 100% !important;
		}

		header.main-header .container-fluid,
		header.main-header .container,
		header.main-header .kara-navbar-layout {
			width: 100% !important;
			max-width: 100% !important;
		}

		header.main-header .header-sticky.scrolled .kara-navbar-card {
			box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
		}

		.kara-navbar-layout {
			display: grid;
			grid-template-columns: auto 1fr auto;
			align-items: center;
			column-gap: 24px;
			min-height: 75px;
			width: 100%;
			max-width: 100%;
		}

		header.main-header::before,
		header.main-header::after,
		.header-sticky::before,
		.header-sticky::after,
		.kara-navbar-card::before,
		.kara-navbar-card::after {
			display: none !important;
			content: none !important;
		}

		.kara-brand {
			display: flex;
			align-items: center;
			gap: 0;
		}

		.kara-brand-mark {
			width: 190px;
			height: 72px;
			border-radius: 0;
			background: transparent;
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 0;
			box-shadow: none;
			flex-shrink: 0;
		}

		.kara-brand-mark img {
			width: 108%;
			height: 137%;
			object-fit: contain;
			transform: scale(1.18);
			transform-origin: left center;
		}

		.kara-brand-copy {
			display: none;
		}

		.main-menu {
			display: flex;
			justify-content: center;
		}

		.main-menu .navbar-nav {
			display: flex;
			align-items: center;
			justify-content: center;
			width: 100%;
			gap: 30px;
		}

		.main-menu ul li {
			margin: 0;
		}

		.main-menu ul li a {
			font-size: 17px;
			font-weight: 500;
			letter-spacing: 0.3px;
			color: #1a1a1a !important;
			padding: 10px 2px !important;
			transition: color 0.3s ease;
		}

		.main-menu ul li a:hover,
		.main-menu ul li:hover>a {
			color: #4CAF50 !important;
		}

		.kara-nav-cta .btn-default,
		.main-menu ul li.highlighted-menu a.nav-link {
			background: linear-gradient(135deg, #6EDC5F, #4CAF50);
			color: #ffffff !important;
			padding: 12px 26px !important;
			border-radius: 30px;
			font-weight: 600;
			white-space: nowrap;
			box-shadow: none;
			border-color: #4CAF50;
			font-family: 'Poppins', sans-serif;
			font-size: 16px;
			letter-spacing: 0.2px;
			transition: transform 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
		}

		.kara-nav-cta .btn-default:after {
			border-radius: 30px;
			background: #163300;
		}

		.kara-nav-cta {
			display: flex;
			justify-content: flex-end;
			align-items: center;
		}

		.kara-nav-cta .btn-default span {
			margin-left: 8px;
			font-size: 14px;
			line-height: 1;
			display: inline-flex;
			align-items: center;
		}

		.kara-nav-cta .btn-default:hover {
			transform: scale(1.05);
			box-shadow: 0 10px 22px rgba(76, 175, 80, 0.22);
		}

		.mobile-cta {
			display: none;
		}

		.navbar-toggle {
			display: none;
			justify-content: flex-end;
		}

		.hero.kara-hero {
			background: #f5f7fb;
			padding: 24px 0 74px;
			margin-top: 0;
			overflow: visible;
			display: block;
		}

		.hero.kara-hero:before {
			display: none;
		}

		.kara-hero-shell {
			position: relative;
			z-index: 2;
			min-height: auto;
			display: block;
		}

		.kara-hero-prime {
			position: relative;
			padding-top: 0;
			width: 100%;
			margin-top: -18px;
		}

		.consultation-wrap {
			display: grid;
			grid-template-columns: minmax(0, 1.1fr) minmax(380px, 0.9fr);
			gap: 36px;
			align-items: center;
		}

		.consultation-copy h2 {
			font-family: 'Rubik', sans-serif;
			font-size: 42px;
			line-height: 1.08;
			font-weight: 700;
			margin-bottom: 10px;
			color: #0e1424;
			max-width: 760px;
		}

		.consultation-copy h2 span {
			color: #2f47d7;
		}

		.consultation-copy p {
			font-size: 18px;
			color: #2f374d;
			margin-bottom: 18px;
			max-width: 720px;
		}

		.consultation-media {
			display: block;
			position: relative;
			border-radius: 20px;
			overflow: hidden;
			background: #dbe7ff;
			box-shadow: 0 18px 40px rgba(18, 31, 56, 0.12);
			border: 1px solid rgba(255, 255, 255, 0.7);
		}

		.consultation-media::after {
			display: none;
		}

		.consultation-media-main {
			position: relative;
			height: auto;
		}

		.consultation-media-main img {
			width: 100%;
			height: auto;
			max-height: 430px;
			object-fit: cover;
			display: block;
		}

		.consultation-form-card {
			background: linear-gradient(180deg, #ffffff 0%, #f8fff4 100%);
			border: 1px solid rgba(76, 175, 80, 0.14);
			border-radius: 20px;
			padding: 28px;
			box-shadow: 0 14px 36px rgba(22, 51, 0, 0.10);
			align-self: start;
			margin-top: 0;
			max-height: none;
			overflow: visible;
		}

		.consultation-tabs {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 8px;
			padding: 6px;
			border: 1px solid rgba(76, 175, 80, 0.18);
			border-radius: 999px;
			margin-bottom: 20px;
			background: #f6fff1;
		}

		.consultation-tab {
			padding: 12px 14px;
			text-align: center;
			border-radius: 999px;
			font-size: 15px;
			font-weight: 500;
			color: #10182f;
			background: transparent;
			cursor: pointer;
			transition: all 0.25s ease;
		}

		.consultation-tab.active {
			background: linear-gradient(135deg, #89EA5F 0%, #5bcf48 100%);
			color: #163300;
			box-shadow: 0 8px 18px rgba(76, 175, 80, 0.18);
		}

		.consultation-field {
			margin-bottom: 15px;
		}

		.consultation-field label,
		.bill-group-title {
			display: block;
			font-size: 16px;
			font-weight: 500;
			color: #163300;
			margin-bottom: 8px;
		}

		.consultation-field label span,
		.bill-group-title span {
			color: #ef4444;
		}

		.consultation-input {
			width: 100%;
			height: 47px;
			border: 1px solid rgba(76, 175, 80, 0.22);
			border-radius: 10px;
			padding: 0 16px;
			font-size: 15px;
			color: #11192f;
			background: #ffffff;
			transition: border-color 0.2s ease, box-shadow 0.2s ease;
		}

		.consultation-input:focus {
			outline: none;
			border-color: #66d14b;
			box-shadow: 0 0 0 4px rgba(102, 209, 75, 0.12);
		}

		.bill-options {
			display: flex;
			flex-wrap: wrap;
			gap: 8px;
			margin-bottom: 16px;
		}

		.bill-option {
			padding: 10px 14px;
			border: 1px solid rgba(76, 175, 80, 0.20);
			border-radius: 10px;
			background: #ffffff;
			color: #163300;
			font-size: 14px;
			font-weight: 500;
			transition: all 0.2s ease;
		}

		.bill-option:hover {
			border-color: #66d14b;
			color: #2f7f2c;
			background: #f4ffec;
		}

		.bill-option.active {
			border-color: #66d14b;
			background: linear-gradient(135deg, #ecffe1 0%, #dcf8ca 100%);
			color: #163300;
		}

		.consultation-consent {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			font-size: 14px;
			color: #4b5d47;
			margin-bottom: 18px;
		}

		.consultation-consent input {
			margin-top: 2px;
			width: 16px;
			height: 16px;
			accent-color: #4CAF50;
		}

		.consultation-consent a {
			color: #2f7f2c;
			text-decoration: underline;
		}

		.consultation-submit {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 210px;
			height: 46px;
			padding: 0 24px;
			border-radius: 999px;
			background: linear-gradient(135deg, #89EA5F 0%, #4CAF50 100%);
			color: #ffffff;
			font-size: 15px;
			font-weight: 600;
			border: 0;
			box-shadow: 0 10px 22px rgba(76, 175, 80, 0.22);
			transition: transform 0.25s ease, box-shadow 0.25s ease;
		}

		.consultation-submit:hover {
			transform: translateY(-1px);
			box-shadow: 0 14px 28px rgba(76, 175, 80, 0.28);
		}

		.up-presence-section {
			padding: 80px 0;
			background: linear-gradient(135deg, #12361f 0%, #163300 100%);
		}

		.up-presence-card {
			background: rgba(255, 255, 255, 0.04);
			border: 1px solid rgba(255, 255, 255, 0.08);
			border-radius: 28px;
			padding: 38px 34px;
			box-shadow: 0 18px 44px rgba(0, 0, 0, 0.12);
		}

		.up-presence-heading {
			margin-bottom: 28px;
		}

		.up-presence-heading h2 {
			font-family: 'Rajdhani', sans-serif;
			font-size: 44px;
			line-height: 1.05;
			color: #ffffff;
			margin-bottom: 10px;
		}

		.up-presence-heading p {
			margin: 0;
			font-size: 17px;
			color: rgba(255, 255, 255, 0.78);
		}

		.up-district-grid {
			display: grid;
			grid-template-columns: repeat(5, minmax(0, 1fr));
			gap: 14px;
		}

		.up-district-item {
			padding: 14px 16px;
			border-radius: 16px;
			background: rgba(255, 255, 255, 0.96);
			color: #163300;
			font-size: 15px;
			font-weight: 600;
			line-height: 1.35;
			text-align: center;
			box-shadow: 0 10px 22px rgba(0, 0, 0, 0.08);
			transition: transform 0.2s ease, box-shadow 0.2s ease;
		}

		.up-district-item:hover {
			transform: translateY(-2px);
			box-shadow: 0 14px 26px rgba(0, 0, 0, 0.12);
		}

		.about-us {
			padding: 110px 0 90px;
		}

		.about-image {
			position: relative;
			margin-right: 36px;
		}

		.about-img-1,
		.about-img-2 {
			border-radius: 30px;
			overflow: hidden;
			box-shadow: 0 20px 44px rgba(22, 51, 0, 0.10);
		}

		.about-img-1 {
			max-width: 620px;
		}

		.about-img-1 img,
		.about-img-2 img {
			width: 100%;
			height: auto;
			display: block;
		}

		.about-feature-image {
			width: 100%;
			max-width: 620px;
		}

		.about-feature-image img {
			aspect-ratio: 3 / 2;
			object-fit: cover;
		}

		.about-img-2 {
			position: absolute;
			right: -26px;
			bottom: -42px;
			max-width: 330px;
			border: 8px solid #ffffff;
		}

		.about-image::after {
			content: "";
			position: absolute;
			top: 28px;
			right: 14px;
			width: 140px;
			height: 140px;
			background-image: radial-gradient(rgba(137, 234, 95, 0.22) 3px, transparent 3px);
			background-size: 20px 20px;
			pointer-events: none;
			z-index: 0;
		}

		.about-us .section-title {
			text-align: left;
			margin-bottom: 24px;
		}

		.about-us .section-title h3 {
			font-size: 18px;
			letter-spacing: 0.18em;
			text-transform: uppercase;
		}

		.about-us .section-title h2 {
			font-size: 64px;
			line-height: 1.06;
			max-width: 760px;
			margin-bottom: 0;
		}

		.about-content {
			max-width: 760px;
		}

		.about-content p {
			font-size: 17px;
			line-height: 1.8;
			color: #6f7b8f;
			margin-bottom: 22px;
		}

		.about-content ul {
			margin: 10px 0 28px;
			gap: 10px 0;
		}

		.about-content ul li {
			font-size: 17px;
			font-weight: 500;
			color: #163300;
			padding-left: 34px;
		}

		.about-content ul li:before {
			width: 24px;
			height: 24px;
			background-size: 10px;
			top: 2px;
		}

		.about-content .btn-default {
			padding: 14px 32px;
			border-radius: 999px;
			font-size: 16px;
		}

		@media only screen and (max-width: 991px) {
			.kara-navbar-layout {
				grid-template-columns: auto auto auto;
				row-gap: 0;
			}

			.main-menu {
				display: none;
			}

			.navbar-toggle {
				display: flex;
				order: 3;
			}

			.kara-nav-cta {
				order: 2;
			}

			.kara-navbar-card {
				padding: 0 20px;
				min-height: 72px;
			}

			.kara-navbar-layout {
				min-height: 72px;
			}

			.kara-brand-mark {
				width: 210px;
				height: 78px;
			}

			.mobile-cta {
				display: block;
			}

			.hero.kara-hero {
				padding: 24px 0 56px;
				min-height: auto;
				display: block;
			}

			.kara-hero-shell {
				min-height: auto;
				display: block;
			}

			.kara-brand-mark {
				width: 210px;
				height: 78px;
			}

			.consultation-wrap {
				grid-template-columns: 1fr;
				gap: 26px;
			}

			.consultation-copy h2 {
				font-size: 36px;
			}

			.consultation-media-main {
				height: auto;
			}

			.consultation-form-card {
				max-height: none;
				overflow: visible;
			}

			.about-us {
				padding: 80px 0 70px;
			}

			.about-image {
				margin-right: 0;
				margin-bottom: 70px;
			}

			.about-img-2 {
				right: 20px;
				bottom: -36px;
				max-width: 280px;
			}

			.about-us .section-title h2 {
				font-size: 48px;
			}

			.up-district-grid {
				grid-template-columns: repeat(3, minmax(0, 1fr));
			}
		}

		@media only screen and (max-width: 767px) {
			.kara-brand-mark {
				width: 190px;
				height: 72px;
			}

			.hero.kara-hero {
				padding: 20px 0 42px;
			}

			.consultation-copy h2 {
				font-size: 28px;
			}

			.consultation-copy p {
				font-size: 16px;
			}

			.consultation-media-main img {
				max-height: none;
			}

			.consultation-form-card {
				padding: 18px;
				border-radius: 22px;
			}

			.consultation-tabs {
				grid-template-columns: 1fr;
				border-radius: 20px;
			}

			.consultation-submit {
				width: 100%;
			}

			.kara-nav-cta .btn-default {
				padding: 10px 14px !important;
				font-size: 14px;
			}

			.kara-nav-cta .btn-default span {
				margin-left: 6px;
			}

			.about-us {
				padding: 56px 0 48px;
			}

			.about-image {
				margin-bottom: 26px;
			}

			.about-img-1,
			.about-img-2 {
				border-radius: 20px;
			}

			.about-img-2 {
				position: relative;
				right: auto;
				bottom: auto;
				max-width: 100%;
				margin: 18px auto 0;
				border-width: 6px;
			}

			.about-image::after {
				display: none;
			}

			.about-us .section-title h2 {
				font-size: 34px;
			}

			.about-content p,
			.about-content ul li {
				font-size: 15px;
			}

			.up-presence-section {
				padding: 56px 0;
			}

			.up-presence-card {
				padding: 24px 18px;
				border-radius: 20px;
			}

			.up-presence-heading h2 {
				font-size: 30px;
			}

			.up-presence-heading p {
				font-size: 15px;
			}

			.up-district-grid {
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 10px;
			}

			.up-district-item {
				padding: 12px 10px;
				font-size: 14px;
			}
		}

		.fixed-contact {
			position: fixed;
			bottom: 20px;
			right: 20px;
			display: flex;
			flex-direction: column;
			gap: 10px;
			z-index: 9999;
		}

		.contact-btn {
			width: 50px;
			height: 50px;
			border-radius: 50%;
			display: flex;
			align-items: center;
			justify-content: center;
			color: #fff;
			font-size: 20px;
			text-decoration: none;
		}

		.call-btn {
			background: #28a745;
		}

		.whatsapp-btn {
			background: #25D366;
		}

		.custom-modal {
			position: fixed;
			inset: 0;
			background: rgba(6, 18, 12, 0.72);
			backdrop-filter: blur(12px);
			display: none;
			justify-content: center;
			align-items: center;
			padding: 24px;
			z-index: 999999;
			overflow-y: auto;
		}

		.custom-modal.is-visible {
			display: flex;
		}

		.offer-modal-open {
			overflow: hidden;
		}

		.modal-box {
			position: relative;
			width: min(94vw, 980px);
			max-height: calc(100dvh - 48px);
			display: grid;
			grid-template-columns: minmax(0, 1.02fr) minmax(340px, 0.98fr);
			background: #ffffff;
			border-radius: 24px;
			overflow: hidden;
			box-shadow: 0 28px 80px rgba(0, 0, 0, 0.36);
			border: 1px solid rgba(255, 255, 255, 0.42);
			animation: popupZoom 0.28s ease;
		}

		.modal-media {
			position: relative;
			min-height: 520px;
			background: #eaf5e7;
			overflow: hidden;
		}

		.modal-img {
			width: 100%;
			height: 100%;
			min-height: 520px;
			object-fit: cover;
			object-position: center center;
			display: block;
		}

		.modal-offer-content {
			position: relative;
			padding: 52px 44px 44px;
			display: flex;
			flex-direction: column;
			justify-content: center;
			gap: 16px;
			color: #142213;
			background:
				radial-gradient(circle at 100% 0%, rgba(137, 234, 95, 0.22), transparent 36%),
				linear-gradient(160deg, #ffffff 0%, #f7fff2 100%);
		}

		.modal-offer-kicker {
			display: inline-flex;
			align-items: center;
			align-self: flex-start;
			padding: 9px 16px;
			border-radius: 999px;
			background: #e5f6e5;
			color: #16732d;
			font-size: 14px;
			font-weight: 700;
			text-transform: uppercase;
			letter-spacing: 0;
		}

		.modal-offer-content h3 {
			margin: 0;
			font-size: 38px;
			line-height: 1.12;
			color: #112817;
			letter-spacing: 0;
		}

		.modal-offer-content p {
			margin: 0;
			font-size: 17px;
			line-height: 1.65;
			color: #44584d;
		}

		.modal-benefits {
			display: grid;
			grid-template-columns: 1fr;
			gap: 9px;
			padding: 0;
			margin: 2px 0 2px;
			list-style: none;
		}

		.modal-benefits li {
			display: flex;
			align-items: center;
			gap: 10px;
			color: #17351d;
			font-size: 15px;
			font-weight: 600;
		}

		.modal-benefits i {
			width: 24px;
			height: 24px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			border-radius: 50%;
			background: rgba(37, 211, 102, 0.14);
			color: #179a47;
			font-size: 12px;
			flex: 0 0 auto;
		}

		.modal-offer-actions {
			display: flex;
			flex-wrap: wrap;
			gap: 12px;
			margin-top: 6px;
		}

		.modal-offer-actions a {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-height: 52px;
			padding: 0 22px;
			border-radius: 999px;
			font-size: 16px;
			font-weight: 700;
			text-decoration: none;
			transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
		}

		.modal-offer-actions a:hover {
			transform: translateY(-1px);
		}

		.modal-whatsapp-link {
			background: #25D366;
			color: #ffffff;
			box-shadow: 0 14px 28px rgba(37, 211, 102, 0.24);
		}

		.modal-quote-link {
			background: #163300;
			color: #ffffff;
			box-shadow: 0 12px 24px rgba(22, 51, 0, 0.20);
		}

		.close-btn {
			position: absolute;
			top: 18px;
			right: 18px;
			background: #fff;
			width: 46px;
			height: 46px;
			border: 0;
			border-radius: 50%;
			color: #566159;
			font-size: 18px;
			cursor: pointer;
			z-index: 10;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			box-shadow: 0 12px 28px rgba(0, 0, 0, 0.16);
			transition: transform 0.2s ease, color 0.2s ease;
		}

		.close-btn:hover {
			color: #163300;
			transform: scale(1.04);
		}

		@keyframes popupZoom {
			from {
				transform: scale(0.92) translateY(12px);
				opacity: 0;
			}

			to {
				transform: scale(1);
				opacity: 1;
			}
		}

		@media (max-width: 767px) {
			.custom-modal {
				align-items: flex-start;
				padding: 14px;
			}

			.modal-box {
				width: min(100%, 430px);
				max-height: calc(100dvh - 28px);
				grid-template-columns: 1fr;
				border-radius: 20px;
				overflow-y: auto;
			}

			.modal-media {
				min-height: 0;
				height: clamp(220px, 42dvh, 320px);
			}

			.modal-img {
				min-height: 0;
				height: 100%;
				object-position: center top;
			}

			.modal-offer-content {
				padding: 24px 20px 22px;
				gap: 12px;
			}

			.modal-offer-content h3 {
				font-size: 28px;
				line-height: 1.12;
			}

			.modal-offer-content p {
				font-size: 15px;
				line-height: 1.55;
			}

			.modal-benefits {
				gap: 7px;
			}

			.modal-offer-actions a {
				width: 100%;
				min-height: 48px;
			}

			.close-btn {
				top: 10px;
				right: 10px;
				width: 42px;
				height: 42px;
			}
		}

		@media only screen and (max-width: 575px) {
			.topbar.kara-topbar {
				padding: 10px 0 !important;
			}

			.topbar-contact-info ul {
				display: grid !important;
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 8px;
				width: 100%;
				margin: 0 !important;
				padding: 0 !important;
			}

			.topbar-contact-info ul li:first-child,
			.topbar-contact-info ul li:last-child {
				grid-column: 1 / -1;
			}

			.topbar-contact-info ul li a {
				width: 100%;
				min-height: 42px;
				padding: 9px 12px !important;
				font-size: 13.5px;
				font-weight: 700;
				white-space: nowrap;
				overflow: hidden;
				text-overflow: ellipsis;
			}

			.topbar-contact-info ul li:first-child a,
			.topbar-contact-info ul li:last-child a {
				max-width: 360px;
				margin: 0 auto;
			}

			.kara-navbar-card,
			.kara-navbar-layout {
				min-height: 72px !important;
			}

			.kara-navbar-card {
				padding: 0 20px !important;
			}

			.kara-navbar-layout {
				grid-template-columns: auto auto !important;
				justify-content: space-between;
				column-gap: 12px !important;
			}

			.kara-brand,
			.kara-brand-mark {
				width: 118px !important;
				height: 58px !important;
				max-width: 118px !important;
				margin: 0 !important;
				overflow: visible !important;
			}

			header.main-header .navbar-brand img,
			.kara-brand-mark img {
				width: 100% !important;
				height: 152% !important;
				max-height: none !important;
				margin: 0 !important;
				object-fit: contain;
				transform: scale(1.08) !important;
				transform-origin: left center;
			}

			.slicknav_btn {
				width: 48px !important;
				height: 48px !important;
				margin: 0 !important;
				border-radius: 14px !important;
			}

			.hero.kara-hero {
				padding-top: 18px !important;
			}
		}

/* Shared site layout and CMS helpers */
.site-page-content { min-height: 40vh; }
.services-slider .swiper-wrapper { align-items: stretch; }
.services-slider .swiper-slide { height: auto; display: flex; }
.services-slider .service-item { width: 100%; height: 100%; min-height: 430px; display: flex; flex-direction: column; }
.services-slider .service-image { flex: 0 0 auto; }
.services-slider .service-image figure { aspect-ratio: 1.35 / 1; overflow: hidden; }
.services-slider .service-image img { width: 100%; height: 100%; object-fit: cover; }
.services-slider .service-content { flex: 1; display: flex; flex-direction: column; }
.services-slider .service-content p { flex: 1; }
body.page-services { padding: 0 !important; }
body.page-services .page-header { margin-top: -162px; padding: 260px 0 100px; }
body.page-services main > .page-services { padding-top: 80px; }
.page-services .service-image figure,
.our-services .service-image figure { aspect-ratio: 1.35 / 1; overflow: hidden; }
.page-services .service-image figure img,
.our-services .service-image figure img { width: 100%; height: 100%; object-fit: cover; }
body.page-services main > .page-services .service-item { min-height: 470px; }
body.page-services main > .page-services .service-image figure { aspect-ratio: 1.18 / 1; }
body.page-services main > .page-services .service-content { padding: 28px; }
.page-contact .contact-information .row:last-child {
	align-items: stretch;
}
.page-contact .contact-information .row:last-child > [class*="col-"] {
	display: flex;
}
.page-contact .contact-info-item {
	width: 100%;
	min-height: 390px;
}
.page-contact .contact-info-item .contact-image,
.page-contact .contact-info-item .contact-image figure {
	height: 100%;
	min-height: 390px;
}
.page-contact .contact-info-item .contact-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.page-about .testimonial-author-img figure {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.page-about .testimonial-author-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.page-home .our-process .row > .col-lg-4,
.page-home .our-process .row > .col-lg-3 { width: 25%; flex: 0 0 25%; max-width: 25%; }
.page-home .our-process .step-item { padding-left: 18px; padding-right: 18px; }
.page-home .our-process .step-content p { min-height: 72px; line-height: 1.5; }
.page-about .why-choose-us .row > .col-lg-4 { width: 25%; flex: 0 0 25%; max-width: 25%; }
.page-about .why-choose-us .why-choose-item { height: 100%; }
.page-about .latest-projects .container > .row:not(:first-child):not(.kara-about-project-gallery-row) {
	display: none !important;
}
.page-about .latest-projects {
	overflow: hidden;
}
.page-about .latest-projects .container {
	width: min(100% - 30px, 1320px);
	max-width: 1320px;
}
.page-about .latest-projects .section-title {
	text-align: center;
	margin-bottom: 52px;
}
.page-about .latest-projects .kara-about-project-gallery-row {
	justify-content: center;
	margin-left: 0;
	margin-right: 0;
}
.page-about .latest-projects .kara-about-project-gallery-row > .col-md-12 {
	flex: 0 0 100%;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}
.page-about .latest-projects .kara-about-project-gallery {
	position: relative;
	padding-bottom: 0;
	width: 100%;
	margin: 0 auto;
}
.page-about .latest-projects .kara-about-project-gallery .swiper {
	width: 100%;
	overflow: hidden;
	padding: 0 2px 4px;
}
.page-about .latest-projects .kara-about-project-gallery .swiper-wrapper {
	align-items: stretch;
}
.page-about .latest-projects .kara-about-project-gallery .swiper-slide {
	height: auto;
	display: flex;
	justify-content: center;
	min-width: 0;
}
.page-about .latest-projects .kara-about-project-slide.team-item {
	width: 100%;
	min-height: clamp(340px, 31vw, 440px);
}
.page-about .latest-projects .kara-about-project-slide .team-image figure {
	min-height: clamp(260px, 24vw, 350px);
	aspect-ratio: 1 / 1.05;
}
.page-about .latest-projects .kara-about-project-slide .team-content {
	min-height: 68px;
	padding: 18px 46px 18px 18px;
}
.page-about .latest-projects .kara-about-project-slide .team-content h2 {
	font-size: clamp(18px, 1.25vw, 20px);
}
.page-about .latest-projects .kara-about-project-gallery .swiper-pagination {
	position: relative;
	bottom: 0;
	margin-top: 32px;
	text-align: center;
}
.page-about .latest-projects .kara-about-project-gallery .swiper-pagination .swiper-pagination-bullet {
	width: 16px;
	height: 16px;
	background: var(--accent-color);
	opacity: 1;
	margin: 0 5px;
	transition: all 0.3s ease-in-out;
}
/* Legacy about project row fallback, kept hidden above after the dynamic gallery is rendered. */
.page-about .latest-projects .row:last-child:not(.kara-about-project-gallery-row) {
	flex-wrap: nowrap;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	padding-bottom: 18px;
}
.page-about .latest-projects .row:last-child:not(.kara-about-project-gallery-row) > [class*="col-"] {
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
	scroll-snap-align: start;
}
.page-about .latest-projects .row:last-child:not(.kara-about-project-gallery-row)::-webkit-scrollbar { height: 8px; }
.page-about .latest-projects .row:last-child:not(.kara-about-project-gallery-row)::-webkit-scrollbar-thumb { background: var(--accent-color); border-radius: 20px; }
.team-slider .swiper-wrapper { align-items: stretch; }
.team-slider .swiper-slide { height: auto; display: flex; }
.team-list-actions { text-align: center; margin-top: 34px; }
.team-grid-page { padding: 100px 0; }
.team-item { width: 100%; height: 100%; min-height: 390px; display: flex; flex-direction: column; }
.team-image { flex: 1 1 auto; min-height: 0; }
.team-image figure { height: 100%; min-height: 315px; aspect-ratio: 1 / 1.12; overflow: hidden; }
.team-image img { width: 100%; height: 100%; object-fit: cover; }
.team-content { min-height: 48px; display: flex; align-items: center; justify-content: center; text-align: center; }
.team-content h2 { width: 100%; margin: 0; line-height: 1.2; }
.kara-project-gallery { padding: 100px 0 80px; }
.kara-project-gallery [data-project-grid] { row-gap: 30px; }
.kara-project-gallery [data-project-item][hidden] { display: none !important; }
.kara-project-image-card {
	width: 100%;
	height: 100%;
	border-radius: 8px;
	overflow: hidden;
	background: #ffffff;
	box-shadow: 0 12px 30px rgba(22, 51, 0, 0.1);
}
.kara-project-image-card figure {
	width: 100%;
	aspect-ratio: 4 / 3;
	margin: 0;
	overflow: hidden;
}
.kara-project-image-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}
.kara-project-image-card:hover img { transform: scale(1.04); }
.kara-project-pagination { margin-top: 42px; }
.kara-project-pagination .pagination { flex-wrap: wrap; justify-content: center; gap: 8px; }
.kara-project-pagination .disabled a { opacity: 0.45; pointer-events: none; }
@media only screen and (max-width: 991px) { .page-home .our-process .row > .col-lg-4, .page-home .our-process .row > .col-lg-3, .page-about .why-choose-us .row > .col-lg-4 { width: 50%; flex: 0 0 50%; max-width: 50%; } .page-about .latest-projects .row:last-child:not(.kara-about-project-gallery-row) > [class*="col-"] { flex-basis: 50%; max-width: 50%; } .page-about .latest-projects .container { width: min(100% - 24px, 960px); } .page-about .latest-projects .section-title { margin-bottom: 40px; } .page-about .latest-projects .kara-about-project-slide.team-item { min-height: 360px; } .page-about .latest-projects .kara-about-project-slide .team-image figure { min-height: 280px; } }
@media only screen and (max-width: 767px) { .services-slider .service-item { min-height: 390px; } body.page-services main > .page-services { padding-top: 58px; } .page-home .our-process .row > .col-lg-4, .page-home .our-process .row > .col-lg-3 { width: 100%; flex: 0 0 100%; max-width: 100%; } .team-grid-page { padding: 64px 0; } .team-item { min-height: 360px; } .team-image figure { min-height: 290px; } .kara-project-gallery { padding: 64px 0 58px; } .page-about .latest-projects { padding: 56px 0 34px; } .page-about .latest-projects .container { width: min(100% - 20px, 540px); } .page-about .latest-projects .section-title { margin-bottom: 32px; } .page-about .latest-projects .kara-about-project-gallery .swiper { overflow: visible; } .page-about .latest-projects .kara-about-project-slide.team-item { min-height: 350px; } .page-about .latest-projects .kara-about-project-slide .team-image figure { min-height: 270px; } }
