/* Service pages: dark glass hero form + intro visual. */
.tmj-hform {
	position: relative; display: flex; flex-direction: column; gap: 18px; padding: 30px; border-radius: 28px;
	background: linear-gradient(160deg, rgba(15, 23, 42, .82), rgba(11, 18, 34, .92));
	border: 1px solid rgba(255, 255, 255, .12); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
	box-shadow: 0 40px 80px rgba(0, 0, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .06); font-family: Manrope, sans-serif;
}
.tmj-hform::before {
	content: ""; position: absolute; inset: -1px; border-radius: 28px; padding: 1px; pointer-events: none;
	background: linear-gradient(140deg, rgba(74, 222, 128, .7), transparent 35%, transparent 65%, rgba(13, 148, 136, .6));
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude;
}
.tmj-hform__head { display: flex; align-items: center; gap: 14px; padding-bottom: 18px; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.tmj-hform__ico {
	width: 48px; height: 48px; flex: none; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, #22C55E, #15803D); box-shadow: 0 10px 24px rgba(22, 163, 74, .4);
}
.tmj-hform__ico svg { width: 22px; height: 22px; fill: #fff; }
.tmj-hform__ttl { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.tmj-hform__ttl strong { color: #fff; font-size: 20px; font-weight: 800; letter-spacing: -0.01em; }
.tmj-hform__ttl small { color: #94A3B8; font-size: 13px; }
.tmj-hform__live {
	display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: 100px; font-size: 13px; font-weight: 700;
	color: #4ADE80; border: 1px solid rgba(74, 222, 128, .45); background: rgba(22, 163, 74, .1); white-space: nowrap;
}
.tmj-hform__live::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #4ADE80; animation: tmj-pulse 2s infinite; box-shadow: 0 0 0 4px rgba(74, 222, 128, .25); }
.tmj-hform__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.tmj-hform__full { grid-column: 1 / -1; }
.tmj-hform label { display: flex; flex-direction: column; gap: 7px; margin: 0; }
.tmj-hform label > span { color: #E2E8F0; font-size: 13px; font-weight: 700; }
.tmj-hform label i { color: #F87171; font-style: normal; }
.tmj-hform input, .tmj-hform select, .tmj-hform textarea {
	width: 100%; border-radius: 12px; border: 1px solid rgba(255, 255, 255, .14); background-color: rgba(255, 255, 255, .04);
	color: #fff; padding: 12px 14px; font: inherit; font-size: 15px; transition: border-color .2s, background-color .2s, box-shadow .2s;
}
.tmj-hform select {
	appearance: none; -webkit-appearance: none; padding-right: 38px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: right 12px center; background-size: 16px;
}
.tmj-hform select option { color: #0F172A; }
.tmj-hform input::placeholder, .tmj-hform textarea::placeholder { color: #64748B; }
.tmj-hform input:focus, .tmj-hform select:focus, .tmj-hform textarea:focus {
	outline: none; border-color: #22C55E; background-color: rgba(22, 163, 74, .08); box-shadow: 0 0 0 4px rgba(22, 163, 74, .18);
}
.tmj-hform .is-invalid { border-color: #F87171 !important; box-shadow: 0 0 0 3px rgba(248, 113, 113, .18) !important; }
.tmj-hform textarea { resize: vertical; min-height: 84px; }
.tmj-hform__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; width: 100%; border: 0; border-radius: 14px;
	padding: 17px 24px; background: linear-gradient(135deg, #22C55E, #15803D); color: #fff; font: inherit; font-weight: 800;
	font-size: 16px; cursor: pointer; box-shadow: 0 14px 30px rgba(22, 163, 74, .45); transition: transform .2s, box-shadow .2s;
}
.tmj-hform__btn:hover, .tmj-hform__btn:focus { transform: translateY(-2px); box-shadow: 0 20px 40px rgba(22, 163, 74, .6); color: #fff; }
.tmj-hform__btn svg { width: 20px; height: 20px; }
.tmj-hform__note { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0; font-size: 12px; color: #94A3B8; }
.tmj-hform__note svg { width: 14px; height: 14px; fill: #4ADE80; flex: none; }

/* Intro visual */
.tmj-intro-vis { position: relative; padding: 0 0 36px 36px !important; isolation: isolate; }
.tmj-intro-vis::before {
	content: ""; position: absolute; z-index: -1; left: 0; bottom: 0; width: 70%; height: 70%; border-radius: 32px;
	background: linear-gradient(135deg, #22C55E, #15803D 55%, #0D9488);
}
.tmj-intro__img { overflow: hidden; border-radius: 32px; box-shadow: 0 34px 70px rgba(15, 23, 42, .22); }
.tmj-intro__img img { width: 100%; aspect-ratio: 5 / 4.4; object-fit: cover; transition: transform 1.2s ease; }
.tmj-intro-vis:hover .tmj-intro__img img { transform: scale(1.05); }
.tmj-istat {
	position: absolute !important; z-index: 2; background: #fff; border-radius: 18px; box-shadow: 0 24px 50px rgba(15, 23, 42, .18);
	animation: tmj-float 6s ease-in-out infinite;
}
.tmj-istat p { margin: 0; white-space: nowrap; }
.tmj-istat .tmj-fact__v .elementor-heading-title { font-size: 2.2rem !important; }
.tmj-istat .tmj-fact .elementor-widget-text-editor, .tmj-istat .elementor-widget-text-editor { color: #424853 !important; }
.tmj-istat--0 { top: 26px; right: -22px; }
.tmj-istat--1 { bottom: 0; right: 14%; animation-delay: -3s; }

@media (max-width: 1024px) {
	.tmj-hform-wrap { max-width: 640px; }
	.tmj-istat--0 { right: 10px; }
}
@media (max-width: 767px) {
	.tmj-hform { padding: 20px; border-radius: 22px; }
	.tmj-hform__grid { grid-template-columns: 1fr; }
	.tmj-hform__live { display: none; }
	.tmj-intro-vis { padding: 0 0 24px 18px !important; }
	.tmj-istat { padding: 10px 14px !important; }
	.tmj-istat .tmj-fact__v .elementor-heading-title { font-size: 1.6rem !important; }
}

.tmj-istat { width: max-content !important; max-width: max-content !important; }
@media (max-width: 767px) { .tmj-istat--0 { top: 14px; right: 8px; left: auto; } .tmj-istat--1 { bottom: 0; right: 10%; left: auto; } }

@media (max-width: 767px) { .tmj-shero .tmj-hero-trust .elementor-heading-title { white-space: normal !important; font-size: 13px !important; } .tmj-shero .tmj-hero-trust > .e-con { min-width: 0; } }
