:root {
    --rajput-red: #9f071c;
    --rajput-red-dark: #760012;
    --rajput-red-soft: #b72132;
    --rajput-gold: #d7a044;
    --rajput-gold-light: #f4d48f;
    --rajput-ivory: #fffaf0;
    --rajput-cream: #fff3dc;
    --rajput-card: #fffdf9;
    --rajput-ink: #2b1b18;
    --rajput-muted: #746963;
    --rajput-line: #eadcc8;
    --rajput-shadow: 0 10px 28px rgba(91, 36, 23, .10);
    --mastery-blue: var(--rajput-red-dark);
    --mastery-yellow: var(--rajput-gold);
    --app-maroon: var(--rajput-red);
    --app-maroon-dark: var(--rajput-red-dark);
    --app-cream: var(--rajput-ivory);
    --app-cream-2: var(--rajput-cream);
    --app-gold: var(--rajput-gold);
}

html,
body {
    background: var(--rajput-ivory);
    color: var(--rajput-ink);
}

body {
    background-image: linear-gradient(180deg, #fffdf8 0, #fffaf0 100%);
}

.w3l-bootstrap-header {
    background: rgba(255, 253, 248, .97) !important;
    border-bottom: 1px solid var(--rajput-line) !important;
    box-shadow: 0 3px 16px rgba(91, 36, 23, .07) !important;
}

.directory-header,
.directory-header.compact,
.candidate-detail-header,
.candidate-missing-page .candidate-detail-header,
.member-header,
.member-dashboard-header {
    background: linear-gradient(135deg, var(--rajput-red), var(--rajput-red-dark)) !important;
    border-bottom: 1px solid rgba(244, 212, 143, .35) !important;
    box-shadow: 0 5px 18px rgba(91, 0, 16, .18) !important;
    color: #fffaf1 !important;
}

.navbar-brand,
.navbar-brand:hover,
.w3l-bootstrap-header .navbar-light .navbar-brand,
.directory-brand,
.member-brand {
    color: var(--rajput-red-dark) !important;
    font-family: Georgia, "Noto Sans Devanagari", serif;
}

.navbar-brand .fa,
.navbar-brand .fa-heart,
.directory-brand .fa,
.member-brand .fa {
    color: var(--rajput-gold) !important;
}

.member-dashboard-brand,
.member-dashboard-brand:hover,
.member-dashboard-brand span,
.directory-header .directory-brand,
.directory-header .directory-brand:hover,
.directory-header .directory-brand span,
.candidate-detail-header .candidate-detail-logo,
.candidate-detail-header .candidate-detail-logo:hover,
.candidate-detail-header .candidate-detail-logo span,
.member-header .brand,
.member-header .brand:hover,
.member-header .brand span {
    color: #fffaf1 !important;
}

.member-dashboard-brand .fa,
.directory-header .directory-brand .fa,
.candidate-detail-header .candidate-detail-logo .fa,
.member-header .brand .fa {
    color: var(--rajput-gold-light) !important;
}

.member-dashboard-nav nav,
.member-dashboard-nav nav > span,
.member-dashboard-nav nav a,
.directory-header .directory-nav nav,
.directory-header .directory-nav nav a,
.directory-header .directory-nav .welcome,
.candidate-detail-header nav,
.candidate-detail-header nav a,
.candidate-detail-header nav span,
.member-header nav,
.member-header nav a,
.member-header nav span {
    color: rgba(255, 250, 241, .86) !important;
}

.member-dashboard-nav nav .active,
.directory-header .directory-nav nav a:hover,
.candidate-detail-header nav a.active,
.candidate-detail-header nav a:hover,
.member-header nav a:hover {
    color: var(--rajput-gold-light) !important;
}

.member-dashboard-nav .logout-button,
.directory-header .logout-link,
.candidate-detail-header .candidate-logout {
    border-color: rgba(255, 250, 241, .55) !important;
    color: #fffaf1 !important;
}

.w3l-bootstrap-header .navbar-light .navbar-nav .nav-link,
.directory-nav a,
.member-nav a {
    color: var(--rajput-ink) !important;
}

.w3l-bootstrap-header .navbar-light .navbar-nav .active > .nav-link,
.w3l-bootstrap-header .navbar-light .navbar-nav .nav-link:hover,
.w3l-bootstrap-header .navbar-light .navbar-nav .nav-link:focus,
.directory-nav a:hover,
.member-nav a:hover {
    color: var(--rajput-red) !important;
}

.btn,
button,
input,
select,
textarea {
    border-radius: 9px;
}

.btn-primary,
.btn-theme,
.btn-theme2,
.home-action-button.primary,
.header-login-button,
.auth-submit,
.registration-submit,
.directory-search button,
.filter-submit,
.candidate-action-primary {
    background: linear-gradient(135deg, var(--rajput-red), var(--rajput-red-dark)) !important;
    border-color: var(--rajput-red) !important;
    color: #fffaf1 !important;
    box-shadow: 0 7px 18px rgba(159, 7, 28, .18);
}

.btn-primary:hover,
.btn-theme:hover,
.btn-theme2:hover,
.home-action-button.primary:hover,
.header-login-button:hover,
.auth-submit:hover,
.registration-submit:hover {
    background: var(--rajput-red-dark) !important;
    border-color: var(--rajput-red-dark) !important;
    color: #fff !important;
}

.home-action-button.secondary,
.btn-secondary,
.candidate-action-secondary {
    background: var(--rajput-card) !important;
    border-color: var(--rajput-gold) !important;
    color: var(--rajput-red-dark) !important;
}

.form-control,
.form-select,
input,
select,
textarea {
    background-color: #fffefa;
    border-color: var(--rajput-line) !important;
    color: var(--rajput-ink);
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
    border-color: var(--rajput-gold) !important;
    box-shadow: 0 0 0 3px rgba(215, 160, 68, .16) !important;
    outline: 0;
}

.find-match-card,
.registration-card,
.candidate-card,
.profile-card,
.detail-card,
.dashboard-card,
.member-dashboard-card,
.auth-card,
.payment-card {
    background: var(--rajput-card) !important;
    border: 1px solid var(--rajput-line) !important;
    border-radius: 14px !important;
    box-shadow: var(--rajput-shadow) !important;
}

h1,
h2,
h3,
h4,
.section-title {
    color: var(--rajput-red-dark);
}

.directory-header .directory-hero h1 {
    color: #ffffff !important;
    text-shadow: 0 2px 8px rgba(45, 0, 8, .28);
}

.w3l-footer-29-main,
.w3l-footer-29-main .footer-29 {
    background: linear-gradient(135deg, var(--rajput-red-dark), #5b0010) !important;
}

.footer-contact-center strong,
.footer-contact-center a:hover,
.w3l-footer-29-main a:hover {
    color: var(--rajput-gold-light) !important;
}

.footer-contact-center h4,
.footer-contact-center p,
.footer-contact-center a,
.footer-copy {
    color: #fffaf1;
}

.footer-contact-center .footer-contact-line {
    display: flex !important;
    width: 100%;
    max-width: 100%;
    flex-wrap: nowrap !important;
    align-items: center;
    justify-content: center;
    gap: clamp(2px, .45vw, 8px) !important;
    overflow: visible;
    font-size: clamp(5px, 1.05vw, 16px) !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

.footer-contact-center .footer-contact-line > * {
    display: inline-block;
    min-width: 0;
    flex: 0 0 auto;
    white-space: nowrap !important;
}

.footer-contact-center .footer-contact-separator {
    margin: 0 clamp(1px, .3vw, 5px) !important;
}

#movetop {
    background: var(--rajput-red) !important;
    color: var(--rajput-gold-light) !important;
}

.w3l-contact-breadcrum .breadcrum-bg,
.w3l-about-breadcrum .breadcrum-bg,
.breadcrum-bg {
    background-color: var(--rajput-red-dark) !important;
}

@media (max-width: 991px) {
    .w3l-bootstrap-header #main-navigation {
        background: var(--rajput-card) !important;
        border-color: var(--rajput-line) !important;
    }
}

.mission-stage {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: calc(100svh - 78px);
    overflow: hidden;
    padding: 80px 24px;
    position: relative;
}

.mission-backgrounds,
.mission-bg,
.mission-overlay {
    inset: 0;
    position: absolute;
}

.mission-bg {
    animation: mission-background-cycle 35s infinite;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0;
    transform: scale(1.03);
}

.mission-bg-1 { animation-delay: 0s; background-image: url("../img/BG1.png"); }
.mission-bg-2 { animation-delay: 7s; background-image: url("../img/BG2.png"); }
.mission-bg-3 { animation-delay: 14s; background-image: url("../img/BG3.png"); }
.mission-bg-4 { animation-delay: 21s; background-image: url("../img/BG4.png"); }
.mission-bg-all { animation-delay: 28s; background-image: url("../img/allBG.png"); }

.mission-overlay {
    background: linear-gradient(120deg, rgba(68, 0, 10, .80), rgba(118, 0, 18, .56) 45%, rgba(43, 12, 5, .70));
}

.mission-content-card {
    -webkit-backdrop-filter: blur(7px);
    backdrop-filter: blur(7px);
    background: linear-gradient(135deg, rgba(255, 250, 240, .58), rgba(255, 243, 220, .42));
    border: 1px solid rgba(255, 226, 166, .62);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(44, 0, 7, .32);
    max-width: 880px;
    min-height: 120px;
    padding: clamp(34px, 6vw, 72px);
    position: relative;
    text-align: center;
    width: 100%;
    z-index: 1;
}

.mission-content-card h1 {
    color: var(--rajput-red-dark);
    font-family: Georgia, "Noto Sans Devanagari", serif;
    font-size: clamp(34px, 5vw, 58px);
    margin: 0 0 25px;
    text-shadow: 0 1px 2px rgba(255, 255, 255, .75);
}

.mission-copy {
    color: var(--rajput-ink);
    font-size: clamp(17px, 2vw, 21px);
    line-height: 1.9;
    text-shadow: 0 1px 2px rgba(255, 255, 255, .72);
}

@keyframes mission-background-cycle {
    0%, 20% { opacity: 1; transform: scale(1.03); }
    25%, 95% { opacity: 0; transform: scale(1.08); }
    100% { opacity: 1; transform: scale(1.03); }
}

@media (prefers-reduced-motion: reduce) {
    .mission-bg { animation: none; }
    .mission-bg-1 { opacity: 1; }
}

@media (max-width: 760px) {
    .auth-body .auth-form-heading {
        display: none !important;
    }

    .auth-body .auth-form {
        padding-top: 28px !important;
        border-top: 1px solid rgba(198, 138, 58, .46) !important;
        border-radius: 34px !important;
    }
}
