/* ============ JOB PORTAL PROFESSIONAL THEME ============ */

/* --- Variables --- */
:root {
  --primary-pink: #E60278;
  --hover-pink: #c90269;
  --dark-blue: #1a1a2e;
  --font-heading: 'Poppins', sans-serif;
  --font-body: 'Inter', sans-serif;
}

body {
  font-family: var(--font-body);
  color: var(--dark-blue);
  background-color: #f8f9fa;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, .navbar-brand, .btn {
  font-family: var(--font-heading);
}

.text-pink { color: var(--primary-pink) !important; }

/* --- Navbar Styling --- */
.navbar {
  padding: 12px 0;
  transition: all 0.3s ease;
  z-index: 1030;
}

.navbar-brand {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: -0.5px;
}

.nav-link {
  font-weight: 500;
  color: #444 !important;
  font-size: 0.95rem;
  margin: 0 10px;
  transition: color 0.2s;
}

.nav-link:hover, .nav-link.active {
  color: var(--primary-pink) !important;
}

/* --- Profile Avatar (New Section) --- */
.user-avatar-btn {
  text-decoration: none;
  display: inline-block;
  transition: transform 0.2s;
}

.user-avatar-btn:hover {
  transform: scale(1.05);
}

.avatar-circle {
  width: 42px;
  height: 42px;
  background-color: var(--primary-pink);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 1rem;
  font-family: var(--font-heading);
  border: 2px solid #fff;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* Profile Dropdown Menu */
.dropdown-menu {
  min-width: 220px;
  animation: slideDown 0.2s ease;
}

.dropdown-item {
  padding: 10px 15px;
  font-size: 0.95rem;
  color: #555;
}

.dropdown-item:hover {
  background-color: #fff0f7;
  color: var(--primary-pink);
}

.dropdown-item i {
  width: 20px;
  text-align: center;
}

/* --- Buttons --- */
.btn-custom {
  background-color: var(--primary-pink);
  border: 2px solid var(--primary-pink);
  color: white;
  font-weight: 600;
  padding: 8px 24px;
}

.btn-custom:hover {
  background-color: var(--hover-pink);
  border-color: var(--hover-pink);
  color: white;
}

/* --- Mobile Toggler Visibility Fix --- */
.navbar-toggler {
    border: none !important;
    outline: none !important;
    padding: 5px;
}

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

.hamburger-box {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    /* Optional: Light grey background if you want it to stand out more */
    /* background-color: #f8f9fa; */
}

.hamburger-box i {
    color: #1a1a2e !important; /* Forces the icon to be Dark Blue/Black */
}

/* --- Mobile Sidebar Links --- */
.offcanvas .nav-link.active {
    color: var(--primary-pink) !important;
    border-radius: 8px;
}

.offcanvas .nav-link {
    transition: all 0.3s ease;
    border-bottom: 1px solid #f8f9fa;
}

.offcanvas .nav-link:hover {
    /* padding-left: 10px; */
    color: var(--primary-pink) !important;
}

/* Ensure Search Bar stacks nicely on mobile */
@media (max-width: 991px) {
    .bws-search-wrapper {
        margin: 0 15px; /* Add margin on sides for mobile */
    }
    .btn-custom {
  background-color: var(--primary-pink);
  border: 2px solid var(--primary-pink);
  color: white;
  font-weight: 600;
  padding: 8px 24px;
  /* margin-bottom:20px; */
}
}


/* Dropdown */
/* ============ 2026 ADVANCE 3-COLUMN MEGA MENU & FIX ============ */
/* ============ 2026 EXECUTIVE MEGA MENU FINAL ============ */

@media (min-width: 992px) {
    .dropdown-mega { position: relative; }

    /* FIX: Hide default Bootstrap arrow */
    .dropdown-toggle::after { display: none !important; }

    /* Invisible Bridge for Stability */
    .dropdown-mega::after {
        content: ""; position: absolute; top: 100%; left: 0;
        width: 100%; height: 25px; display: block; z-index: 1;
    }

    .dropdown-mega:hover .mega-menu-custom {
        display: block !important; opacity: 1; visibility: visible;
    }

    /* Mega Menu Design - Clean & Static */
    .mega-menu-custom {
        display: none;
        min-width: 850px !important;
        background: #ffffff !important; /* Professional Solid White */
        border-radius: 20px !important;
        top: calc(100% + 15px) !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        padding: 0 !important;
        box-shadow: 0 25px 50px rgba(0, 0, 0, 0.1) !important;
        overflow: hidden;
        border: 1px solid rgba(0,0,0,0.06) !important;
        z-index: 1000;
    }
}

/* --- Grid Layout --- */
.mega-menu-body { display: flex; flex-wrap: wrap; background: #fff; }
.menu-col { padding: 35px 30px; flex: 1; }
.border-end-light { border-right: 1px solid #f0f0f0; }

.menu-heading {
    font-size: 0.7rem; font-weight: 800; color: #999;
    text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 25px;
    display: block;
}

/* --- Clean Item Styling (No BG Hover) --- */
.mega-item {
    display: flex; align-items: center;
    padding: 12px 0 !important;
    transition: all 0.3s ease !important;
    text-decoration: none;
    background: transparent !important;
}

.mega-item:hover {
    transform: translateX(8px); /* Subtle slide for feedback */
}

.mega-item:hover b {
    color: var(--primary-pink) !important; /* Only Title turns pink */
}

.icon-circle-sm {
    width: 42px; height: 42px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    background: #f8f9fa; /* Neutral light grey */
    color: #555;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.mega-item:hover .icon-circle-sm {
    background: var(--primary-pink);
    color: #fff;
}

.item-text { margin-left: 18px; line-height: 1.3; }
.item-text b { display: block; color: var(--dark-blue); font-size: 0.95rem; transition: color 0.3s; }
.item-text small { color: #bbb; font-size: 0.75rem; display: block; }

/* --- Mobile Fixes --- */
.toggle-icon-mobile { transition: transform 0.3s ease; font-size: 0.8rem; }
[aria-expanded="true"] .toggle-icon-mobile { transform: rotate(180deg); color: var(--primary-pink); }

#mobileSectorsCollapse { background: #fff; border-top: 1px solid #eee; }
.mobile-mega-content .icon-circle-sm { background: #f8f9fa; color: #444; }
/* footer design in job portal website */

@media (min-width: 992px) {
    .dropdown-mega:hover .mega-menu-custom {
        display: block !important;
        opacity: 1;
        visibility: visible;
        margin-top: 0;
    }

    #sectorsDropdown {
        cursor: pointer;
    }
}

/* ============ FOOTER SECTION ============ */
.footer-section {
    background: #151414;
    position: relative;
    font-family: var(--font-body);
    margin-top: 50px;
}

.footer-cta {
    border-bottom: 1px solid #373636;
}

.cta-title {
    font-family: var(--font-heading);
    font-weight: 700;
}

/* Footer Widgets */
.footer-widget-heading h3 {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 30px;
    position: relative;
    font-family: var(--font-heading);
}

.footer-widget-heading h3::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -10px;
    height: 3px;
    width: 40px;
    background: var(--primary-pink);
    border-radius: 5px;
}

.footer-text p {
    margin-bottom: 14px;
    font-size: 15px;
    color: #a0a0a0;
    line-height: 26px;
}

/* Social Icons */
.footer-social-icon span {
    color: #fff;
    display: block;
    font-size: 18px;
    font-weight: 600;
    font-family: var(--font-heading);
    margin-bottom: 10px;
}

.social-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    color: #fff;
    border-radius: 50%; /* Circle shape */
    margin-right: 10px;
    transition: all 0.3s ease;
    text-decoration: none;
    background-color: rgba(255,255,255,0.1);
}

.social-links a:hover {
    transform: translateY(-3px);
}

.facebook-bg:hover { background: #3B5998; }
.twitter-bg:hover { background: #55ACEE; }
.linkedin-bg:hover { background: #0077B5; }
.instagram-bg:hover { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }

/* Footer Links */
.footer-links {
    padding: 0;
    list-style: none;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links li a {
    color: #a0a0a0;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
}

.footer-links li a:hover {
    color: var(--primary-pink);
    padding-left: 5px; /* Slide effect */
}

/* Subscribe Form (Modern Pill) */
.subscribe-form {
    position: relative;
    overflow: hidden;
}

.subscribe-form input {
    width: 100%;
    padding: 14px 20px;
    background: #2E2E2E;
    border: 1px solid #333;
    color: #fff;
    border-radius: 50px;
    font-size: 14px;
}

.subscribe-form input:focus {
    outline: none;
    border-color: var(--primary-pink);
}

.subscribe-form button {
    position: absolute;
    right: 5px;
    top: 5px;
    background: var(--primary-pink);
    padding: 9px 20px;
    border: 1px solid var(--primary-pink);
    color: #fff;
    border-radius: 50px;
    cursor: pointer;
    font-size: 16px;
    transition: all 0.3s;
}

.subscribe-form button:hover {
    background: var(--hover-pink);
}

/* Copyright Area */
.copyright-area {
    background: #000000;
    padding: 25px 0;
}

.copyright-text p {
    margin: 0;
    font-size: 14px;
    color: #878787;
}

.copyright-text a {
    color: var(--primary-pink);
    text-decoration: none;
    font-weight: 600;
}

.footer-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.footer-menu ul li {
    display: inline-block;
    margin-left: 20px;
}

.footer-menu ul li a {
    font-size: 14px;
    color: #878787;
    text-decoration: none;
    transition: 0.3s;
}

.footer-menu ul li a:hover {
    color: var(--primary-pink);
}



/* footer designs */

/* ============ FOOTER MOBILE RESPONSIVE FIXES ============ */
@media (max-width: 767.98px) {

    .footer-widget {
        margin-top: 40px;
        margin-bottom: 20px;
    }

    .row > div:first-child .footer-widget {
        margin-top: 0;
    }

    .footer-widget-heading h3 {
        font-size: 1.25rem;
        margin-bottom: 25px;
    }

    .subscribe-form input {
        padding: 12px 120px 12px 20px;
    }

    .subscribe-form button {
        padding: 7px 18px;
        font-size: 15px;
    }

    /* Copyright area center aligned on mobile */
    .copyright-area {
        text-align: center;
        padding: 20px 0;
    }
}



/* ============ HERO SECTION (SEEK STYLE) ============ */
.hero-section-seek {
    position: relative;
    /* High-quality office background similar to SEEK */
    background: url('https://images.unsplash.com/photo-1522071820081-009f0129c71c?q=80&w=2070&auto=format&fit=crop') no-repeat center center/cover;
    min-height: 700px; /* Tall hero section */
    margin-top: 76px; /* Navbar offset */
}

/* Optional overlay to make text pop if image is too bright */
.hero-section-seek::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(90deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
    /* You can remove this if you want the raw image brightness */
}

/* --- The White Card --- */
.job-search-card {
    background: #ffffff;
    padding: 40px;
    border-radius: 24px; /* Very rounded corners like 2026 UI */
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08); /* Soft, expensive shadow */
    max-width: 550px;
    position: relative;
    z-index: 10;
}

.card-title {
    font-size: 2.8rem;
    font-weight: 800;
    line-height: 1.1;
    color: var(--dark-blue);
    letter-spacing: -1px;
}

.card-subtitle {
    font-size: 1.1rem;
    color: #666;
    line-height: 1.6;
}

/* --- Form Fields --- */
.form-control-lg, .form-select-lg {
    height: 56px; /* Taller fields for modern look */
    border-radius: 12px;
    border: 1px solid #e0e0e0;
    font-size: 1rem;
    background-color: #f8f9fa; /* Slight grey bg for inputs */
    transition: all 0.3s ease;
}

.form-control-lg:focus, .form-select-lg:focus {
    background-color: #fff;
    border-color: var(--primary-pink);
    box-shadow: 0 0 0 4px rgba(230, 2, 120, 0.1);
}

.field-icon {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--primary-pink);
    font-size: 1.1rem;
    z-index: 5;
    pointer-events: none;
}

.dropdown-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #999;
    pointer-events: none;
    font-size: 0.9rem;
}

/* Custom select styling to hide default arrow */
.form-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

/* --- Button --- */
.btn-custom {
    font-family: var(--font-heading);
    letter-spacing: 0.5px;
    border-radius: 12px; /* Matches input radius */
}

/* --- Mobile Adjustments --- */
@media (max-width: 991px) {
    .hero-section-seek {
        min-height: auto;
        padding: 60px 0 80px 0;
        background-position: center left;
    }

    .job-search-card {
        padding: 30px 20px;
        margin: 0 auto;
        box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    }

    .card-title {
        font-size: 2rem;
    }
}
/* --- Fix Double Arrow in Select Dropdown --- */
.form-select {
    -webkit-appearance: none; /* Chrome/Safari ke liye fix */
    -moz-appearance: none;    /* Firefox ke liye fix */
    appearance: none;
    background-image: none !important; /* Bootstrap ka default arrow remove karega */
}

/* Ensure Custom Icon positioning is perfect */
.dropdown-icon {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #666;
    pointer-events: none; /* Click pass-through */
    font-size: 0.9rem;
    z-index: 5;
}


/* section about us */
/* ============ ABOUT SECTION (2026 MOSAIC) ============ */
.about-section {
    background-color: #fff;
    /* Subtle geometric pattern background */
    background-image: radial-gradient(#E60278 0.5px, transparent 0.5px), radial-gradient(#E60278 0.5px, #fff 0.5px);
    background-size: 20px 20px;
    background-position: 0 0, 10px 10px;
    background-color: #fafafa; /* Very light grey base */
}

/* 6-Image Mosaic Grid */
.mosaic-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 Columns */
    grid-template-rows: repeat(2, 150px); /* 2 Rows, fixed height */
    gap: 15px;
}

.mosaic-item {
    border-radius: 16px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}

.mosaic-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

/* Hover Effect: Zoom & Glow */
.animate-hover:hover img {
    transform: scale(1.1);
}
.animate-hover:hover {
    box-shadow: 0 15px 30px rgba(230, 2, 120, 0.2);
    border: 2px solid var(--primary-pink);
}

/* Make grid interesting by spanning items */
/* Example: Make 1st and 6th item slightly larger if desired, or keep uniform */
/* Let's keep uniform 2x3 for clean look or you can span them: */
/* .item-1 { grid-column: span 2; } */ /* Optional: Uncomment to make first image wide */

/* --- Tilted Vertical Text --- */
.vertical-text {
    writing-mode: vertical-rl; /* Makes text vertical */
    text-orientation: mixed;
    transform: rotate(180deg); /* Rotates it to face the content */
    font-size: 80px;
    font-weight: 900;
    color: transparent;
    -webkit-text-stroke: 2px rgba(230, 2, 120, 0.15); /* Outline text effect */
    letter-spacing: 10px;
    white-space: nowrap;
    user-select: none;
    position: absolute;
    left: -20px; /* Adjust position to overlap slightly */
    z-index: 0;
}

/* Content Text Color */
.text-dark-blue {
    color: var(--dark-blue);
}

/* Background Blob Decoration */
.bg-blob-1 {
    position: absolute;
    top: -10%;
    right: -5%;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(230,2,120,0.05) 0%, rgba(255,255,255,0) 70%);
    z-index: 1;
    pointer-events: none;
}

/* Responsive */
@media (max-width: 991px) {
    .mosaic-grid {
        grid-template-columns: repeat(2, 1fr); /* 2 cols on mobile */
        grid-template-rows: repeat(3, 140px); /* 3 rows */
    }

    .vertical-text {
        display: none; /* Hide decorative text on mobile */
    }

    .about-content {
        text-align: center;
        padding-left: 0 !important;
    }
}


/* logo */
/* ============ 2026 INFINITE STREAM ============ */
.sectors-stream {
    background: #f8f9fc; /* Very light premium grey/blue tint */
    padding-bottom: 100px;
    position: relative;
}

/* Background Glow Blob */
.stream-glow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    height: 100px;
    background: radial-gradient(ellipse at center, rgba(230, 2, 120, 0.15) 0%, transparent 70%);
    z-index: 1;
    pointer-events: none;
}

/* --- Stream Wrapper --- */
.stream-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 30px 0;
    z-index: 2;
}

