/* Areas We Cover page: area cards grid (with the site-wide dark circle reveal on hover). */
.tmj-agrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; font-family: Manrope, sans-serif; }
.tmj-acard {
	--tmj-r: -1%;
	position: relative; display: flex; flex-direction: column; gap: 12px; padding: 26px 24px 24px; border-radius: 24px;
	background-color: #fff; border: 1px solid #E2E8F0; overflow: hidden;
	background-image: radial-gradient(circle at 92% 8%, #0F172A 0, #13233F var(--tmj-r), transparent var(--tmj-r));
	transition: --tmj-r .7s cubic-bezier(.22, 1, .36, 1), transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s, border-color .35s;
}
.tmj-acard:hover { --tmj-r: 160%; transform: translateY(-8px); border-color: transparent; box-shadow: 0 30px 60px rgba(15, 23, 42, .22); }
.tmj-acard__top { display: flex; align-items: center; justify-content: space-between; }
.tmj-acard__pin {
	width: 50px; height: 50px; border-radius: 15px; display: inline-flex; align-items: center; justify-content: center;
	color: #16A34A; background: linear-gradient(135deg, #F0FDF4, #DCFCE7);
	transition: background .4s, color .4s, transform .45s cubic-bezier(.34, 1.56, .64, 1);
}
.tmj-acard__pin svg { width: 24px; height: 24px; }
.tmj-acard:hover .tmj-acard__pin { background: linear-gradient(135deg, #22C55E, #15803D); color: #fff; transform: rotate(-10deg) scale(1.06); }
.tmj-acard__tag {
	padding: 5px 11px; border-radius: 100px; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase;
	color: #16A34A; background: #F0FDF4; border: 1px solid #D5EBDC; transition: background .4s, color .4s, border-color .4s;
}
.tmj-acard:hover .tmj-acard__tag { background: rgba(22, 163, 74, .18); border-color: rgba(74, 222, 128, .4); color: #4ADE80; }
.tmj-acard h3 { margin: 4px 0 0; color: #0F172A; font-size: 1.1rem; font-weight: 800; line-height: 1.3; transition: color .35s; }
.tmj-acard p { margin: 0; color: #424853; font-size: 14px; line-height: 1.6; flex: 1; transition: color .35s; }
.tmj-acard ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.tmj-acard li {
	padding: 4px 10px; border-radius: 100px; font-size: 12px; font-weight: 700; color: #0F172A; background: #F8FAFC;
	border: 1px solid #E2E8F0; transition: background .35s, color .35s, border-color .35s;
}
.tmj-acard__cta { display: inline-flex; align-items: center; gap: 8px; padding-top: 6px; color: #16A34A !important; font-size: 14px; font-weight: 800; transition: color .35s; }
.tmj-acard__cta svg { width: 16px; height: 16px; transition: transform .3s; }
.tmj-acard:hover h3 { color: #fff; }
.tmj-acard:hover p { color: #CBD5E1; }
.tmj-acard:hover li { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .14); color: #E2E8F0; }
.tmj-acard:hover .tmj-acard__cta { color: #4ADE80 !important; }
.tmj-acard:hover .tmj-acard__cta svg { transform: translateX(5px); }
.tmj-acard--other { background-color: #F0FDF4; border-style: dashed; border-color: #86C99D; }

@media (max-width: 1024px) { .tmj-agrid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) {
	.tmj-agrid { grid-template-columns: 1fr; }
	.tmj-acard:hover { transform: none; }
}
