/* ───────────────────────────────────────────────
   AJEX overrides on top of the Faster theme.
   Keep this small — faster.css holds the base theme.
   ─────────────────────────────────────────────── */

/* Homepage hero background (theme image we copied in) */
.jumbotron.ajex-hero {
    background: linear-gradient(rgba(31,31,46,.65), rgba(31,31,46,.65)),
                url('../images/faster/header.jpg') center center/cover no-repeat;
}

/* Inner-page banner (About / Service / Blog / Contact) */
.page-banner {
    background: linear-gradient(rgba(31,31,46,.78), rgba(31,31,46,.78)),
                url('../images/faster/header.jpg') center center/cover no-repeat;
    padding: 90px 0;
    margin-bottom: 3rem;
}
.page-banner h1 { color: #fff; }
.page-banner .breadcrumb {
    background: transparent;
    justify-content: center;
    margin: 0;
}
.page-banner .breadcrumb-item,
.page-banner .breadcrumb-item a { color: #fff; }
.page-banner .breadcrumb-item.active { color: #FF4800; }

/* Make embedded service/quick-action cards keep a consistent height */
.ajex-service-box { background: #F2F2F4; padding: 30px; height: 100%; }

/* Keep the tracking button text from wrapping on small hero */
.ajex-hero .btn { white-space: nowrap; }

/* Tracking status badge */
.ajex-badge { background: #FF4800; color: #fff; font-size: .85rem; padding: 6px 18px; }

/* Tracking step tracker */
.ajex-steps { display: flex; }
.ajex-step { flex: 1; text-align: center; position: relative; }
.ajex-step::before {
    content: ''; position: absolute; top: 23px; left: -50%; width: 100%;
    height: 3px; background: #e9ecef; z-index: 0;
}
.ajex-step:first-child::before { display: none; }
.ajex-step.done::before, .ajex-step.current::before { background: #FF4800; }
.ajex-step .circle {
    position: relative; z-index: 1; width: 46px; height: 46px; border-radius: 50%;
    background: #e9ecef; color: #888; display: flex; align-items: center;
    justify-content: center; margin: 0 auto 8px;
}
.ajex-step.done .circle, .ajex-step.current .circle { background: #FF4800; color: #fff; }
.ajex-step .lbl { font-size: .78rem; font-weight: 600; color: #555; }
.ajex-step.current .lbl, .ajex-step.done .lbl { color: #1F1F2E; }

/* Tracking history timeline */
.ajex-timeline { list-style: none; padding-left: 24px; margin-top: 16px; }
.ajex-timeline li { position: relative; padding: 0 0 22px 22px; border-left: 2px solid #e9ecef; }
.ajex-timeline li:last-child { border-left-color: transparent; }
.ajex-timeline li::before {
    content: ''; position: absolute; left: -8px; top: 2px; width: 14px; height: 14px;
    border-radius: 50%; background: #e9ecef; border: 3px solid #fff;
}
.ajex-timeline li.active::before { background: #FF4800; }

/* Register account-type selector */
.ajex-type {
    display: block;
    padding: 14px;
    border: 2px solid #ced4da;
    text-align: center;
    cursor: pointer;
    background: #fff;
    margin-bottom: 0;
}
.ajex-type.active {
    border-color: #FF4800;
    background: rgba(255, 72, 0, .05);
}
