/* ----------------------------------------------------
   Auvna Brand Dark Theme
---------------------------------------------------- */
:root {
    --auv-dark: #0f1115;      /* Auvna dark tone */
    --auv-primary: #17A2B8;   /* Auvna primary brand color */
}

.text-primary {
    color: var(--auv-primary) !important;
}

/* Unified dark background for header/footer */
.auv-bg-dark {
    background-color: var(--auv-dark) !important;
    color: #ffffff;
}

/* Thin muted top border (footer/header separation) */
.auv-bg-dark.border-top {
    border-top: 1px solid rgba(255, 255, 255, 0.24) !important;
}

/* Text-based logo styling for footer/header */
.auvna-logo {
    font-size: 1.75rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    color: var(--auv-primary) !important;   /* Auvna Primary Brand Color */
    text-transform: uppercase;
    font-family: "Segoe UI", sans-serif;
}

.auvna-logo:hover {
    opacity: 0.85;
}


/* ----------------------------------------------------
   Footer Styling
---------------------------------------------------- */
.footer a {
    color: rgba(255, 255, 255, 0.65);
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer a:hover {
    color: #ffffff;
}

/* Muted text tone for dark mode */
.text-light-emphasis {
    color: rgba(255, 255, 255, 0.55) !important;
}

/* Footer section titles */
.footer h5 {
    letter-spacing: 0.5px;
}

/* Social icon buttons */
.footer .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.35) !important;
    color: rgba(255, 255, 255, 0.85) !important;
    transition: all 0.2s ease;
}

.footer .btn-outline-light:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    border-color: rgba(255, 255, 255, 0.55) !important;
    color: #ffffff !important;
}

/* Bottom bar */
.footer-bottom {
    background-color: #000;
    border-top: 1px solid rgba(255, 255, 255, 0.24);
    color: rgba(255, 255, 255, 0.55);
}

/* ----------------------------------------------------
   Back to Top Button Styling
---------------------------------------------------- */
#backToTop {
    background-color: var(--auv-primary) !important;
    border: none !important;
}

#backToTop:hover {
    opacity: 0.85;
}
#backToTop {
    background-color: var(--auv-primary) !important;
    border: none !important;
}

#backToTop:hover {
    opacity: 0.85;
}

/* ----------------------------------------------------
   Navbar Styling
---------------------------------------------------- */
/* Base navbar link styling */
.navbar .nav-link {
    font-weight: 600;
}

/* Navbar active link */
.navbar .nav-link.active {
    color: var(--auv-primary) !important;
    text-decoration: none;
}

/* Navbar hover state */
.navbar .nav-link:hover {
    color: var(--auv-primary) !important;
    text-decoration: none;
}

/* Optional: stronger hover for active link */
.navbar .nav-link.active:hover {
    color: var(--auv-primary) !important;
}


/* Theme toggle button */
#themeToggle {
    padding-top: .5rem;
    padding-bottom: .5rem;
}

#themeToggle:hover i {
    opacity: 0.7;
}

/* 404 page text tone */
.text-light-emphasis {
    color: rgba(255, 255, 255, 0.55) !important;
}

.btn-primary {
    background-color: var(--auv-primary) !important;
    border-color: var(--auv-primary) !important;
}

.btn-primary:hover {
    background-color: #138496 !important; /* darker teal */
    border-color: #117a8b !important;
}
.auv-gradient {
    background: linear-gradient(135deg, #17A2B8, #0f7f8f);
}

/* Center navbar links perfectly while keeping icons on the right */
.navbar-nav {
    margin-left: auto;
    margin-right: auto;
    display: flex;
    gap: 1.25rem; /* adjust spacing between links */
}
.navbar .nav-link {
    padding: 0.5rem 0.75rem;
    font-weight: 600;
}

@media (max-width: 991.98px) {
    .navbar-nav {
        margin: 0;
        gap: 0.75rem;
    }
}


/* Welcome user text styling */
.welcome-user {
    display: inline-block;
}
.welcome-user {
    line-height: 1;
}
.welcome-user {
    margin-right: 0.75rem;
}
.welcome-user:hover {
    color: var(--auv-primary) !important;
    opacity: 0.9;
}


/* Ultra Corporate Hero — Bootstrap Theme Native */
.hero-ultra-corp {
    background: linear-gradient(
        to bottom,
        var(--bs-body-bg),
        var(--bs-body-bg)
    );
    transition: background 0.3s ease;
}

/* Accent Line */
.hero-ultra-accent {
    width: 48px;
    height: 3px;
    background-color: var(--auv-primary);
    border-radius: 2px;
}

/* Title */
.hero-ultra-title {
    font-size: 2rem;
    line-height: 1.3;
    color: var(--bs-body-color);
}

/* Subtitle */
.hero-ultra-subtitle {
    font-size: 1.1rem;
    color: var(--bs-body-color);
    opacity: 0.85;
    max-width: 520px;
}

/* CTA */
.hero-ultra-cta {
    box-shadow: 0 0 14px rgba(23,162,184,0.25);
}
.hero-ultra-cta:hover {
    box-shadow: 0 0 22px rgba(23,162,184,0.45);
}

/* Image */
.hero-ultra-img {
    border-radius: 8px;
    max-height: 340px;
    object-fit: cover;
    box-shadow: 0 4px 18px rgba(0,0,0,0.10);
}

/* Dark mode image shadow (Bootstrap variable aware) */
[data-bs-theme="dark"] .hero-ultra-img {
    box-shadow: 0 4px 18px rgba(23,162,184,0.20);
}

/* Fade-in Animation */
.hero-ultra-fade {
    opacity: 0;
    animation: heroUltraFade 0.7s ease forwards;
}
@keyframes heroUltraFade {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}


/* Theme-Aware Section Backgrounds */
.bg-section {
    background-color: var(--bs-secondary-bg);
}

.bg-section-card {
    background-color: var(--bs-tertiary-bg);
}

/* Theme-Aware Text */
.text-section-title {
    color: var(--bs-body-color);
}

.text-section-subtitle {
    color: var(--bs-body-color);
    opacity: 0.75;
}

/* Light shadow that adapts to theme */
.shadow-sm {
    box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.08) !important;
}
[data-bs-theme="dark"] .shadow-sm {
    box-shadow: 0 0.125rem 0.25rem rgba(255,255,255,0.08) !important;
}