.stream-track {
    display: flex;
    width: calc(300px * 12); /* Card Width * Total Items */
    animation: streamScroll 40s linear infinite; /* Slow, elegant speed */
}

/* NOTE: Removed "hover: pause" to keep it professional */

@keyframes streamScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(calc(-300px * 6)); } /* Move half width */
}

/* --- Premium Glass Card --- */
.stream-card {
    width: 280px;
    flex-shrink: 0;
    margin: 0 15px;
    background: rgba(255, 255, 255, 0.7); /* Semi-transparent */
    backdrop-filter: blur(10px); /* Glass blur effect */
    border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 16px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
    transition: transform 0.3s ease; /* Only subtle lift, no pause */
}

/* Subtle visual feedback without stopping the flow */
.stream-card:active {
    transform: scale(0.98);
}

/* Icon Styling */
.card-icon {
    width: 50px;
    height: 50px;
    background: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    color: var(--primary-pink);
    box-shadow: 0 4px 10px rgba(230, 2, 120, 0.1);
}

/* Text Info */
.card-info h5 {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 700;
    font-size: 1.1rem;
    margin: 0;
    color: var(--dark-blue);
}

.card-info span {
    font-size: 0.85rem;
    color: #888;
    font-weight: 500;
}

/* --- Gradient Text --- */
.text-gradient {
    background: linear-gradient(135deg, #E60278, #ff6b6b);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* --- Fade Edges (Crucial for infinite look) --- */
.stream-fade-left {
    position: absolute;
    top: 0; left: 0;
    width: 200px;
    height: 100%;
    background: linear-gradient(to right, #f8f9fc, transparent);
    z-index: 3;
}

.stream-fade-right {
    position: absolute;
    top: 0; right: 0;
    width: 200px;
    height: 100%;
    background: linear-gradient(to left, #f8f9fc, transparent);
    z-index: 3;
}

@media (max-width: 768px) {
    .stream-card { width: 240px; }
    .stream-fade-left, .stream-fade-right { width: 80px; }
}
/* logo */


/* featured jobs */
/* ============ FEATURED JOBS (MANAGED STYLING) ============ */
.job-card {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 20px;
    padding: 25px;
    transition: all 0.3s ease;
    position: relative;
    box-shadow: 0 5px 15px rgba(0,0,0,0.02);
}

.job-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.08);
    border-color: rgba(230, 2, 120, 0.3);
}

/* Card Header - Logo & Title Grouped */
.card-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.company-logo {
    width: 55px;
    height: 55px;
    background: #f8f9fa;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0; /* Prevents shrinking */
}

.job-title {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--dark-blue);
    line-height: 1.2;
}

.company-name {
    font-size: 0.9rem;
    color: #666;
    font-weight: 500;
}

/* Bookmark Button */
.bookmark-btn {
    background: transparent;
    border: none;
    color: #ccc;
    font-size: 1.2rem;
    padding: 0;
    margin-top: 5px; /* Aligns with text */
}
.bookmark-btn:hover { color: var(--primary-pink); }

/* --- Managed Tags System --- */
.job-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}

