/* ================== FONT SETTINGS ================== */

/* Default body font: Lato */
body {
    font-family: 'Lato', sans-serif;
}

/* Headings: Montserrat */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}

/* Navigation, Buttons & UI Text → Poppins */
.nav-link,
.apply-btn,
.btn,
.dropdown-item,
.footer-links a,
.footer-social,
.cta-section .btn-warning,
.top-strip .brand-text {
    font-family: 'Poppins', sans-serif;
}
/* --- Custom CSS for Mentora Global --- */

/* --- COLOR VARIABLES --- */
:root {
    --dark-navy: rgb(17, 34, 80); /* Royal Blue */
    /* --accent-gold: #E0C58F; Quicksand Gold */
    --accent-gold: #E4D3B4; /* Quicksand Gold */
    --accent-dark: #333333; /*Dark charcoal/black for text/icons */
    --primary-blue: rgb(48, 80, 112)        ; /* Sapphire */
    --light-bg: #F5F0E9; /* Swan Wing */
    --light-text: #D9CBC2; /* Shellstone subtle text */
    --logo:#24304E;
}

/* -------------------- TOP STRIP STYLING -------------------- */
.top-strip {
     background-color: #24304E;
     /* background-color: var(--dark-navy); */

    /* border-bottom: 1px solid #f0f0f0; */
}

.top-strip .brand-text {
    font-size: 20px;
    font-weight: 700;
    color: var(--dark-navy);
}

/* Social Icons: Icon color set to dark charcoal/black */
.top-strip .social-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    /* border: 1px solid #ccc; */
    border: 1px solid white;
    text-decoration: none;
    transition: all 0.3s;
}

.top-strip .social-circle i {
    /* color: var(--accent-dark);   */
    color:#E4D3B4;
    font-size: 18px;
    line-height: 1; 
}

/* 🌟 CHANGE 1: Social Icons Hover to Gold 🌟 */
.top-strip .social-circle:hover {
    background-color: var(--dark-navy);
    border-color: var(--dark-navy);
}

.top-strip .social-circle:hover i {
    color: var(--accent-gold); /* Gold on hover */
}

/* WhatsApp icon (keeping it green) */
.top-strip .whatsapp-circle {
    background-color: #25D366; 
    border: 1px solid #25D366;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    text-decoration: none;
}

.top-strip .whatsapp-circle i {
    color: white; 
    font-size: 16px;
}

/* Default button color */
.top-icons .btn-outline-primary {
    color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
}

/* Locations button hover (follows Bootstrap's default behavior) */
.top-icons .btn-outline-primary:hover {
    background-color: var(--primary-blue) !important;
    color: white !important;
}

/* Ensure the map icon color changes with the button state */
.top-icons .btn-outline-primary i {
    color: var(--primary-blue); /* Default icon color */
    transition: color 0.3s;
}

.top-icons .btn-outline-primary:hover i {
    color: white; /* Icon color on button hover */
}
/* ================= SOCIAL ICONS RESPONSIVE FIX ================= */

/* Prevent icons from shrinking due to large logo */
.top-icons {
    flex-shrink: 0;
}

.top-icons a {
    flex-shrink: 0;
}

/* Ensure logo never pushes icons out */
.brand-left img {
    max-width: 100%;
    height: auto;
    align-items: center;
}

/* Mobile optimization */
@media (max-width: 576px) {
    .top-strip .container {
        flex-wrap: wrap;
        gap: 10px;
    }

    .brand-left {
        width: 100%;
        justify-content: center;
    }

    .top-icons {
        width: 100%;
        justify-content: center;
        margin-top: 6px;
    }

    /* Slightly reduce icon size on mobile */
    .top-strip .social-circle,
    .top-strip .whatsapp-circle {
        width: 28px;
        height: 28px;
    }

    .top-strip .social-circle i,
    .top-strip .whatsapp-circle i {
        font-size: 14px;
    }
}
/* -------------------- Breadcrumb NAV STYLING -------------------- */

.breadcrumb-wrap {
    border-bottom: 1px solid #eee;
}

.breadcrumb a {
    text-decoration: none;
    color: var(--dark-navy);
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}

