/* responsive.css */

/* General styles for better responsiveness */
body {
    overflow-x: hidden; /* Prevent horizontal scroll on smaller screens */
}

.container {
    max-width: 1140px; /* Limit max width for large screens */
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
}

/* Ensure images are fluid */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Media queries for different screen sizes */

/* Extra small devices (phones, 575.98px and down - Bootstrap XS) */
@media (max-width: 575.98px) {
    /* Adjust font sizes for readability */
    h1 {
        font-size: 2.2em;
    }
    h2 {
        font-size: 1.8em;
    }
    h3 {
        font-size: 1.4em;
    }
    p {
        font-size: 0.9em;
    }

    /* Adjust padding and margins for smaller screens */
    .ftco-section {
        padding: 3em 0;
    }

    /* Ensure content stacks vertically for general rows */
    .row {
        flex-direction: column; /* Stack columns vertically */
        align-items: center; /* Center items when stacked */
    }

    .col-md-6, .col-lg-4, .col-sm-12, .col-12 {
        width: 100%;
        margin-bottom: 15px; /* Add space between stacked columns */
    }

    /* Adjust navigation for mobile */
    .navbar-brand {
        font-size: 1.3em;
    }

    .ftco_navbar .navbar-nav {
        text-align: center;
    }

    .ftco_navbar .navbar-nav .nav-item {
        margin: 5px 0;
    }

    /* Mobile Menu Background */
    .ftco_navbar .navbar-collapse.show {
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.9), rgba(0, 0, 255, 0.4), transparent); /* Black, Blue, Transparent Gradient */
        backdrop-filter: blur(8px); /* Apply blur effect */
        padding: 15px 0; /* Reduced padding for a more compact menu */
        border-radius: 8px; /* Slightly smaller rounded corners */
        margin-top: 10px; /* Space from the top bar */
    }

    /* Specific adjustments for the hero section */
    .hero .row {
        flex-direction: column; /* Ensure hero section columns stack */
        align-items: center; /* Center items in hero row */
    }
    .hero .one-third, .hero .one-forth {
        width: 100%; /* Make sure columns take full width when stacked */
        flex: none; /* Remove flex-grow behavior for stacking */
        max-width: 100%; /* Ensure no max-width constraints */
    }
    .hero .text {
        text-align: center; /* Center text in hero section */
        padding: 0 15px; /* Add some horizontal padding */
        display: flex; /* Make it a flex container */
        flex-direction: column; /* Stack children vertically */
        align-items: center; /* Center children horizontally */
    }
    .hero .text h1 {
        font-size: 2.5em;
    }
    .hero .text h2 {
        font-size: 1.2em;
    }
    .hero .home-img {
        width: 100%;
        height: auto; /* Allow height to adjust naturally */
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 20px;
    }
    .hero .home-img img {
        width: 80%; /* Adjust image width for mobile */
        height: auto; /* Ensure aspect ratio is maintained */
        object-fit: contain; /* Contain the image within its bounds */
        object-position: center; /* Center the image */
        margin: 0; /* Remove any margins */
        box-shadow: none; /* Remove box-shadow for cleaner look on mobile */
    }
    /* Adjust the hero-wrap for background image */
    .hero-wrap {
        background-size: cover; /* Ensure background image covers the area */
        background-position: center center; /* Center the background image */
        background-repeat: no-repeat; /* Prevent repetition */
        min-height: 100vh; /* Ensure it takes full viewport height */
    }

    /* Adjust about section */
    .about-info .title-s {
        min-width: unset;
    }
    .about-info-box {
        padding: 10px 15px 5px 15px !important; /* Adjust padding */
    }
    .about-section .row.d-flex.align-items-stretch {
        flex-direction: column; /* Stack about columns vertically */
        align-items: center;
    }
    .col-right-padding {
        padding-left: 15px; /* Adjust padding for mobile */
        padding-right: 15px; /* Adjust padding for mobile */
        padding-top: 20px; /* Add space between image and text */
    }
    .img-about {
        width: 80%; /* Adjust image container width */
        margin: 0 auto; /* Center the image container */
    }

    /* Adjust skill section */
    .skill-mf .progress {
        margin-bottom: 15px;
    }
    .wrapper .card {
        width: 150px; /* Adjust card size */
        height: 150px; /* Adjust card size */
    }

    /* Adjust timeline items */
    .timeline-item {
        margin-left: 0;
        margin-right: 0;
        text-align: center;
    }

    .timeline-item::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .timeline-item-left .timeline-content,
    .timeline-item-right .timeline-content {
        left: auto;
        width: 100%;
        padding: 20px;
    }

    .timeline-item-left::after,
    .timeline-item-right::after {
        left: 50%;
    }

    /* Adjust certification cards */
    .container.certification-container .glass {
        width: 90%;
        margin: 10px auto;
        height: auto; /* Allow height to adjust to content */
    }
    .course-card {
        width: 100%;
        max-width: 300px;
        margin: 0 auto; /* Center cards */
        height: auto; /* Allow height to adjust to content */
    }

    /* Project cards */
    .project-card {
        width: 100%;
        min-width: unset; /* Remove min-width to allow full flexibility */
        height: auto; /* Adjust height based on content */
        margin-bottom: 20px; /* Space between cards */
    }

    /* Project modals */
    .modal-content {
        width: 95%;
        padding: 20px;
    }

    .modal-content h3 {
        font-size: 1.5rem;
    }

    /* Contact section */
    .contact-info .box {
        margin: 10px 0; /* Adjust margin for stacking */
        width: 100%;
    }
    .contact-section .btn.btn-primary {
        width: 100%; /* Full width button */
        padding: 10px 20px !important;
    }

}