/* Regular Tags */
.job-tags span {
    font-size: 0.85rem;
    background: #f4f6f8;
    color: #555;
    padding: 6px 14px;
    border-radius: 50px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
}

.job-tags span i { color: #bbb; }

/* --- Special Badges (Urgent/Remote/Hot) --- */
/* Ye badges ab tags ke size ke hain, par color pop karte hain */
.badge-tag {
    border: 1px solid transparent;
}

.tag-urgent {
    background-color: #ffebeb !important;
    color: #d63384 !important;
    border-color: #ffcccc;
}
.tag-urgent i { color: #d63384 !important; }

.tag-remote {
    background-color: #e3f2fd !important;
    color: #0d6efd !important;
    border-color: #bce3fd;
}
.tag-remote i { color: #0d6efd !important; }

.tag-hot {
    background-color: #fff9db !important;
    color: #f59f00 !important;
    border-color: #ffe066;
}
.tag-hot i { color: #f59f00 !important; }

/* Footer */
.card-footer-custom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 20px;
    border-top: 1px solid #f0f0f0;
    margin-top: auto;
}

.posted-time {
    font-size: 0.85rem;
    color: #999;
    white-space: nowrap !important;
    flex-shrink: 0;
}

.btn-apply {
    background: rgba(230, 2, 120, 0.08);
    color: var(--primary-pink);
    font-weight: 600;
    padding: 8px 20px;
    border-radius: 50px;
    transition: 0.3s;
}

.job-card:hover .btn-apply {
    background: var(--primary-pink);
    color: #fff;
}

.bg-dark-blue { background-color: var(--dark-blue); }


/* ============ MOBILE RESPONSIVE FIXES ============ */
@media (max-width: 767.98px) {

    .mobile-heading {
        font-size: 2rem !important;
        line-height: 1.2;
    }
    .mobile-subheading {
        font-size: 1rem !important;
    }

    .job-card {
        padding: 18px !important;
        border-radius: 16px;
    }

    .company-logo {
        width: 45px;
        height: 45px;
    }
    .mobile-icon {
        font-size: 1.25rem !important;
    }

    .job-title {
        font-size: 1.05rem;
    }

    /* Job Tags Padding & Font */
    .job-tags {
        gap: 8px;
        margin-bottom: 10px;
    }
    .job-tags span {
        font-size: 0.75rem;
        padding: 5px 10px;
    }

    /* Footer - Stacking "Apply Button" for Modern App-like UI */
    .card-footer-custom {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 12px;
        padding-top: 15px;

    }

    .card-footer-custom .posted-time {
        width: 100%;
        text-align: left;
    }


    .btn-apply {
        width: 100%;
        text-align: center;
        padding: 10px 0;
    }

    .w-sm-100 {
        width: 100%;
    }

    .card-footer-custom {
        flex-wrap: nowrap;
        gap: 15px;
    }
}













/* testimonials */
/* ============ PREMIUM REVIEWS SECTION (SPACED OUT) ============ */
.reviews-section {
    background-color: #f8f9fc;
}

/* --- Left Side Stats --- */
.rating-box {
    transition: transform 0.3s;
    border: 1px solid #fff;
    box-shadow: 0 10px 40px rgba(0,0,0,0.05) !important;
}
.rating-box:hover {
    transform: translateY(-5px);
    border-color: var(--primary-pink);
}

/* --- The Marquee Wrapper --- */
.reviews-wrapper-mask {
    height: 650px; /* Thoda height badhaya taaki content khula dikhe */
    overflow: hidden;
    position: relative;
    padding: 10px; /* Side padding taaki shadow cut na ho */
    /* Smooth Fade Effect */
    mask-image: linear-gradient(to bottom, transparent, black 15%, black 85%, transparent);
    -webkit-mask-image: linear-gradient(to bottom, transparent, black 15%, black 85%, transparent);
}

/* Vertical Column Layout */
.marquee-vertical {
    display: flex;
    flex-direction: column;
    gap: 35px; /* IMPORTNAT: Gap badhaya taaki chipke nahi (20px -> 35px) */
    padding-bottom: 35px; /* Loop ke beech me gap maintain karne ke liye */
}

/* Animation Speeds */
.marquee-up {
    animation: scrollUp 45s linear infinite; /* Thoda slow kiya smooth look ke liye */
}

.marquee-down {
    animation: scrollDown 45s linear infinite;
}

/* Hover Pe Rukna */
.reviews-grid:hover .marquee-vertical {
    animation-play-state: paused;
}

@keyframes scrollUp {
    0% { transform: translateY(0); }
    100% { transform: translateY(calc(-50% - 17.5px)); } /* Gap calculation fix */
}

@keyframes scrollDown {
    0% { transform: translateY(calc(-50% - 17.5px)); }
    100% { transform: translateY(0); }
}

/* --- Review Card Design --- */
.review-card {
    background: #fff;
    padding: 25px; /* Padding badhai */
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.04); /* Soft Shadow */
    border: 1px solid #f2f2f2;
    transition: all 0.3s ease;
    /* Card ko thoda "Utha hua" dikhane ke liye */
    transform: translateZ(0);
}

.review-card:hover {
    box-shadow: 0 20px 40px rgba(230, 2, 120, 0.12);
    border-color: rgba(230, 2, 120, 0.3);
    transform: translateY(-5px) scale(1.01); /* Thoda zoom effect */
}

/* Header inside card */
.review-header {
    display: flex;
    align-items: center;
    gap: 15px; /* Logo aur naam ke beech gap badhaya */
    margin-bottom: 15px;
}

.review-header img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #f8f9fa; /* Border mota kiya */
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}

.review-header h5 {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    color: var(--dark-blue);
    font-family: 'Plus Jakarta Sans', sans-serif;
}

.review-header small {
    font-size: 0.85rem;
    color: #999;
    font-weight: 500;
}

.review-card p {
    font-size: 0.95rem;
    color: #555;
    line-height: 1.6; /* Line height badhaya readability ke liye */
    font-style: italic;
    margin-bottom: 15px;
}

.stars-mini {
    color: #FFC107;
    font-size: 0.9rem;
    background: #fffdf5;
    display: inline-block;
    padding: 5px 10px;
    border-radius: 50px;
    border: 1px solid #fff3cd;
}

/* Highlight Card Style */
.highlight-card {
    background: linear-gradient(to bottom, #fff, #fff0f7);
    border-color: #ffd6e8;
}

/* Responsive Fixes */
@media (max-width: 991px) {
    .reviews-wrapper-mask {
        height: 500px;
        mask-image: none; /* Mobile pe mask hata sakte hain agar clear dikhana ho */
        -webkit-mask-image: none;
        overflow-y: auto; /* Allow manual scroll on mobile */
    }
    .marquee-vertical {
        animation: none; /* Disable animation on mobile for better UX */
        gap: 20px;
    }
    .col-md-4 {
        margin-bottom: 20px;
    }
}


/* blogs */
/* ============ LATEST BLOGS (STATIC & CLEAN) ============ */
.blog-card {
    background: #fff;
    border-radius: 24px;
    border: 1px solid #eee;
    overflow: hidden;
    /* Transition hata di ya sirf border ke liye rakhi, taaki card na hile */
    transition: border-color 0.3s ease;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    display: flex;
    flex-direction: column;
}

/* Hover par Card nahi hilega, sirf Border Pink hoga */
.blog-card:hover {
    transform: none; /* No Movement */
    box-shadow: 0 10px 30px rgba(0,0,0,0.03); /* Same Shadow (No Change) */
    border-color: rgba(230, 2, 120, 0.5); /* Subtle Pink Border */
}

/* Image Area */
.blog-image-wrapper {
    position: relative;
    height: 240px;
    overflow: hidden;
}

.blog-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Image Zoom bhi hata diya agar simple chahiye,
       ya niche wala code uncomment karein agar image zoom chahiye */
    /* transition: transform 0.6s ease; */
}

/* .blog-card:hover .blog-image-wrapper img {
    transform: scale(1.05);
} */

/* Floating Date Badge */
.date-badge {
    position: absolute;
    bottom: 15px;
    right: 15px;
    background: rgba(255, 255, 255, 0.95);
    padding: 8px 15px;
    border-radius: 12px;
    text-align: center;
    line-height: 1;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
    color: var(--dark-blue);
    backdrop-filter: blur(5px);
}

/* Category Tag */
.category-tag {
    position: absolute;
    top: 15px;
    left: 15px;
    background: var(--primary-pink);
    color: #fff;
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.tag-blue { background: #007bff; }
.tag-purple { background: #6f42c1; }

/* Content Area */
.blog-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.meta-info {
    font-size: 0.8rem;
    color: #999;
    font-weight: 500;
}

.blog-title {
    margin-bottom: 12px;
    line-height: 1.4;
}

.blog-title a {
    color: var(--dark-blue);
    text-decoration: none;
    font-weight: 700;
    font-size: 1.25rem;
    transition: color 0.3s;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card:hover .blog-title a {
    color: var(--primary-pink);
}

.blog-excerpt {
    color: #666;
    font-size: 0.95rem;
    margin-bottom: 25px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Footer & Author */
.blog-footer {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px dashed #eee;
    padding-top: 20px;
}

.author {
    display: flex;
    align-items: center;
    gap: 10px;
}

.author img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.author h6 {
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--dark-blue);
}

.author small {
    font-size: 0.75rem;
    color: #888;
}

/* Arrow Button Animation (Sirf ye color change karega) */
.read-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--dark-blue);
    transition: all 0.3s;
}

.blog-card:hover .read-btn {
    background: var(--primary-pink);
    color: #fff;
    /* transform: rotate(-45deg); <--- Ye bhi hata diya simple rakhne ke liye */
}


/* blogs end */


/* ============ VACANCIES PAGE STYLES ============ */


.page-header {
    background-color: var(--dark-blue);

    padding-top: 140px !important;
    padding-bottom: 60px;
    margin-top: -50px;
}



.header-pattern {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    opacity: 0.1;
    background-image: radial-gradient(#fff 1px, transparent 1px);
    background-size: 20px 20px;
}

.filters-sidebar {
}

.filter-group label {
    letter-spacing: 1px;
    font-size: 0.75rem;
}

.form-check-input {
    width: 1.2em;
    height: 1.2em;
    margin-right: 0.5em;
    cursor: pointer;
}
.form-check-input:checked {
    background-color: var(--primary-pink);
    border-color: var(--primary-pink);
}

.form-check-label {
    cursor: pointer;
    font-size: 0.95rem;
    color: #444;
}

.form-range::-webkit-slider-thumb {
    background: var(--primary-pink);
}

.job-row-card {
    transition: all 0.3s ease;
    cursor: pointer;
}

.job-row-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.08) !important;
    border-color: rgba(230, 2, 120, 0.3) !important;
}

.featured-indicator {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--primary-pink);
    opacity: 0;
    transition: 0.3s;
}

.job-row-card:hover .featured-indicator {
    opacity: 1;
}

.company-logo-lg {
    width: 70px;
    height: 70px;
    background: #f8f9fa;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}


.job-pill {
    font-size: 0.8rem;
    color: #666;
    background: #f4f6f8;
    padding: 6px 14px;
    border-radius: 6px;
    font-weight: 500;
}

.pagination-pill {
    gap: 8px;
}

.pagination-pill .page-link {
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--dark-blue);
    font-weight: 700;
    background: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.pagination-pill .page-item.active .page-link {
    background: var(--primary-pink);
    color: #fff;
}

.pagination-pill .page-link:hover {
    background: #eee;
    color: var(--primary-pink);
}


@media (max-width: 768px) {
    .job-row-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
    .company-logo-lg {
        width: 50px;
        height: 50px;
    }
    .ms-auto {
        margin-left: 0 !important;
        width: 100%;
    }
    .btn-apply {
        width: 100%;
        text-align: center;
    }
    .text-end {
        text-align: left !important;
        margin-top: 5px;
    }
}






.vacancies-section { min-height: 80vh; }
.upload-zone { border: 2px dashed #ddd; background: #fbfbfb; cursor: pointer; transition: 0.3s; }
.upload-zone:hover { border-color: var(--primary-pink); background: #fff5f9; }
.border-dashed { border-style: dashed !important; }
.cursor-pointer { cursor: pointer; }

.modal-content { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); }


.filters-sidebar { max-height: calc(100vh - 120px); overflow-y: auto; }
.filters-sidebar::-webkit-scrollbar { width: 4px; }
.filters-scrollbar::-webkit-scrollbar-thumb { background: #eee; border-radius: 10px; }
.job-row-card {
    border: 1px solid #edf2f7 !important;
    background: #ffffff;
    transition: border-color 0.2s;
}

.job-row-card:hover {
    border-color: var(--primary-pink) !important;
    transform: none !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05) !important;
}

#modalDesc {
    max-height: 250px;
    overflow-y: auto;
}

.bg-pink-light {
    background-color: rgba(230, 2, 120, 0.1);
}

.border-dashed {
    border: 2px dashed #cbd5e0 !important;
}

.upload-area:hover {
    background-color: #fff5f9 !important;
    border-color: var(--primary-pink) !important;
}

.form-control, .form-select {
    padding: 0.75rem 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
}

.form-control:focus {
    border-color: var(--primary-pink);
    box-shadow: 0 0 0 3px rgba(230, 2, 120, 0.1);
}

@media (max-width: 991px) {
    .modal-xl { max-width: 95%; }
    .col-lg-5 {
         /* border-bottom: 1px solid #eee; */
         border-end: none; }
}

.custom-modal-close {
    position: absolute !important;
    top: 15px !important;
    right: 15px !important;
    z-index: 9999 !important;
    background-color: #fff !important;
    border-radius: 50% !important;
    padding: 8px !important;
    opacity: 1 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    border: 1px solid #eee !important;
}

.modal-content {
    position: relative !important;
}

@media (max-width: 768px) {
    .custom-modal-close {
        top: 10px !important;
        right: 10px !important;
        padding: 6px !important;
    }
}
/* Mobile Styles for Action Buttons */
    @media (max-width: 575.98px) {
        /* Chhoti screens (e.g. iPhone SE, etc.) par inko stack kar dena better hai
           ya phir wrap karne dena agar text bada ho */
        .action-buttons-wrapper {
            flex-direction: column !important;
            gap: 10px !important;
        }

        /* Apply/Read More mobile par full width ache lagte hain */
        .action-buttons-wrapper .btn {
            width: 100%;
            padding-top: 10px;
            padding-bottom: 10px;
        }
    }


/* jobs end */
/* jobs details start */
/* ============ JOB DETAILS PAGE STYLES ============ */
.company-logo-large {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.job-list-points {
    padding-left: 1.5rem;
}

.job-list-points li {
    margin-bottom: 15px;
    position: relative;
    list-style: none;
}

.job-list-points li::before {
    content: "\f058"; /* FontAwesome Circle Check */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    left: -1.5rem;
    color: var(--primary-pink);
}

/* .social-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f8f9fa;
    color: #0f172a;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: 0.3s;
}

.social-btn:hover {
    background: var(--primary-pink);
    color: white;
}

.bg-pink-light {
    background-color: rgba(230, 2, 120, 0.1);
} */

 /* --- Social Buttons 2026 Style --- */
.social-btn {
    width: 45px;
    height: 45px;
    background: #f8f9fa;
    color: #0d1b2a;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    text-decoration: none;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 1px solid rgba(0,0,0,0.05);
}


.social-btn:hover {
    transform: translateY(-5px);
       color: #0d1b2a;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);

}

.social-btn.facebook:hover {
    background: #1877F2;
    border-color: #1877F2;
}

.social-btn.linkedin:hover {
    background: #0077B5;
    border-color: #0077B5;
}

.social-btn.instagram:hover {
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    border-color: #d6249f;
}

/* Spacing fix for mobile */
@media (max-width: 768px) {
    .social-wrapper {
        text-align: center;
    }
    .social-wrapper .d-flex {
        justify-content: center;
    }
}
/* jobs details end */


/* form submit jobsss */
.success-icon i {
    animation: bounceIn 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@keyframes bounceIn {
    0% { transform: scale(0.3); opacity: 0; }
    50% { transform: scale(1.05); opacity: 1; }
    70% { transform: scale(0.9); }
    100% { transform: scale(1); }
}


/* form submit jobs  */

/* about page */
/* About Page Specific Styles */
/* .about-banner-initial {
    background: linear-gradient(45deg, #1A2980, #26D0CE);
    background-size: cover;
    background-position: center;
    position: relative;
    overflow: hidden;
}

.about-banner-initial .bg-pattern {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://www.bwsrecruitment.com.au/rails/active_storage/representations/proxy/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBNVROSlE9PSIsImV4cCI6bnVsbCwicHVyIjoiYmxvYl9pZCJ9fQ==--8df6b579d14665dfbd3eaa983592dde1854de09a/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDVG9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRGpJd01EQjROakF3WGdZN0JsUTZER2R5WVhacGRIbEpJZ3REWlc1MFpYSUdPd1pVT2dsamNtOXdTU0lSTWpBd01IZzJNREFyTUNzd0Jqc0dWQT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--e93b4d5ce0ecf2b659c4788a841a1a7096b298e6/image-2024-08-30T06-25-57.452Z.jpg"><defs><pattern id="p" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M0 0h5v5H0z" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100%" height="100%" fill="url(%23p)"/></svg>');
    opacity: 0.2;
    z-index: 0;
} */
/* About Banner Theme Fix */
.about-banner-initial {
    background-color: #0d1b2a; /* Your exact Dark Blue from Home/Jobs page */
    position: relative;
    z-index: 1;
}

/* Subtle Gradient Overlay matching your branding */
.theme-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at top right, rgba(255, 20, 147, 0.1), transparent),
                radial-gradient(circle at bottom left, rgba(13, 27, 42, 0.9), transparent);
    z-index: -1;
}

/* Pattern Overlay (Same as your Jobs Header) */
.about-banner-initial::before {
    content: "";
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background-image: url('https://www.bwsrecruitment.com.au/rails/active_storage/representations/proxy/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBNVROSlE9PSIsImV4cCI6bnVsbCwicHVyIjoiYmxvYl9pZCJ9fQ==--8df6b579d14665dfbd3eaa983592dde1854de09a/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaDdDVG9MWm05eWJXRjBTU0lJYW5CbkJqb0dSVlE2QzNKbGMybDZaVWtpRGpJd01EQjROakF3WGdZN0JsUTZER2R5WVhacGRIbEpJZ3REWlc1MFpYSUdPd1pVT2dsamNtOXdTU0lSTWpBd01IZzJNREFyTUNzd0Jqc0dWQT09IiwiZXhwIjpudWxsLCJwdXIiOiJ2YXJpYXRpb24ifX0=--e93b4d5ce0ecf2b659c4788a841a1a7096b298e6/image-2024-08-30T06-25-57.452Z.jpg'); /* Subtle cube pattern */
    opacity: 0.1;
    z-index: -1;
}

/* Success Modal & Carousel Captions Consistency */
.carousel-caption-content {
    border-top: 4px solid #FF1493; /* Pink accent like your job detail badges */
}

/* .btn-custom {
    background-color: #FF1493;
    border-color: #FF1493;
    color: white;
}

.btn-custom:hover {
    background-color: #d8117a;
    border-color: #d8117a;
} */
.about-banner-initial .container {
    position: relative;
    z-index: 1;
}

/* Carousel Section Styles */
.about-carousel-section .carousel-item {
    height: 500px; /* Adjust as needed */
    position: relative;
}

.about-carousel-section .carousel-img {
    filter: brightness(0.6); /* Darken image slightly */
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.about-carousel-section .carousel-caption {
    background: rgba(0, 0, 0, 0.4); /* Dark overlay to make text readable */
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-carousel-section .carousel-caption-content {
    max-width: 600px;
    padding: 30px !important;
    background-color: rgba(255, 255, 255, 0.95) !important; /* Semi-transparent white */
}

/* Custom Carousel Controls */
.about-carousel-section .carousel-control-prev-icon,
.about-carousel-section .carousel-control-next-icon {
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    padding: 20px;
    transition: background-color 0.3s ease;
}

.about-carousel-section .carousel-control-prev-icon:hover,
.about-carousel-section .carousel-control-next-icon:hover {
    background-color: rgba(255, 255, 255, 0.5);
}

.about-carousel-section .carousel-indicators button {
    background-color: #ff69b4; /* Pink indicators */
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid #fff;
    opacity: 0.6;
    transition: all 0.3s ease;
}

.about-carousel-section .carousel-indicators button.active {
    opacity: 1;
    transform: scale(1.2);
    background-color: #ff1493; /* Darker pink for active */
}

/* Text color for specific elements */
.text-dark-blue {
    color: #1A2980; /* Define your custom dark blue if not already defined */
}
.text-pink {
    color: #FF1493; /* Define your custom pink if not already defined */
}

/* Animate.css integration (ensure you have it linked in your layout) */
/* Example: <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css"/> */

/* Custom hover effect for links */
.hover-pink:hover {
    color: #FF1493 !important;
    transition: color 0.3s ease;
}

/* Small adjustments for responsiveness */
@media (max-width: 768px) {
    .about-banner-initial {
        min-height: 350px;
        margin-top: 65px;
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    .about-carousel-section .carousel-item {
        height: 400px;
    }
    .about-carousel-section .carousel-caption-content {
        padding: 20px !important;
        font-size: 0.9rem;
    }
    .about-carousel-section .carousel-caption-content h3 {
        font-size: 1.5rem;
    }
}


/* Click transition for About Section */
.about-carousel-section.active {
    display: block !important;
    animation: zoomInSoft 0.8s ease-out forwards;
}

@keyframes zoomInSoft {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

/* White Box Overlay Styling (As per your screenshot) */
.carousel-caption-content {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 20px;
    padding: 40px;
    max-width: 550px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
    border: 1px solid rgba(255,255,255,0.2);
}


/* Ken Burns Smooth Zoom Animation */
.carousel-img-container {
    height: 650px;
    overflow: hidden;
}

.ken-burns {
    height: 100%;
    object-fit: cover;
    animation: kenburns 15s infinite alternate;
}

@keyframes kenburns {
    from { transform: scale(1); }
    to { transform: scale(1.15); }
}

/* 2026 Modern Overlay */
.carousel-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(13, 27, 42, 0.6); /* Dark Blue tint */
}

.carousel-caption-content {
    max-width: 500px;
    border-radius: 30px !important;
    transform: translateY(30px);
    opacity: 0;
    transition: all 0.8s cubic-bezier(0.25, 1, 0.5, 1);
}

.carousel-item.active .carousel-caption-content {
    transform: translateY(0);
    opacity: 1;
}

/* Stylish Floating Navigation */
.custom-carousel-nav {
    position: absolute;
    bottom: 50px;
    right: 50px;
    display: flex;
    gap: 15px;
    z-index: 100;
}

.nav-btn {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.3);
    background: rgba(255,255,255,0.1);
    color: white;
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.nav-btn:hover {
    background: #FF1493; /* Pink Hover */
    border-color: #FF1493;
    transform: scale(1.1);
}

.carousel-indicators {
    bottom: 70px !important;
    left: 50px !important;
    margin: 0 !important;
    justify-content: start !important;
}
/* about page */
/* --- Performance & Theme Base --- */
.about-banner-initial {
    background-color: #0d1b2a;
    z-index: 1;
    will-change: opacity;
}

.theme-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: radial-gradient(circle at top right, rgba(255, 20, 147, 0.1), transparent);
    z-index: -1;
}

/* --- Ken Burns & Image Optimization --- */
.carousel-img-container {
    height: 70vh; /* Responsive Height */
    min-height: 450px;
    overflow: hidden;
    background: #000;
}

.ken-burns {
    height: 100%;
    object-fit: cover;
    will-change: transform;
    animation: kenburns 20s infinite alternate linear;
    transform: translateZ(0); /* GPU Force */
}

@keyframes kenburns {
    from { transform: scale(1); }
    to { transform: scale(1.1); }
}

/* --- Caption White Box (2026 Style) --- */
.carousel-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(13, 27, 42, 0.5);
    backdrop-filter: blur(2px);
}

.carousel-caption-content {
    max-width: 550px;
    border-radius: 25px !important;
    border-top: 5px solid #FF1493;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.carousel-item.active .carousel-caption-content {
    opacity: 1;
    transform: translateY(0);
}

/* --- Mobile Navigation --- */
.custom-carousel-nav {
    position: absolute;
    bottom: 30px;
    right: 30px;
    display: flex;
    gap: 10px;
    z-index: 100;
}

.nav-btn {
    width: 50px; height: 50px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.4);
    background: rgba(255,255,255,0.1);
    color: white;
    backdrop-filter: blur(15px);
    display: flex; align-items: center; justify-content: center;
    transition: 0.3s ease;
}

.nav-btn:hover { background: #FF1493; border-color: #FF1493; }

/* --- Mobile View Adjustments --- */
@media (max-width: 768px) {
    .carousel-img-container { height: 60vh; }
    .carousel-caption-content {
        padding: 30px 20px !important;
        margin: 0 15px;
    }
    .small-mobile { font-size: 0.9rem; }
    .custom-carousel-nav {
        right: 50%;
        transform: translateX(50%); /* Center nav on mobile */
        bottom: 20px;
    }
    .nav-btn { width: 45px; height: 45px; }
}


/* new section team details avbout us */
/* --- Leadership Section Styling --- */
.leader-image-frame {
    position: relative;
    padding-right: 30px;
    padding-bottom: 30px;
}

.frame-border {
    position: absolute;
    top: 30px;
    left: 30px;
    right: 0;
    bottom: 0;
    border: 8px solid rgba(255, 20, 147, 0.1); /* Light Pink Border */
    border-radius: 20px;
    z-index: 0;
}

.main-leader-img {
    position: relative;
    z-index: 1;
    transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.main-leader-img:hover {
    transform: translate(-10px, -10px);
}

.experience-tag {
    position: absolute;
    bottom: 10px;
    right: -20px;
    z-index: 2;
    min-width: 140px;
    text-align: center;
    background-color:#FF1493;
}

.italic-role {
    font-style: italic;
    letter-spacing: 0.5px;
}

.content-divider {
    width: 80px;
    height: 4px;
    background: #FF1493;
    border-radius: 2px;
}

/* --- Signature & Socials --- */
.signature-img {
    max-height: 60px;
    filter: grayscale(1) contrast(1.5);
    opacity: 0.7;
}

.social-link {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #f0f2f5;
    color: #0d1b2a;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.social-link:hover {
    background: #FF1493;
    color: white;
    transform: translateY(-3px);
}

/* --- Value Card Modern --- */
.value-card-modern {
    transition: all 0.3s ease;
    border-bottom: 4px solid transparent;
}

.value-card-modern:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important;
    border-bottom: 4px solid #FF1493;
}

.v-icon {
    width: 60px;
    height: 60px;
    background: rgba(255, 20, 147, 0.05);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

/* --- Responsive Fixes --- */
@media (max-width: 991px) {
    .experience-tag {
        right: 10px;
        bottom: 0;
    }
    .leader-image-frame {
        padding: 0;
        margin-bottom: 40px;
    }
    .frame-border {
        display: none;
    }
}


/* about page profile images details end */


/* purpouse */
/* --- Purpose Section Styling --- */
.purpose-quote-box {
    background: rgba(255, 20, 147, 0.03);
    border-left: 5px solid #FF1493;
}

/* --- Advance Value Cards --- */
.value-card-advance {
    background: #ffffff;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    cursor: pointer;
}

.v-icon-main {
    width: 60px;
    height: 60px;
    background: #0d1b2a;
    color: #fff;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    transition: 0.3s;
}

.value-icon-bg {
    position: absolute;
    top: -20px;
    right: -20px;
    font-size: 8rem;
    color: rgba(255, 20, 147, 0.04);
    z-index: 1;
    transition: 0.5s;
    transform: rotate(-15deg);
}

.value-card-advance:hover {
    /* transform: translateY(-12px); */
    background: #0d1b2a; /* Dark Blue on Hover */
    box-shadow: 0 25px 50px rgba(13, 27, 42, 0.2) !important;
}

.value-card-advance:hover .v-icon-main {
    background: #FF1493; /* Pink on Hover */
    transform: rotate(360deg);
}

.value-card-advance:hover h4 {
    color: #ffffff !important;
}

.value-card-advance:hover .text-muted {
    color: rgba(255, 255, 255, 0.7) !important;
}

.value-card-advance:hover .value-icon-bg {
    color: rgba(255, 20, 147, 0.1);
    transform: scale(1.2) rotate(0deg);
}

/* --- Animation for Scroll --- */
.value-card-advance {
    opacity: 1;
    animation: fadeInUp 0.8s ease-out;
}
/* --- Join Team Background Styling --- */
.join-team-section { background: #fdfdfd; }

.glow-element {
    position: absolute; width: 400px; height: 400px;
    border-radius: 50%; filter: blur(100px); opacity: 0.1; z-index: 1;
}
.glow-1 { background: #FF1493; top: -100px; left: -100px; }
.glow-2 { background: #0d1b2a; bottom: -100px; right: -100px; }

/* --- Benefit Items (Static but High-End) --- */
.benefit-item {
    transition: all 0.3s ease;
}
.benefit-item:hover {
    background: #0d1b2a !important;
    border-start-color: #FF1493 !important;
}
.benefit-item:hover span { color: white !important; }

/* --- CTA Glass Card --- */
.cta-glass-card {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(15px);
    border: 1px solid rgba(255, 20, 147, 0.1);
}

.cta-glass-card::before {
    content: ''; position: absolute; top: -50%; left: -50%;
    width: 200%; height: 200%; background: radial-gradient(circle, rgba(255,20,147,0.05) 0%, transparent 70%);
}

/* --- 2026 Pulse Button --- */
.btn-pulse-pink {
    display: inline-block;
    padding: 18px 45px;
    background: #FF1493;
    color: white !important;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 50px;
    text-decoration: none;
    position: relative;
    box-shadow: 0 10px 25px rgba(255, 20, 147, 0.3);
    transition: all 0.4s ease;
}

.btn-pulse-pink:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(255, 20, 147, 0.4);
}

.btn-pulse-pink::after {
    content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0;
    border-radius: 50px; border: 2px solid #FF1493;
    animation: pulse-border 2s infinite;
}

@keyframes pulse-border {
    0% { transform: scale(1); opacity: 0.8; }
    100% { transform: scale(1.3); opacity: 0; }
}

/* --- Mobile Fixes --- */
@media (max-width: 768px) {
    .btn-pulse-pink { width: 100%; text-align: center; }
    .cta-glass-card { margin-top: 30px; }
}


/* disciplines */
/* --- Header Style --- */
.disciplines-header {
    background: #0d1b2a;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius: 50px;
}

.glow-bg {
    position: absolute; top: -50%; left: -20%; width: 100%; height: 200%;
    background: radial-gradient(circle, rgba(230, 2, 120, 0.1) 0%, transparent 70%);
}

/* --- Sector Cards --- */
.sector-card-link { text-decoration: none; color: white; }

.sector-card {
    height: 400px;
    background: #000;
}

.sector-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.7;
    transition: all 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

.sector-overlay {
    position: absolute;
    bottom: 0; left: 0; width: 100%;
    padding: 40px 30px;
    background: linear-gradient(transparent, rgba(13, 27, 42, 0.95));
    transition: all 0.4s ease;
}

.sector-content {
    transform: translateY(40px);
    transition: all 0.4s ease;
}

.explore-btn {
    opacity: 0;
    font-weight: bold;
    color: #E60278;
    font-size: 0.9rem;
    display: inline-block;
    transition: all 0.4s ease;
}

/* --- Hover Effects --- */
.sector-card:hover .sector-img {
    transform: scale(1.1);
    opacity: 0.5;
}

.sector-card:hover .sector-overlay {
    background: linear-gradient(transparent, rgba(230, 2, 120, 0.8));
}

.sector-card:hover .sector-content {
    transform: translateY(0);
}

.sector-card:hover .explore-btn {
    opacity: 1;
}

/* --- Mobile Fixes --- */
@media (max-width: 768px) {
    .sector-card { height: 320px; }
    .sector-content { transform: translateY(0); }
    .explore-btn { opacity: 1; }
    .disciplines-header {
 margin-top:35px;
}
}

/* disciplines show */
  /* --- Sector Hero Styling --- */
.sector-hero {
    background: #0d1b2a;
    min-height: 80vh;
    display: flex;
    align-items: center;
    padding-top: 100px;
}

.sector-bg-glow {
    position: absolute; top: -10%; right: -5%; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(230, 2, 120, 0.2) 0%, transparent 70%);
    filter: blur(80px);
}

.shadow-2xl { box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); }

/* --- Bento Grid Styling --- */
.bento-card, .bento-card-wide {
    background: #f8f9fa;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 1px solid rgba(0,0,0,0.05) !important;
}

.bento-card:hover { transform: translateY(-10px); background: #fff; box-shadow: 0 20px 40px rgba(0,0,0,0.1) !important; }

.icon-header {
    width: 60px; height: 60px; border-radius: 18px;
    display: flex; align-items: center; justify-content: center; font-size: 1.5rem;
}

.role-tag-modern {
    background: white;
    padding: 12px 15px;
    border-radius: 15px;
    font-weight: 600;
    font-size: 0.9rem;
    color: #1a1a2e;
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
    text-align: center;
    border: 1px solid #eee;
    transition: 0.3s;
}

.role-tag-modern:hover {
    border-color: #E60278;
    color: #E60278;
}

/* --- CTA Section --- */
.cta-inner {
    background: linear-gradient(135deg, #1a1a2e 0%, #0d1b2a 100%);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.cta-inner::before {
    content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background-image: url('https://www.transparenttextures.com/patterns/cubes.png');
    opacity: 0.05; pointer-events: none;
}

/* --- Mobile Fixes --- */
@media (max-width: 768px) {
    .display-3 { font-size: 2.8rem; }
    .sector-hero { min-height: 60vh; text-align: center; }
    .bento-card-wide { padding: 30px !important; }
}


/* contact us */
/* --- Hero & Background --- */
/* .contact-hero {
    background: #0d1b2a;
    padding-top: 100px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}

.glow-bg {
    position: absolute; top: -10%; right: -5%; width: 500px; height: 500px;
    background: radial-gradient(circle, rgba(230, 2, 120, 0.1) 0%, transparent 70%);
    filter: blur(80px);
} */

/* --- Premium Sidebar Cards --- */
.info-card-premium {
    display: flex;
    align-items: flex-start;
    padding: 20px;
    background: #fff;
    border-radius: 16px;
    margin-bottom: 15px;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

.info-card-premium:hover {
    border-color: rgba(230, 2, 120, 0.2);
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    transform: translateX(5px);
}

.icon-wrap {
    width: 45px; height: 45px;
    background: rgba(230, 2, 120, 0.05);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    color: #E60278; font-size: 1.2rem; flex-shrink: 0;
}

.flip-phone { transform: scaleX(-1); }

.text-wrap { margin-left: 15px; }
.text-wrap h6 { font-weight: 700; margin-bottom: 2px; color: #1a1a2e; }
.text-wrap p { font-size: 0.85rem; color: #666; margin-bottom: 0; line-height: 1.4; }

/* --- Contact Form Card --- */
.contact-form-card {
    background: #fff;
    padding: 40px;
    border-radius: 30px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.03);
}

.form-control {
    background: #f8f9fa;
    border: 2px solid #f8f9fa;
    padding: 15px 20px;
    border-radius: 12px;
    font-size: 0.95rem;
    transition: all 0.3s ease;
}

.form-control:focus {
    background: #fff;
    border-color: #E60278;
    box-shadow: 0 8px 20px rgba(230, 2, 120, 0.05);
}

.btn-premium-pink {
    background: #E60278;
    color: #fff;
    border: none;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.btn-premium-pink:hover {
    background: #c90269;
    box-shadow: 0 10px 20px rgba(230, 2, 120, 0.3);
}

/* --- Map --- */
.map-container {
    filter: grayscale(1) contrast(1.1);
    opacity: 0.8;
    transition: 0.5s;
}
.map-container:hover { filter: grayscale(0); opacity: 1; }

@media (max-width: 768px) {
    .contact-form-card { padding: 25px; }
    .contact-hero { padding-top: 60px; }
}


/* profile */
/* --- User Profile Dash 2026 --- */
.avatar-large {
    width: 120px; height: 120px;
    background: linear-gradient(135deg, var(--primary-pink), #ff5e62);
    color: white; font-size: 2.5rem; font-weight: 800;
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    border: 5px solid #fff; box-shadow: 0 10px 30px rgba(230, 2, 120, 0.2);

}

.avatar-edit-btn {
    position: absolute; bottom: 5px; right: 5px;
    width: 35px; height: 35px; background: #fff; color: var(--primary-pink);
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1); cursor: pointer; border: 2px solid var(--primary-pink);
}

.stat-icon { width: 45px; height: 45px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; }
.bg-blue-light { background: #eef2ff; color: #4f46e5; }
.bg-pink-light { background: #fff1f2; color: #e11d48; }
.bg-success-light { background: #f0fdf4; color: #16a34a; }

/* Profile Tabs */
.profile-tabs .nav-link {
    background: #f8f9fa; color: #666; font-size: 0.9rem; font-weight: 600; border: none; transition: 0.3s;
}
.profile-tabs .nav-link.active {
    background: var(--primary-pink) !important; color: #fff !important;
}

.company-logo-sm { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; font-weight: bold; color: #999; border: 1px solid #eee; }

.rounded-5 { border-radius: 2rem !important; }
