/* TAM Tracking V1. Overrides only the hero tracking UI and the dedicated results page. */
:root { --tam-track-green: #59a08b; --tam-track-purple: #592f74; }

/* Hero: visually compact, aligned with the existing heading */
#hero .tam-hero-content { align-items: flex-start; }
#hero .tam-hero-content p { max-width: 1100px; margin-bottom: 4px; }
#hero .tam-hero-tracker { width: min(100%, 545px); margin: 24px 0 0; position: relative; z-index: 6; }
#hero .tam-tracker-form {
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  height: 64px;
  padding: 4px;
  border: 6px solid rgba(255,255,255,.20);
  border-radius: 100px;
  background: #fff;
  background-clip: padding-box;
  box-shadow: 0 0 0 6px rgba(255,255,255,.19), 0 12px 35px rgba(19,18,36,.15);
}
#hero .tam-tracker-icon { flex: 0 0 auto; margin: 0 12px 0 14px; color: #72678b; font-size: 24px; line-height: 1; }
#hero .tam-tracker-form input {
  flex: 1 1 auto; min-width: 0; width: 100%; height: 100%; border: 0;
  background: transparent; outline: 0; box-shadow: none; font: 400 14px 'Poppins', sans-serif;
  color: #242536; padding: 0 4px;
}
#hero .tam-tracker-form input::placeholder { color: #8990a3; opacity: 1; }
#hero .tam-tracker-form input:focus-visible { outline: 2px solid var(--tam-track-green); outline-offset: -2px; border-radius: 6px; }
#hero .tam-tracker-form button {
  flex: 0 0 133px;
  align-self: stretch;
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 0;
  border-radius: 100px;
  background: linear-gradient(105deg,#459f8a,#59b99c);
  color: #fff;
  font: 500 15px 'Poppins', sans-serif;
  line-height: 1;
  cursor: pointer;
  transition: filter .2s, transform .2s;
}
#hero .tam-tracker-form button span,
#hero .tam-tracker-form button i {
  color: #fff;
  line-height: 1;
  margin: 0;
}
#hero .tam-tracker-form button span { font-weight: 600; }
#hero .tam-tracker-form button:hover { filter: brightness(.94); transform: translateY(-1px); }
#hero .tam-tracker-form button:focus-visible { outline: 3px solid #d4fff3; outline-offset: 2px; }
#hero .tam-tracker-form button i { font-size: 18px; }
#hero .tam-social { margin: 26px 0 0; gap: 16px; }
#hero .tam-social a { text-decoration: none; width: 24px; height: 24px; }
#hero .tam-social i { color: #fff; margin: 0; font-size: 19px; }
#hero .tam-social a:hover i { color: #75d4b6; }
#hero .tam-hero-content { text-align: left; }

@media (max-width: 767px) {
  #hero .tam-hero-content { align-items: center; text-align: center; padding: 24px 8px; }
  #hero .tam-hero-content h2 { font-size: clamp(24px, 7vw, 32px); }
  #hero .tam-hero-content p { font-size: 13px; line-height: 1.75; }
  #hero .tam-hero-tracker { width: min(100%, 420px); margin-top: 22px; }
  #hero .tam-tracker-form { height: 58px; padding: 4px; border-width: 5px; }
  #hero .tam-tracker-form button { height: 100%; flex-basis: 100px; gap: 6px; font-size: 13px; }
  #hero .tam-tracker-icon { font-size: 19px; margin: 0 8px; }
  #hero .tam-tracker-form input { font-size: 12px; }
  #hero .tam-social { justify-content: center; }
}
@media (max-width: 370px) {
  #hero .tam-tracker-form button { flex-basis: 80px; }
  #hero .tam-tracker-form button i { display:none; }
  #hero .tam-tracker-icon { margin: 0 6px; }
}

