/* General */
body {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;    /* Sets the global sans-serif font stack for the entire site. 'Inter' preferred, fallbacks follow. */
    background-color: #ffffff;                              /* Sets the page background to white to ensure a consistent base. */
    color: #212529;                                         /* Sets a readable dark gray text color (better contrast than pure black). */
    margin: 0;                                              /* Removes the browser default body margin to allow edge-to-edge layout. */
}
/* Navbar */
/* Main container for the navigation bar — used to style height, background and transitions */
.navbar {
    transition: all 0.3s ease;                              /* Smooth transitions for visual changes (e.g., hover, scroll). */
    background-color: #f8f9fa !important;                   /* Forces a light gray background (overrides Bootstrap defaults if needed). */
    padding-top: 0.5rem;                                    /* Adds vertical padding on the top of the navbar. */
    padding-bottom: 0.5rem;                                 /* Adds vertical padding on the bottom of the navbar. */
}
/* Links */
/* Default appearance for each navigation link inside the navbar */
.nav-link {
    color: #212529 !important;                              /* Forces links to use the same dark gray color as body text. */
    font-weight: 500;                                       /* Semi-bold weight so nav items visually stand out without being too heavy. */
    margin-left: 0.5rem;                                    /* Adds horizontal space to the left of each link. */
    margin-right: 0.5rem;                                   /* Adds horizontal space to the right of each link. */
    border-bottom: 2px solid transparent;                   /* Invisible underline used to animate a colored underline on hover/active. */
    transition: all 0.2s ease;                              /* Smooth transition for color and underline changes. */
}
/* Links hover behavior */
/* Visual feedback when the user hovers a nav link */
.nav-link:hover {
    color: #0d6efd !important;                              /* Changes text to Bootstrap primary blue on hover. */
    border-bottom: 2px solid #0d6efd;                       /* Reveals the blue underline on hover. */
}
/* Link activated appearance */
/* Style for the currently active/selected navigation link */
.nav-link.active {
    color: #0d6efd !important;                              /* Keeps the active link in Bootstrap primary blue for clear affordance. */
    border-bottom: 2px solid #0d6efd;                       /* Keeps the blue underline visible for the active tab. */
}
/* navbar shadows */
/* Optional small shadow under the navbar to separate it from page content */
.navbar.shadow-sm {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);              /* A subtle shadow to give depth without being distracting. */
}
/* NavBar icon */
/* Rules that target images inside the navbar, typically the brand logo */
.navbar img {
    transition: transform 0.2s ease;                        /* Smooth transform transition for hover zoom effects on the logo. */
}
/* NavBar icon hover behavior */
.navbar img:hover {
    transform: scale(1.05);                                 /* Slight scale-up on hover to provide micro-interaction feedback. */
    opacity: 0.9;                                           /* Slightly reduce opacity for a softer hover visual. */
}
/* Configuration for medium and small windows */
/* Responsive tweaks applied when viewport width is at most 992px (Bootstrap's lg breakpoint) */
@media (max-width: 992px) {
    .navbar img {
        height: 60px;                                       /* Limits logo height on smaller screens so it doesn't crowd the navbar. */
    }
    .navbar-nav {
        text-align: center;                                 /* Center nav links in the vertical/mobile layout. */
        margin-top: 1rem;                                   /* Add spacing between the logo and the stacked links. */
    }
    .nav-link {
        display: block;                                     /* Make nav links full-width stacked blocks for touch targets. */
        padding: 0.5rem 0;                                  /* Vertical padding to enlarge touch/click area. */
        border-bottom: none;                                /* Remove desktop underline in mobile stacked layout (looks cleaner). */
    }
    /* Hide navbar menu (Nav) on mobile, show toggler button */
    .d-lg-flex {
        display: none !important;                           /* Force-hide elements intended only for large screens (desktop menu). */
    }
    .d-lg-none {
        display: block !important;                          /* Force-show elements intended only for small screens (hamburger/toggler). */
    }
    /* Smaller icons for narrow screens — buttons that contain images (e.g., small icons) */
    .navbar .btn img {
        height: 18px;                                       /* Reduce embedded icon sizes inside navbar buttons for compactness. */
    }
}
/* Optional: style the Offcanvas content */
/* Offcanvas nav is often used for the mobile menu — make its links comfortably sized */
.offcanvas-body .nav-link {
    font-size: 1rem;                                        /* Ensures readable link text inside the offcanvas panel. */
    padding: 0.75rem 0;                                     /* Adds vertical spacing between offcanvas links for clarity. */
}
/* Remove Bootstrap's default active/focus glow and background so styling matches site design */
.offcanvas-body .nav-link.active,
.offcanvas-body .nav-link:focus,
.offcanvas-body .nav-link:active {
    background-color: transparent !important;               /* Prevents Bootstrap from applying a filled background to active/focused offcanvas links. */
    color: #0d6efd !important;                              /* Keeps the text blue to indicate active state while removing background. */
    outline: none !important;                               /* Removes default browser focus outline to rely on custom visual cues. */
    box-shadow: none !important;                            /* Removes Bootstrap's focus glow for a cleaner look. */
    border: none !important;                                /* Ensures no unexpected border or underline appears in offcanvas active state. */
}
/* Language buttons base style */
/* Style rules for the small language selector buttons (flags or short labels) */
.lang-btn {
    background: transparent !important;                     /* Make the language button background transparent to integrate with navbar. */
    border: none !important;                                /* Remove default button border for a flat icon-like appearance. */
    box-shadow: none !important;                            /* Remove any button box-shadow to keep them visually light. */
    padding: 0.25rem 0.5rem;                                /* Small internal padding to keep the control compact. */
    opacity: 0.4;                                           /* Lower opacity to indicate an unselected / default state. */
    transition: border-bottom 0.2s ease, opacity 0.2s ease; /* Smooth transition for opacity and potential underline changes. */
}
/* Flag hover effect */
/* Micro-interaction when hovering language buttons */
.lang-btn:hover {
    opacity: 0.8;                                           /* Increase opacity on hover so the control becomes more visible. */
    transform: scale(1.05);                                 /* Slight zoom to show interactivity. */
}
/* Active (selected) language */
/* Visual state for the currently selected language button */
.active-lang {
    transform: scale(1.1);                                  /* Slightly enlarge the active language button to emphasize selection. */
    opacity: 1 !important;                                  /* Make selected language fully opaque for clarity. */
}