/* ============================================================
   HOTMODO Homepage — premium industrial styling
   Scoped to front page (post 8) via .home / .elementor-8
   ============================================================ */

/* ---------- HERO ---------- */
.elementor-element-aryqmqp {
	position: relative;
	overflow: hidden;
}
.elementor-element-aryqmqp::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 75% 60% at 82% 10%, rgba(238, 33, 33, 0.30) 0%, transparent 60%),
		radial-gradient(ellipse 55% 50% at 6% 88%, rgba(255, 77, 109, 0.18) 0%, transparent 55%);
	pointer-events: none;
}
.elementor-element-aryqmqp::after {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
	background-size: 46px 46px;
	mask-image: radial-gradient(ellipse 70% 70% at 30% 20%, #000 0%, transparent 75%);
	-webkit-mask-image: radial-gradient(ellipse 70% 70% at 30% 20%, #000 0%, transparent 75%);
	pointer-events: none;
}

/* hero eyebrow badge */
.elementor-element-1838a7a .elementor-heading-title {
	font-family: "Roboto", sans-serif;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	color: #ff8897;
}

/* hero headline */
.elementor-element-1ceeecb .elementor-heading-title {
	color: #ffffff !important;
	font-family: "Roboto", "Segoe UI", sans-serif !important;
	font-weight: 800 !important;
	text-transform: none !important;
	letter-spacing: 0.01em !important;
	mix-blend-mode: normal !important;
	text-shadow: 0 6px 30px rgba(0, 0, 0, 0.45) !important;
	max-width: 940px;
	margin-left: auto;
	margin-right: auto;
}
.elementor-element-1ceeecb .elementor-heading-title::after {
	content: "";
	display: block;
	width: 96px;
	height: 4px;
	margin: 26px auto 0;
	border-radius: 4px;
	background: linear-gradient(90deg, #ff4d6d, #8b0014, #ff4d6d);
	background-size: 200% 100%;
	animation: hm-gradient-flow 4s linear infinite;
	box-shadow: 0 0 18px rgba(255, 77, 109, 0.55);
}

@keyframes hm-gradient-flow {
	0%   { background-position: 0% 50%; }
	100% { background-position: 200% 50%; }
}

/* ---------- section heading accent bars ---------- */
.elementor-element-d146c73 .elementor-heading-title,
.elementor-element-4ad87fe .elementor-heading-title,
.elementor-element-1b39da2 .elementor-heading-title,
.elementor-element-80a6da6 .elementor-heading-title,
.elementor-element-14e88f0 .elementor-heading-title {
	position: relative;
	padding-left: 20px;
	font-weight: 800;
	letter-spacing: 0.02em;
}
.elementor-element-d146c73 .elementor-heading-title::before,
.elementor-element-4ad87fe .elementor-heading-title::before,
.elementor-element-1b39da2 .elementor-heading-title::before,
.elementor-element-80a6da6 .elementor-heading-title::before,
.elementor-element-14e88f0 .elementor-heading-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.14em;
	width: 6px;
	height: 0.72em;
	border-radius: 3px;
	background: linear-gradient(180deg, #ff4d6d, #8b0014);
	box-shadow: 0 0 12px rgba(255, 77, 109, 0.45);
}

/* eyebrow kicker */
.elementor-element-568c208 .elementor-heading-title {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	font-size: 0.85rem;
	color: #8b0014;
}

/* ---------- CTA buttons ---------- */
.elementor-element-be21a6a a.elementor-button,
.elementor-element-fc20217 a.elementor-button {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	letter-spacing: 0.04em;
	background: linear-gradient(135deg, #a30017, #8b0014);
	border-radius: 999px;
	padding: 16px 38px;
	box-shadow: 0 10px 26px rgba(139, 0, 20, 0.30);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.elementor-element-be21a6a a.elementor-button:hover,
.elementor-element-fc20217 a.elementor-button:hover {
	transform: translateY(-3px);
	box-shadow: 0 16px 34px rgba(139, 0, 20, 0.42);
}

/* ---------- product category cards ---------- */
.elementor-element-30da655,
.elementor-element-260b036,
.elementor-element-0613e51,
.elementor-element-84168a6,
.elementor-element-bd4daac,
.elementor-element-5a284f2 {
	background: #ffffff !important;
	border: 1px solid rgba(139, 0, 20, 0.08) !important;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 6px 24px rgba(139, 0, 20, 0.06) !important;
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}
.elementor-element-30da655:hover,
.elementor-element-260b036:hover,
.elementor-element-0613e51:hover,
.elementor-element-84168a6:hover,
.elementor-element-bd4daac:hover,
.elementor-element-5a284f2:hover {
	transform: translateY(-6px);
	border-color: rgba(139, 0, 20, 0.30) !important;
	box-shadow: 0 20px 44px rgba(139, 0, 20, 0.16) !important;
}
.elementor-element-30da655 .elementor-heading-title,
.elementor-element-260b036 .elementor-heading-title,
.elementor-element-0613e51 .elementor-heading-title,
.elementor-element-84168a6 .elementor-heading-title,
.elementor-element-bd4daac .elementor-heading-title,
.elementor-element-5a284f2 .elementor-heading-title {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 1.12rem;
	color: #2a1418;
	transition: color 0.3s ease;
}
.elementor-element-30da655:hover .elementor-heading-title,
.elementor-element-260b036:hover .elementor-heading-title,
.elementor-element-0613e51:hover .elementor-heading-title,
.elementor-element-84168a6:hover .elementor-heading-title,
.elementor-element-bd4daac:hover .elementor-heading-title,
.elementor-element-5a284f2:hover .elementor-heading-title {
	color: #8b0014;
}

/* ---------- industries cards ---------- */
.elementor-element-bce0bd9,
.elementor-element-e671dec,
.elementor-element-518e6e3,
.elementor-element-06f4c5b {
	background: #ffffff;
	border: 1px solid rgba(139, 0, 20, 0.08);
	border-left: 4px solid #8b0014;
	border-radius: 14px;
	padding: 28px 28px;
	box-shadow: 0 10px 34px rgba(139, 0, 20, 0.07);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.elementor-element-bce0bd9:hover,
.elementor-element-e671dec:hover,
.elementor-element-518e6e3:hover,
.elementor-element-06f4c5b:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 48px rgba(139, 0, 20, 0.15);
}
.elementor-element-bce0bd9 h5,
.elementor-element-e671dec h5,
.elementor-element-518e6e3 h5,
.elementor-element-06f4c5b h5 {
	font-family: "Roboto", sans-serif;
	font-weight: 800;
	font-size: 1.02rem;
	letter-spacing: 0.03em;
	color: #8b0014;
	margin: 0 0 10px;
}
.elementor-element-bce0bd9 p,
.elementor-element-e671dec p,
.elementor-element-518e6e3 p,
.elementor-element-06f4c5b p {
	color: #5a4147;
	line-height: 1.7;
	margin: 0;
}

/* ---------- Why Choose Us icon boxes ---------- */
.elementor-element-78c450d,
.elementor-element-498903b,
.elementor-element-1bce3dd,
.elementor-element-1516602 {
	background: #ffffff;
	border: 1px solid rgba(139, 0, 20, 0.08);
	border-top: 4px solid #8b0014;
	border-radius: 14px;
	padding: 30px 26px;
	box-shadow: 0 10px 30px rgba(139, 0, 20, 0.07);
	transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.elementor-element-78c450d:hover,
.elementor-element-498903b:hover,
.elementor-element-1bce3dd:hover,
.elementor-element-1516602:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 46px rgba(139, 0, 20, 0.15);
}
.elementor-element-78c450d .elementor-icon,
.elementor-element-498903b .elementor-icon,
.elementor-element-1bce3dd .elementor-icon,
.elementor-element-1516602 .elementor-icon {
	color: #8b0014;
}
.elementor-element-78c450d .elementor-icon-box-title,
.elementor-element-498903b .elementor-icon-box-title,
.elementor-element-1bce3dd .elementor-icon-box-title,
.elementor-element-1516602 .elementor-icon-box-title {
	font-family: "Roboto", sans-serif;
	font-weight: 800;
	color: #2a1418;
}

/* ---------- About media carousel ---------- */
.elementor-element-0b8c007 .elementor-swiper .swiper-slide img,
.elementor-8 .elementor-swiper .swiper-slide img {
	border-radius: 14px;
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.14);
}

/* ---------- contact form area ---------- */
.elementor-element-dzor69c .wpforms-container,
.elementor-element-dzor69c form {
	background: #ffffff;
	border-radius: 16px;
	padding: 34px;
	box-shadow: 0 16px 44px rgba(0, 0, 0, 0.08);
}
.elementor-element-dzor69c .wpforms-field input,
.elementor-element-dzor69c .wpforms-field textarea {
	border-radius: 10px;
	border: 1px solid rgba(139, 0, 20, 0.15);
}

/* ---------- responsive ---------- */
@media (max-width: 767px) {
	.elementor-element-1ceeecb .elementor-heading-title {
		font-size: 1.8rem !important;
		line-height: 1.25 !important;
	}
	.elementor-element-1ceeecb .elementor-heading-title::after {
		width: 64px;
		margin-top: 18px;
	}
}