/* Tracking details page - isolated from homepage and template general styles */
body.tam-tracking-page { background: #f8f8fb; }
body.tam-tracking-page #header { background: #fff; box-shadow: 0 2px 12px rgba(35,20,60,.06); }
body.tam-tracking-page #header .logo::before { background-image: url('../images/logo-color.svg'); }
@media (min-width: 1280px) { body.tam-tracking-page #header .navbar a { color: #25243a; } }
body.tam-tracking-page #header .navbar a:hover { color: var(--tam-track-green); }
.tam-tracking-main { background: #f8f8fb; min-height: calc(100vh - 140px); padding: 143px 0 74px; color: #29283a; }
.tam-tracking-main .tam-back-link { color: #54746e; text-decoration: none; font-size: 13px; font-weight: 500; }
.tam-tracking-main .tam-back-link:hover { color: #237e68; }
.tam-tracking-main .tam-tracking-title { margin: 17px 0 8px; font-size: clamp(28px,3vw,38px); font-weight: 600; color: #25263b; }
.tam-tracking-main .tam-tracking-intro { color: #747689; font-size: 14px; margin-bottom: 28px; }
.tam-tracking-main .tam-results-card { background: #fff; padding: clamp(24px,3.2vw,40px); border: 1px solid #ecebf3; border-radius: 22px; box-shadow: 0 18px 50px rgba(34,20,70,.055); margin-bottom: 22px; }
.tam-tracking-main .tam-results-top { display:flex; flex-wrap:wrap; align-items:center; gap: 24px; justify-content:space-between; }
.tam-tracking-main .tam-label { color: #8c8c9b; text-transform: uppercase; letter-spacing: .1em; font-size: 10px; font-weight: 600; }
.tam-tracking-main .tam-order-number { font-size:clamp(23px, 2.8vw, 33px); color: #29263f; margin:5px 0 0; font-weight:600; word-break:break-word; }
.tam-tracking-main .tam-status-badge { font-size:12px; display:inline-flex; align-items:center; gap:8px; border-radius: 30px; padding: 11px 17px; color:#247560; background:#e7f6f0; font-weight:600; }
.tam-tracking-main .tam-status-badge.in-progress { background:#f0ecfa; color:#674e9a; }
.tam-tracking-main .tam-status-badge.neutral { background:#f2f2f5; color:#606579; }
.tam-tracking-main .tam-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:38px; gap:9px; }
.tam-tracking-main .tam-step { display:flex; align-items:center; flex-direction:column; gap:8px; text-align:center; position:relative; font-size:12px; color:#a2a5af; }
.tam-tracking-main .tam-step:not(:last-child)::after { content:""; height:2px; background:#e2e5ec; position:absolute; left:calc(50% + 23px); top:17px; width:calc(100% - 37px); }
.tam-tracking-main .tam-step.done:not(:last-child)::after { background:#59a08b; }
.tam-tracking-main .tam-step-icon { display:flex; justify-content:center; align-items:center; background:#e9e9ef; color:#9699a8; height:36px; width:36px; border-radius:50%; font-size:15px; }
.tam-tracking-main .tam-step.done .tam-step-icon { background:#59a08b; color:#fff; }
.tam-tracking-main .tam-step.done { color:#35384b; }
.tam-tracking-main .tam-section-title { margin:0 0 25px; font-size:18px; font-weight:600; color:#28293d; }
.tam-tracking-main .tam-timeline { list-style:none; margin:0; padding:0; }
.tam-tracking-main .tam-timeline li { display:grid; grid-template-columns:22px minmax(0, 1fr); gap: 16px; position:relative; padding-bottom: 24px; }
.tam-tracking-main .tam-timeline li:not(:last-child)::before { content:""; position:absolute; left:8px; top:16px; bottom:0; width:2px; background:#e4e6ed; }
.tam-tracking-main .tam-timeline-dot { width:18px; height:18px; border:4px solid #e5e0f0; background:#9278ae; border-radius:50%; position:relative; z-index:1; }
.tam-tracking-main .tam-timeline li:first-child .tam-timeline-dot { border-color:#d2eee3; background:#43a98d; }
.tam-tracking-main .tam-event-heading { font-size:14px; font-weight:600; margin:0 0 3px; color:#333448; }
.tam-tracking-main .tam-event-time { font-size:12px; color:#898b9a; }
.tam-tracking-main .tam-error { color:#9a3644; background:#fff3f3; border:1px solid #f6d8dc; border-radius:12px; padding:15px 18px; margin-bottom:20px; font-size:14px; }
.tam-tracking-main .tam-search-compact { display:flex; border:1px solid #e5e5ef; background:#fff; padding:5px; border-radius:40px; max-width:590px; height:58px; }
.tam-tracking-main .tam-search-compact input { flex:1; min-width:0; border:0; outline:none; padding:0 18px; border-radius:32px; font-size:14px; color:#29283a; background:#fff; }
.tam-tracking-main .tam-search-compact button { border:0; background:var(--tam-track-green); color:#fff; border-radius:30px; padding:0 25px; font-size:14px; font-weight:600; cursor:pointer; }
.tam-tracking-main .tam-search-compact button:hover { background:#448b76; }
.tam-tracking-main .tam-notice { color:#8a8b98; font-size:12px; margin-top:18px; }
@media(max-width: 575px) {
  .tam-tracking-main { padding-top:125px; }
  .tam-tracking-main .tam-results-card { border-radius:17px; padding:22px 17px; }
  .tam-tracking-main .tam-step { font-size:10px; }
  .tam-tracking-main .tam-step-icon { height:30px; width:30px; font-size:13px; }
  .tam-tracking-main .tam-step:not(:last-child)::after { left:calc(50% + 20px); top:14px; width:calc(100% - 25px); }
  .tam-tracking-main .tam-search-compact button { padding:0 16px; }
}