.breadcrumb .active {
    color: var(--dark-navy);
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
}

/* -------------------- MAIN NAV STYLING -------------------- */

/* Main Navigation Bar (BOTTOM NAV) */
.main-nav {
    /* background-color: var(--dark-navy) !important;  */
    /* background-color:var(--dark-navy); */
     background-color: #E4D3B4;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
}

/* Nav links in the main navbar */
/* Main Navigation Bar (BOTTOM NAV) */
.main-nav .nav-link {
    /* color: white !important; */
    /* color:#E4D3B4; */
    color: var(--accent-dark);
    padding-left: 2rem;   /* Increased from 1.5rem */
    padding-right: 2rem;  /* Increased from 1.5rem */
    font-weight: 600;     /* Slightly bolder */
    font-size: 18px;
    letter-spacing: 0.5px; /* Extra spacing between characters */
    transition: color 0.3s;
}

.main-nav .nav-link:hover, 
.main-nav .nav-link.active {
    /* color: var(--accent-gold) !important; Gold on hover */
    color: var(--primary-blue);
}
/* Force space between navbar items */
.main-nav .navbar-nav {
    gap: 2.3rem !important; /* Adjust space as needed */
}

/* Ensure Apply Now button does not squeeze the menu */
.navbar-nav .apply-btn {
    margin-left: 0rem !important;
    font-weight: 700;
}
.navbar-nav .apply-btn:hover {
    transform: translateY(-3px);
}
/* Make sure nav-links don’t get overridden */
.main-nav .nav-link {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/* ===== Fix Mobile & Tablet Navbar Spacing ===== */
@media (max-width: 991px) {
    /* Remove large gaps */
    .main-nav .navbar-nav {
        gap: 0.7rem !important;
    }

    /* Reduce vertical padding of each item in collapsed menu */
    .main-nav .nav-link {
        padding: 8px 0 !important;
        font-size: 1rem; /* Keep readable */
    }

    /* Remove extra margin around Apply Now */
    .navbar-nav .apply-btn {
        margin: 10px 0 !important;
        display: block;
        width: 100%;
        text-align: center;
    }

    /* Keep menu compact */
    .navbar-collapse {
        padding: 0 !important;
    }

    .navbar-nav {
        align-items: flex-start !important;
        text-align: left;
    }
}

/* Dropdown Menu Styling */
.dropdown-menu {
    border: none;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
    background-color: var(--logo);
}

.dropdown-menu .dropdown-item {
    font-size: 0.95rem;
    color: white;

}

.dropdown-menu .dropdown-item:hover {
    /* background-color: #f0f0f0;  */
    background-color: var(--accent-gold); 
    color: var(--logo);
    /* color: var(--dark-navy);  */
}

/* Style for the Apply Now button */
.apply-btn {
    font-weight: 800;
    padding: 8px 20px;
    /* background-color: var(--accent-gold) !important; */
    border-color: var(--accent-gold) !important;
    background-color: var(--dark-navy);
    color: var(--dark-navy) !important;
    transition: 0.3s;
    /* border-radius: 20px; */
}

.apply-btn:hover {
    transform: translateY(-3px);
    opacity: 0.9;
}
.apply2{
    font-weight: 800;
    padding: 8px 20px;
    /* background-color: var(--accent-gold) !important; */
    border-color: var(--accent-gold) !important;
    background-color: #24304E;
    color:#E4D3B4;
    transition: 0.3s;
    /* border-radius: 20px; */
}
.apply2:hover {
    transform: translateY(-3px);
    opacity: 0.9;
}
/* -------------------- HERO SECTION STYLING -------------------- */

.hero-section {
    /* Set background image and properties */
    /* background-image: url("{% static 'images/hero2.png' %}");  */
    background-size: cover; /* Cover the entire area */
    background-position: center; /* Center the image */
    background-repeat: no-repeat; /* Do not repeat the image */
    position: relative; /* Needed for the overlay */
    min-height: 600px; /* Adjust height as needed */
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden; /* Hide overflow from image */
}

/* Overlay to make text readable */
.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.4); /* Dark translucent overlay */
    z-index: 1;
}

