/* Main Container for Circles */
.circle-container {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 50px;
    flex-wrap: wrap;
    padding: 50px 20px;
}

/* Individual Circle Cards */
.circle-card {
    text-align: center;
    flex: 1 1 calc(33.33% - 30px);
    max-width: 300px;
    position: relative;
    margin-bottom: 40px;
}

/* Background Circles */
.background-circle,
.background-circle_1,
.background-circle_2 {
    width: 100px;
    height: 100px;
    background-color: rgba(79, 110, 244, 0.1);
    border-radius: 50%;
    position: absolute;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
    z-index: 1;
}

/* Positions of Background Circles */
.background-circle { top: -1rem; left: 2rem; }
.background-circle_1 { bottom: 15rem; right: 2rem; }
.background-circle_2 { top: -1rem; right: 2rem; }

/* Circular Icon */
.circle-icon {
    width: 18vw;
    height: 40vh;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto 20px auto;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.2), inset 0 -10px 15px rgba(0, 0, 0, 0.1);
    position: relative;
    z-index: 2;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Image Styles */
.circle-icon_1 img { max-width: 100vw; height: 35vh; margin-top: -0.10rem; }
.circle-icon_2 img { width: 100vw; height: 40vh; }
.circle-icon_3 img { width: 15vw; height: 20vh; }

/* Circle Card Text */
.circle-card h3 {
    font-size: 1.5rem;
    margin-top: 20px;
    font-weight: bold;
    color: #000099;
    text-align: center;
}

/* Hover Effect for First Letter */
.circle-card h3::first-letter {
    color: #000099;
    font-weight: bold;
    transition: color 0.3s ease, font-weight 0.3s ease;
}

.circle-card:hover h3::first-letter {
    color: #fd6400;
    font-weight: bold;
}

/* Paragraph Text */
.circle-card p {
    font-size: 14px;
    line-height: 1.5;
    color: rgb(0, 0, 0);
    margin-top: 10px;
    text-align: center;
}

/* Hover Effect */
.circle-icon:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3), inset 0 -10px 15px rgba(0, 0, 0, 0.15);
}

/* ✅ Responsive Design for All Screens */

/* 🎯 Extra Large Screens (Above 2400px) */
@media (min-width: 2400px) {
    .circle-card { max-width: 350px; }
    .circle-card h3 { font-size: 2rem; }
    .circle-card p { font-size: 16px; }
    .circle-icon { width: 18vw; height: 40vh; }
}

/* 🎯 Large Screens (1920px - 2399px) */
@media (max-width: 2399px) {
    .circle-card { max-width: 320px; }
    .circle-card h3 { font-size: 1.8rem; }
    .circle-card p { font-size: 15px; }
    .circle-icon { width: 17vw; height: 38vh; }
}

/* 🎯 Medium-Large Screens (1600px - 1919px) */
@media (max-width: 1919px) {
    .circle-card { max-width: 300px; }
    .circle-card h3 { font-size: 1.6rem; }
    .circle-card p { font-size: 14px; }
    .circle-icon { width: 16vw; height: 36vh; }
}

/* 🎯 Standard Desktop (1200px - 1599px) */
@media (max-width: 1599px) {
    .circle-card { max-width: 290px; }
    .circle-card h3 { font-size: 1.5rem; }
    .circle-card p { font-size: 13px; }
    .circle-icon { width: 15vw; height: 34vh; }
}

/* 🎯 Laptops & Small Desktops (992px - 1199px) */
@media (max-width: 1199px) {
    .circle-card { max-width: 280px; }
    .circle-card h3 { font-size: 1.4rem; }
    .circle-card p { font-size: 13px; }
    .circle-icon { width: 16vw; height: 35vh; }
}

/* 🎯 Tablets (768px - 991px) */
@media (max-width: 991px) {
    .circle-container { gap: 30px; }
    .circle-card { max-width: 250px; }
    .circle-icon { width: 14vw; height: 30vh; }
    .circle-card h3 { font-size: 1.2rem; }
    .circle-card p { font-size: 12px; }
    .background-circle, .background-circle_1, .background-circle_2 { width: 80px; height: 80px; }
}

/* 🎯 Small Tablets & Large Phones (576px - 767px) */
@media (max-width: 767px) {
    .circle-container { flex-direction: column; align-items: center; gap: 20px; }
    .circle-card { max-width: 100%; }
    .circle-icon { width: 120px; height: 120px; }
    .circle-icon img { width: 100%; height: auto; }
    .circle-card h3 { font-size: 1.1rem; }
    .circle-card p { font-size: 11px; }
    .background-circle, .background-circle_1, .background-circle_2 { width: 60px; height: 60px; }
}

/* 🎯 Large Phones (480px - 575px) */
@media (max-width: 575px) {
    .circle-card h3 { font-size: 1rem; }
    .circle-card p { font-size: 10px; }
    .circle-icon { width: 100px; height: 100px; }
    .background-circle, .background-circle_1, .background-circle_2 { width: 50px; height: 50px; }
}

/* 🎯 Small Phones (320px - 479px) */
@media (max-width: 479px) {
    .circle-card h3 { font-size: 0.9rem; }
    .circle-card p { font-size: 9px; }
    .circle-icon { width: 80px; height: 80px; }
    .background-circle, .background-circle_1, .background-circle_2 { width: 40px; height: 40px; }
}
