:where([class^="ri-"])::before { content: "\f3c2"; }
body {
font-family: 'Poppins', sans-serif;
scroll-behavior: smooth;
}
@keyframes highlightSection {
0% {
box-shadow: 0 0 0 0 rgba(30, 64, 175, 0);
}
50% {
box-shadow: 0 0 0 20px rgba(30, 64, 175, 0.2);
}
100% {
box-shadow: 0 0 0 0 rgba(30, 64, 175, 0);
}
}
.highlight-section {
animation: highlightSection 1.5s ease-out;
}
.parallax-section {
background-attachment: fixed;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
.hero-gradient {
background: linear-gradient(90deg, rgba(255,255,255,0.95) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0) 100%);
}
.scroll-indicator {
animation: bounce 2s infinite;
}
@keyframes bounce {
0%, 20%, 50%, 80%, 100% {
transform: translateY(0);
}
40% {
transform: translateY(-20px);
}
60% {
transform: translateY(-10px);
}
}
.product-card:hover .product-overlay {
opacity: 1;
}
.product-card:hover img {
transform: scale(1.05);
}
.timeline-item::before {
content: '';
position: absolute;
left: -8px;
top: 0;
width: 16px;
height: 16px;
border-radius: 50%;
background-color: #1e40af;
z-index: 1;
}
.timeline-item::after {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 1px;
background-color: #e5e7eb;
}
.timeline-item:last-child::after {
height: 0;
}
input:focus, textarea:focus {
outline: none;
border-color: #1e40af;
}
.custom-checkbox {
appearance: none;
-webkit-appearance: none;
width: 20px;
height: 20px;
border: 2px solid #d1d5db;
border-radius: 4px;
outline: none;
cursor: pointer;
position: relative;
}
.custom-checkbox:checked {
background-color: #1e40af;
border-color: #1e40af;
}
.custom-checkbox:checked::after {
content: '';
position: absolute;
left: 6px;
top: 2px;
width: 5px;
height: 10px;
border: solid white;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.custom-switch {
position: relative;
display: inline-block;
width: 50px;
height: 24px;
}
.custom-switch input {
opacity: 0;
width: 0;
height: 0;
}
.switch-slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
transition: .4s;
border-radius: 34px;
}
.switch-slider:before {
position: absolute;
content: "";
height: 16px;
width: 16px;
left: 4px;
bottom: 4px;
background-color: white;
transition: .4s;
border-radius: 50%;
}
input:checked + .switch-slider {
background-color: #1e40af;
}
input:checked + .switch-slider:before {
transform: translateX(26px);
}
.tab-button.active {
color: #1e40af;
border-bottom: 2px solid #1e40af;
}
.tab-content {
display: none;
}
.tab-content.active {
display: block;
}
.scroll-animation {
opacity: 0;
transform: translateY(30px);
transition: opacity 0.6s ease, transform 0.6s ease;
}
.scroll-animation.visible {
opacity: 1;
transform: translateY(0);
}
		.blog-card:hover {
transform: translateY(-5px);
}
.category-button.active {
color: #1e40af;
background-color: #eff6ff;
border-color: #1e40af;
}

.article-content h2 {
font-size: 1.875rem;
font-weight: 700;
color: #1f2937;
margin-top: 2rem;
margin-bottom: 1rem;
}
.article-content h3 {
font-size: 1.5rem;
font-weight: 600;
color: #1f2937;
margin-top: 1.5rem;
margin-bottom: 0.75rem;
}
.article-content p {
margin-bottom: 1.5rem;
color: #374151;
}
.article-content ul, .article-content ol {
margin-bottom: 1.5rem;
padding-left: 1.5rem;
}
.article-content li {
margin-bottom: 0.5rem;
color: #374151;
}
.article-content blockquote {
border-left: 4px solid #1e40af;
background-color: #f8fafc;
padding: 1.5rem;
margin: 2rem 0;
font-style: italic;
font-size: 1.125rem;
color: #475569;
}
.article-content strong {
font-weight: 600;
color: #1f2937;
}
.progress-bar {
position: fixed;
top: 0;
left: 0;
width: 0%;
height: 3px;
background-color: #1e40af;
z-index: 1000;
transition: width 0.3s ease;
}
.social-share button:hover {
transform: translateY(-2px);
}
.custom-checkbox {
appearance: none;
-webkit-appearance: none;
width: 20px;
height: 20px;
border: 2px solid #d1d5db;
border-radius: 4px;
outline: none;
cursor: pointer;
position: relative;
}
.custom-checkbox:checked {
background-color: #1e40af;
border-color: #1e40af;
}
.custom-checkbox:checked::after {
content: '';
position: absolute;
left: 6px;
top: 2px;
width: 5px;
height: 10px;
border: solid white;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.comment-reply {
margin-left: 3rem;
border-left: 2px solid #e5e7eb;
padding-left: 1rem;
}
input:focus, textarea:focus {
outline: none;
border-color: #1e40af;
}
.date-picker::-webkit-calendar-picker-indicator {
display: none;
}
 .parallax-section {
            background-attachment: fixed;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
        }

        .timeline-item {
            position: relative;
            padding-left: 30px;
            padding-bottom: 40px;
        }

        .timeline-item::before {
            content: '';
            position: absolute;
            left: 0;
            top: 8px;
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background-color: #1e40af;
            z-index: 1;
        }

        .timeline-item::after {
            content: '';
            position: absolute;
            left: 5px;
            top: 20px;
            bottom: 0;
            width: 2px;
            background-color: #e5e7eb;
        }

        .timeline-item:last-child::after {
            display: none;
        }

        .scroll-animation {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.6s ease, transform 0.6s ease;
        }

        .scroll-animation.visible {
            opacity: 1;
            transform: translateY(0);
        }

        .process-step {
            position: relative;
        }

        .process-step::after {
            content: '';
            position: absolute;
            top: 50%;
            right: -15px;
            width: 30px;
            height: 2px;
            background-color: #e5e7eb;
            transform: translateY(-50%);
        }

        .process-step:last-child::after {
            display: none;
        }

        .team-card:hover .team-overlay {
            opacity: 1;
        }
.faq-item.active .faq-answer {
max-height: 1000px;
opacity: 1;
padding: 1rem 0;
}
.faq-item.active .faq-toggle i {
transform: rotate(180deg);
}
.faq-answer {
max-height: 0;
opacity: 0;
overflow: hidden;
transition: all 0.3s ease-in-out;
padding: 0;
}
.category-tab.active {
color: #1e40af;
border-color: #1e40af;
background-color: #eff6ff;
}
.wp-block-list{
list-style-type:disc;
padding-left: 1.5rem;
}

/* For larger screens (e.g., desktop) */
#quote-request-modal .p-6 {
    max-height: 80vh; /* Use a max height for the modal content */
    overflow-y:auto; /* Enable scrolling inside the modal */
}