/* Small devices (portrait tablets and large phones, 576px to 767.98px - Bootstrap SM) */
@media (min-width: 576px) and (max-width: 767.98px) {
    h1 {
        font-size: 3em;
    }
    h2 {
        font-size: 2.5em;
    }
    p {
        font-size: 1em;
    }

    .ftco-section {
        padding: 6em 0;
    }

    .col-md-6 {
        width: 100%;
    }

    /* Adjust navigation for tablet */
    .navbar-brand {
        font-size: 1.8em;
    }

    .hero .row {
        flex-direction: column; /* Ensure hero section columns stack */
        align-items: center; /* Center items in hero row */
    }
    .hero .one-third, .hero .one-forth {
        width: 100%; /* Make sure columns take full width when stacked */
        flex: none; /* Remove flex-grow behavior for stacking */
        max-width: 100%; /* Ensure no max-width constraints */
    }
    .hero .text {
        text-align: center; /* Center text for tablets */
        display: flex; /* Make it a flex container */
        flex-direction: column; /* Stack children vertically */
        align-items: center; /* Center children horizontally */
    }

    .hero .home-img {
        width: auto;
        height: auto;
        margin-top: 0;
    }
    .hero .home-img img {
        width: 100%;
        max-width: 300px; /* Limit image width */
        height: auto;
    }
    /* Adjust the hero-wrap for background image */
    .hero-wrap {
        background-size: cover;
        background-position: center center;
        min-height: 100vh;
    }

    /* Project cards */
    .project-card {
        width: calc(50% - 1rem); /* Two cards per row */
        margin-bottom: 20px;
    }
}

/* Medium devices (desktops, 768px and up) */
@media (min-width: 768px) {
    .hero .text {
        text-align: center; /* Ensure text remains centered */
        display: block; /* Revert to default block display */
        flex-direction: unset; /* Remove forced column direction */
        align-items: unset; /* Remove forced alignment */
    }
    /* Adjust the hero-wrap for background image on desktop */
    .hero-wrap {
        background-size: cover;
        background-position: center center;
        min-height: 100vh;
    }
}

/* Medium devices (tablets, 768px to 991.98px - Bootstrap MD) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .ftco-section {
        padding: 7em 0;
    }

    .hero .row {
        flex-direction: row; /* Ensure hero section columns are side-by-side */
        align-items: center; /* Center items vertically */
    }
    .hero .one-third, .hero .one-forth {
        width: auto; /* Allow columns to take their natural width */
        flex: 1; /* Distribute space evenly */
        max-width: none; /* Remove max-width constraints */
    }
    .hero .text {
        text-align: center; /* Center text for tablets */
    }

    .hero .home-img {
        width: auto;
        height: auto;
        margin-top: 0;
    }
    .hero .home-img img {
        width: 100%;
        max-width: 300px; /* Limit image width */
        height: auto;
    }

    .project-card {
        min-width: 300px; /* Adjust project card width */
    }
}

/* Large devices (desktops, 992px to 1199.98px - Bootstrap LG) */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .ftco-section {
        padding: 8em 0;
    }

    .hero .row {
        flex-direction: row; /* Ensure hero section columns are side-by-side */
        align-items: center;
    }
    .hero .one-third, .hero .one-forth {
        width: auto;
        flex: 1;
        max-width: none;
    }

    .hero .home-img {
        width: auto;
        height: auto;
        margin-top: 0;
    }
    .hero .home-img img {
        width: 100%;
        max-width: 350px; /* Limit image width */
        height: auto;
    }

    .project-card {
        min-width: 320px; /* Adjust project card width */
    }
}

/* Extra large devices (large desktops, 1200px and up - Bootstrap XL) */
@media (min-width: 1200px) {
    .ftco-section {
        padding: 9em 0;
    }

    .hero .row {
        flex-direction: row;
        align-items: center;
    }
    .hero .one-third, .hero .one-forth {
        width: auto;
        flex: 1;
        max-width: none;
    }

    .hero .home-img {
        width: auto;
        height: auto;
        margin-top: 0;
    }
    .hero .home-img img {
        width: 100%;
        max-width: 400px; /* Limit image width */
        height: auto;
    }

    .project-card {
        min-width: 350px; /* Adjust project card width */
    }
}

/* Custom LinkedIn Button Style */
.linkedin-custom-btn {
    background: #1a1a2e !important;
    border: 3px solid transparent !important;
    border-image: linear-gradient(45deg, #8a2be2, #00ffff) 1 !important;
    color: #fff !important;
    border-radius: 25px !important;
    padding: 8px 15px; /* Reduced padding for a smaller button */
    transition: all 0.3s ease !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    font-size: 0.8em; /* Smaller font size for a smaller button */
}

.linkedin-custom-btn:hover {
    background: #2a2a4e !important;
    box-shadow: 0 0 15px rgba(138, 43, 226, 0.6) !important;
}

@media (max-width: 767.98px) {
    .linkedin-custom-btn {
        padding: 6px 12px; /* Even smaller padding on very small screens */
        font-size: 0.7em; /* Even smaller font size on very small screens */
    }
}

/* .courses-carousel .owl-item {
    min-height: auto !important;
    height: auto !important;
} */ 