/* Global Base Styles - Typography and Layout */

/* CSS Variables */
:root {
    --background_lightblue: #EBF4FF;
    --brand-color: #10397B;
    --darkblue: #0E387A;
    --black: #000000;
    --blue: #10397B;
    --white: #ffffff;
    --gray: #D3D3D3;
    --lightgray: #F0F0F0;
    --green: #1e9a60;
    --yellow: #F0DF20;
}

/* Global Font Style - Roboto (Override all other font declarations) */
*, *::before, *::after {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif !important;
    box-sizing: border-box;
}

/* Reset and base styles */
* {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif !important;
    font-weight: 400;
    line-height: 1.6;
    padding-top: 70px; /* Add padding for fixed navbar */
    margin: 0;
    background-color: #ffffff;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
    font-weight: 500;
}

.btn, button, .hero-section__button, .platform__card-button, .career__cart-button {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
    font-weight: 500;
}

.navbar-brand, .nav-link {
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
}

/* Bootstrap Navigation Override */
.navbar-brand {
    font-size: 1.5rem;
    font-weight: bold;
    color: #007bff !important;
    text-decoration: none;
}

.navbar-nav .nav-link {
    color: #333 !important;
    font-weight: 500;
    margin: 0 0.5rem;
    padding: 0.5rem 1rem !important;
    border-radius: 25px;
    transition: all 0.3s ease;
}

.navbar-nav .nav-link:hover {
    color: #10397B !important;
    background-color: #f8f9fa;
}

.navbar-toggler {
    border: none;
    padding: 0.25rem 0.5rem;
}

.navbar-toggler:focus {
    box-shadow: none;
}

@media (max-width: 991px) {
    .navbar-nav {
        text-align: center;
        margin-top: 1rem;
    }
}

/* Icon Base Styles */
/* Bootstrap Icons Support */
i[class*="bi-"] {
    font-family: "bootstrap-icons" !important;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    line-height: 1;
}

/* Font Awesome Base */
.fas, .far, .fab, .fa-solid, .fa-regular, .fa-brands {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 6 Brands" !important;
    font-weight: 900;
    display: inline-block;
}

.fa-brands, .fab {
    font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400;
}

/* General icon fixes for all areas */
i[class*="fa-"], i[class*="bi-"] {
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    opacity: 1;
    visibility: visible;
}

/* Ensure all icons are displayed properly */
.bi::before, .fas::before, .fab::before, .far::before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/* Fix for common icon display issues */
i[class*="fa-"]:before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}

/* Bootstrap Icon Fallbacks */
.bi-arrow-right:before { content: "→"; font-family: Arial, sans-serif; }
.bi-arrow-left:before { content: "←"; font-family: Arial, sans-serif; }
.bi-chevron-left:before { content: "‹"; font-family: Arial, sans-serif; font-weight: bold; }
.bi-chevron-right:before { content: "›"; font-family: Arial, sans-serif; font-weight: bold; }
.bi-grid:before { content: "▦"; font-family: Arial, sans-serif; }
.bi-clock:before { content: "🕐"; font-family: "Apple Color Emoji", "Segoe UI Emoji", sans-serif; }
.bi-bag-fill:before { content: "🛒"; font-family: "Apple Color Emoji", "Segoe UI Emoji", sans-serif; }

/* Content Area Icons */
.platform__card i, .career__card i, .masterclass i {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Swiper Navigation Icon Styling */
.swiper-custom-prev, .swiper-custom-next,
.swiper-custom-prev1, .swiper-custom-next1,
.swiper-custom-prev3, .swiper-custom-next3,
.swiper-custom-prev4, .swiper-custom-next4,
.swiper-custom-prev5, .swiper-custom-next5 {
    cursor: pointer;
    padding: 8px 12px;
    background: rgba(16, 57, 123, 0.1);
    border-radius: 50%;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-custom-prev:hover, .swiper-custom-next:hover,
.swiper-custom-prev1:hover, .swiper-custom-next1:hover,
.swiper-custom-prev3:hover, .swiper-custom-next3:hover,
.swiper-custom-prev4:hover, .swiper-custom-next4:hover,
.swiper-custom-prev5:hover, .swiper-custom-next5:hover {
    background: #10397B;
    color: white;
}

/* Bottom Navigation / Pagination Icons */
.swiper-pagination, .pagination {
    margin-top: 2rem;
}

/* Utility Classes */
.text-brand-blue {
    color: #10397B !important;
}

.text-dark {
    color: #000000 !important;
}

/* Swiper Navigation Container */
.swiper-navigation-container {
    width: 100%;
    display: flex;
    justify-content: end;
    align-items: center;
    gap: 15px;
}

.swiper-navigation-container-center {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 15px;
}

/* Background Section Utilities */
.bg-light-blue-section {
    background-color: var(--background_lightblue, #f8f9fa);
    width: 100%;
}