:root {
    --hommex-color: #83C0E0;
    --hommex-dark: #091F5B;
    --hommex-soft: #E5E5E5;
	--hommex-second:#FF9900;
    --gray-soft: 3C3C3C;
}

.text-hommex {
	color: var(--hommex-color) !important; 
}

.bg-hommex {
	background-color: var(--hommex-color) !important; 
}

.bg-blue-soft {
	background-color: var(--hommex-soft) !important; 
}

.bg-gray-soft {
	background-color: var(--gray-soft) !important; 
}

.text-light-gray {
	color: #e9ecef !important; 
}

.border-hommex {
	border-color: var(--hommex-color) !important; 
}

.step-card {
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    border: 1px solid #f0f0f0;
}

.step-number {
    position: absolute;
    top: -15px;
    right: -10px;
    font-size: 5rem;
    font-weight: 900;
    color: #f3f3f3;
    z-index: 0;
    opacity: 0.6;
    line-height: 1;
    font-family: sans-serif;
}

.hover-lift-hommex:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(74, 90, 141, 0.15) !important;
    border-color: var(--hommex-color) !important;
}

.hover-lift-hommex:hover .icon-circle {
    transform: scale(1.1) rotate(5deg);
    background-color: var(--hommex-color) !important;
    color: #fff !important;
}

.icon-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.btn-light {
    background-color: #fff;
    color: var(--hommex-color);
    border: 1px solid transparent;
    transition: all 0.3s;
}

.btn-light:hover {
    background-color: var(--hommex-soft);
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.btn-outline-light {
    color: #fff;
    border: 2px solid rgba(255,255,255,0.5);
    background: transparent;
    transition: all 0.3s;
}

.btn-outline-light:hover {
    background-color: rgba(255,255,255,0.1);
    border-color: #fff;
    color: #fff;
}

.pulse-hommex {
    animation: pulse-blue 2s infinite;
}

@keyframes pulse-blue {
    0% { box-shadow: 0 0 0 0 rgba(74, 90, 141, 0.4); }
    70% { box-shadow: 0 0 0 15px rgba(74, 90, 141, 0); }
    100% { box-shadow: 0 0 0 0 rgba(74, 90, 141, 0); }
}

.lh-lg {
	line-height: 2.2 !important; 
}

.text-justify {
	text-align: justify; 
}

.rounded-5 {
	border-radius: 2rem !important; 
}

.rounded-4 {
	border-radius: 1.5rem !important; 
}

.fs-7 {
	font-size: 0.9rem; 
}

.z-1 {
	z-index: 1;
	color: var(--hommex-dark);
}

.opacity-10 {
	opacity: 0.1; 
}