/* ---------------------------- Base Styles for Features ---------------------------- */

/* General Feature Column Styles */
.feature-col {
    text-align: center; /* Center the content inside the column */
    padding: 15px !important; /* General padding for desktop and tablet */
}

/* Feature Column Headings */
.feature-col h3 {
    font-size: 1.25rem; /* Slightly smaller heading size */
    font-weight: 600; /* Semi-bold for better visibility */
    margin-bottom: 0.5rem; /* Reduced space between heading and paragraph */
    color: #fff; /* White color for better contrast with dark background */
}

/* Feature Column Paragraphs */
.feature-col p {
    font-size: 0.875rem; /* Smaller paragraph size */
    line-height: 1.4; /* Slightly tighter line spacing */
    color: #fff; /* White text color for contrast */
    margin-bottom: 0.75rem; /* Slightly reduced margin below paragraph */
}

/* Feature Column Images */
.feature-col img {
    max-width: 80%; /* Reduce the size of the image */
    height: auto; /* Maintain aspect ratio */
}

/* Feature Column Buttons */
.feature-col .btn {
    font-size: 0.875rem; /* Smaller button text */
    padding: 0.5rem 1rem; /* Smaller button padding */
}


/* ---------------------------- Icon Styles ---------------------------- */


.feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    margin-bottom: 1rem;
    font-size: 2rem;
    color: #fff;
    border-radius: .75rem;
}

.icon-link {
    display: inline-flex;
    align-items: center;
}

.icon-link > .bi {
    margin-top: .125rem;
    margin-left: .125rem;
    transition: transform .25s ease-in-out;
    fill: currentColor;
}

.icon-link:hover > .bi {
    transform: translate(.25rem);
}

.icon-square {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    font-size: 1.5rem;
    border-radius: .75rem;
}


/* ---------------------------- Text Shadow Styles ---------------------------- */


.text-shadow-1 { 
    text-shadow: 0 .125rem .25rem rgba(0, 0, 0, .25); 
}

.text-shadow-2 { 
    text-shadow: 0 .25rem .5rem rgba(0, 0, 0, .25); 
}

.text-shadow-3 { 
    text-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .25); 
}


/* ---------------------------- Rounded Corners Styles ---------------------------- */


.rounded-4 { 
    border-radius: .5rem; 
}

.rounded-5 { 
    border-radius: 1rem; 
}


/* ---------------------------- Example Divider Styles ---------------------------- */


.b-example-divider {
    height: 3rem;
    background-color: rgba(0, 0, 0, .1);
    border: solid rgba(0, 0, 0, .15);
    border-width: 1px 0;
    box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.bi {
    vertical-align: -.125em;
    fill: currentColor;
}


/* ---------------------------- Mobile-Specific Adjustments ---------------------------- */


@media (max-width: 767px) {
    .feature-col {
        padding: 10px; /* Less padding for a more compact mobile view */
        margin: 0 10px; /* Add some margin on the left and right for white space */
    }

    .feature-col h3 {
        font-size: 1.1rem; /* Smaller heading size on mobile */
    }

    .feature-col p {
        font-size: 0.8rem; /* Smaller paragraph text */
        margin-bottom: 0.5rem; /* Reduce margin below paragraph */
    }

    .feature-col img {
        max-width: 70%; /* Further reduce image size on mobile */
    }

    .feature-col .btn {
        font-size: 0.75rem; /* Smaller button text on mobile */
        padding: 0.4rem 0.8rem; /* Smaller button padding */
    }
}