/* Ensure text content is above the overlay */
.hero-section > .container {
    position: relative;
    z-index: 2;
    padding-top: 5rem;    /* Add some padding */
    padding-bottom: 5rem; /* Add some padding */
}

/* Style for the hero text and button */
.hero-section h1 {
    font-size: 3.5rem; /* Larger text for impact */
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Text shadow for readability */
}

.hero-section p {
    max-width: 700px; /* Constrain paragraph width */
    margin-left: auto;
    margin-right: auto;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
}
.abt-apply{
    background-color: var(--accent-gold);
    color: var(--dark-navy);
    margin-left: 0rem !important;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 10px;
}
.hero-section .btn-warning,
.cta-section .btn-warning {
    background-color: var(--accent-gold) !important;
    color: var(--dark-navy) !important;
}


/* Responsive adjustments for hero section */
@media (max-width: 768px) {
    .hero-section {
        min-height: 400px; /* Slightly smaller on mobile */
    }
    .hero-section h1 {
        font-size: 2.5rem;
    }
}

/* -------------------- ABOUT SECTION STYLING -------------------- */
.text-primary {
    color: var(--dark-navy) !important;
}

/* -------------------- CTA SECTION STYLING -------------------- */
.cta-section {
    background-color: var(--dark-navy); /* Use consistent dark blue */
}
.book_btn{
    background-color: var(--accent-gold);
    color: var(--dark-navy);
    margin-left: 0rem !important;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 10px;
}
.book_btn:hover{
    background-color: var(--dark-navy);
    color:var(--accent-gold);
    margin-left: 0rem !important;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
}
.cta-section .btn-warning {
    background-color: var(--accent-gold) !important;
    border-color: var(--accent-gold) !important;
    color: var(--dark-navy) !important;
}
/* ================== APPLY FORM ================== */
/* Apply Form Specific Styling Only */
/* FIX: prevent auto uppercase in inputs */
/* 🔒 FINAL FORCE FIX FOR APPLY FORM */
.apply-form-container input,
.apply-form-container textarea,
.apply-form-container select {
    text-transform: none !important;
    font-family: 'Poppins', sans-serif;
}

.apply-form-container input::placeholder,
.apply-form-container textarea::placeholder {
    text-transform: none !important;
}

.apply-form-container .form-control {
    border-radius: 8px;
    border: 2px solid var(--dark-navy);
    background-color: white;
    color: var(--dark-navy);
    box-shadow: none;
    transition: all 0.3s ease;
}

.apply-form-container .form-control:focus {
    border-color: var(--accent-gold);
    background-color: #ffffff;
    box-shadow: 0 0 6px rgba(224, 197, 143, 0.5);
}

.apply-form-container label {
    color: var(--dark-navy);
    font-weight: 600;
}

.apply-form-container button[type="submit"] {
    background-color: var(--dark-navy);
    color: #fff;
    border-radius: 8px;
    padding: 12px;
    transition: 0.3s ease-in-out;
}

.apply-form-container button[type="submit"]:hover {
    background-color: var(--accent-gold);
    color: var(--dark-navy);
    transform: scale(1.02);
}

/* -------------------- FOOTER SECTION STYLING -------------------- */
footer {
       /* background-color: var(--dark-navy) !important;*/
     background-color: #24304E;

}
.quick{
    color: #E0C58F;
}
.footer-links li a {
  text-decoration: none;
  color: white;
  transition: 0.3s;
}

.footer-links li i {
  text-decoration: none;
}

.footer-links li a:hover {
  color: #E0C58F;
}
.footer-social {
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #222;
  border-radius: 50%;
  color: white;
  transition: 0.3s;
}
.footer-social:hover {
  background: #E0C58F;
  color: #000;
}
/* FIX: Services dropdown title color */
.main-nav .nav-link.dropdown-toggle {
    color: var(--accent-dark) !important;
}

/* Hover state */
.main-nav .nav-link.dropdown-toggle:hover {
    color: var(--primary-blue) !important;
}

/* Active state (if Services page is active) */
.main-nav .nav-link.dropdown-toggle.active {
    color: var(--primary-blue) !important;
}
