/* =====================================================================
   Nexora (demo6) — tracking skin  [purple + magenta, horizontal timeline]
   ===================================================================== */
:root{
  --nx-pur:#2e1065; --nx-pur-2:#5b21b6; --nx-pur-d:#1a0938; --nx-violet:#7c3aed;
  --nx-mag:#db2777; --nx-mag-d:#be185d; --nx-ink:#1f1033;
  --nx-muted:#6b6480; --nx-line:#e7e3f0; --nx-bg:#f6f4fb; --nx-bg2:#efeaf8; --nx-white:#fff;
}
*{box-sizing:border-box}
.nx-body{margin:0;font-family:'Public Sans','Inter',sans-serif;color:var(--nx-ink);background:var(--nx-bg);line-height:1.6}
.nx-body h1,.nx-body h2,.nx-body h3,.nx-body h4{font-family:'Geologica','Public Sans',sans-serif;color:var(--nx-pur);margin:0;line-height:1.12;font-weight:700}
.nx-wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.nx-body a{color:inherit;text-decoration:none}.nx-body img{max-width:100%;display:block}
.nx-eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--nx-mag)}

.nx-nav{background:#fff;border-bottom:1px solid var(--nx-line);position:sticky;top:0;z-index:300}
.nx-nav__in{max-width:1180px;margin:0 auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.nx-nav__logo img{height:46px}
.nx-links{display:flex;align-items:center;gap:4px}
.nx-links a{font-weight:700;font-size:.9rem;color:var(--nx-pur);padding:10px 14px;border-radius:8px}
.nx-links a:hover,.nx-links a.on{color:var(--nx-mag)}
.nx-links .cta{background:var(--nx-mag);color:#fff !important;border-radius:999px;padding:11px 22px !important}
.nx-links .cta:hover{background:var(--nx-mag-d)}
.nx-burger{display:none;background:none;border:0;cursor:pointer;padding:8px}.nx-burger rect{fill:var(--nx-pur)}

.nx-hero,.nx-rhead{background:linear-gradient(130deg,var(--nx-pur),var(--nx-pur-2));color:#fff;position:relative;overflow:hidden}
.nx-hero::after,.nx-rhead::after{content:"";position:absolute;right:-70px;top:-70px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(219,39,119,.4),transparent 70%)}
.nx-hero{padding:54px 0 62px}
.nx-hero h1{color:#fff;font-size:clamp(2.1rem,4.6vw,3.2rem);position:relative;z-index:1}
.nx-hero .nx-eyebrow{color:#f9a8d4}
.nx-hero p{color:#d6ccef;max-width:560px;margin-top:10px;font-size:1.05rem;position:relative;z-index:1}
.nx-form{display:flex;max-width:600px;margin-top:24px;border-radius:999px;overflow:hidden;background:#fff;padding:6px;position:relative;z-index:1;box-shadow:0 20px 40px -22px rgba(0,0,0,.6)}
.nx-form input{flex:1;border:0;padding:14px 20px;font-size:1.05rem;font-family:inherit}
.nx-form input:focus{outline:none}
.nx-form button{background:var(--nx-mag);color:#fff;border:0;font-family:'Geologica',sans-serif;font-weight:700;padding:0 30px;cursor:pointer;border-radius:999px}
.nx-form button:hover{background:var(--nx-mag-d)}
.nx-hint{color:#c3b7e0;font-size:.9rem;margin-top:13px;position:relative;z-index:1}
.nx-hint code{background:rgba(255,255,255,.14);padding:3px 9px;border-radius:999px;color:#fff;cursor:pointer;font-weight:700}
.nx-note{max-width:600px;margin:28px auto 0;background:rgba(255,255,255,.08);border-left:4px solid var(--nx-mag);padding:18px 22px;border-radius:0 10px 10px 0;color:#e3d9f5;position:relative;z-index:1}
.nx-note b{color:#fff}
.nx-404{max-width:600px;margin:40px auto;background:#fff;border-radius:16px;border-top:4px solid var(--nx-mag);padding:26px;box-shadow:0 18px 44px -28px rgba(0,0,0,.4)}
.nx-404 h3{color:var(--nx-mag)}.nx-404 p{color:var(--nx-muted);margin:0}
.nx-section{padding:40px 0 70px}

.nx-rhead{padding:34px 0 30px}
.nx-rhead__row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start;position:relative;z-index:1}
.nx-rhead .nx-eyebrow{color:#f9a8d4}
.nx-rhead .tn{font-size:clamp(1.7rem,3.6vw,2.5rem);color:#fff;margin:10px 0}
.nx-rhead .copy{font-size:.68rem;background:rgba(255,255,255,.16);border:0;color:#fff;padding:5px 10px;border-radius:999px;cursor:pointer;font-weight:800;margin-left:10px;vertical-align:middle;text-transform:uppercase;letter-spacing:.05em}
.nx-chip{display:inline-flex;align-items:center;gap:8px;background:var(--nx-mag);color:#fff;font-weight:800;padding:8px 18px;border-radius:999px;font-size:.84rem;text-transform:uppercase;letter-spacing:.03em}
.nx-chip::before{content:"";width:8px;height:8px;border-radius:50%;background:#fff;animation:nxpulse 1.5s infinite}
@keyframes nxpulse{0%{opacity:.35}50%{opacity:1}100%{opacity:.35}}
.nx-eta{color:#d6ccef;margin-top:13px}.nx-eta b{color:#fff}
.nx-actions{display:flex;gap:9px;flex-wrap:wrap}
.nx-btn{display:inline-flex;align-items:center;gap:8px;font-family:'Geologica',sans-serif;font-weight:600;font-size:.85rem;border-radius:999px;padding:11px 18px;cursor:pointer;border:2px solid transparent;transition:.2s}
.nx-btn--ghost{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.35)}
.nx-btn--ghost:hover{background:#fff;color:var(--nx-pur)}
.nx-btn--mag{background:var(--nx-mag);color:#fff}.nx-btn--mag:hover{background:var(--nx-mag-d)}
.nx-btn--pur{background:var(--nx-pur);color:#fff}.nx-btn--pur:hover{background:var(--nx-pur-2)}
.nx-btn--line{background:#fff;color:var(--nx-pur);border-color:var(--nx-line)}.nx-btn--line:hover{border-color:var(--nx-pur)}

/* segmented progress */
.nx-prog{background:#fff;border:1px solid var(--nx-line);border-radius:16px;padding:24px 26px;margin:-34px auto 26px;position:relative;z-index:5;box-shadow:0 18px 44px -28px rgba(46,16,101,.5)}
.nx-prog__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:8px}
.nx-prog__top b{font-family:'Geologica',sans-serif;color:var(--nx-pur)}
.nx-prog__top .sm{color:var(--nx-muted);font-size:.9rem}
.nx-segs{display:flex;gap:8px}
.nx-seg{flex:1;height:10px;border-radius:999px;background:var(--nx-bg2);overflow:hidden}
.nx-seg i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--nx-pur),var(--nx-mag));border-radius:999px;transition:width .6s}
.nx-seg.full i{width:100%}.nx-seg.half i{width:55%}
.nx-mlabels{display:flex;justify-content:space-between;margin-top:12px}
.nx-mlabel{flex:1;text-align:center;font-size:.76rem;font-weight:700;color:var(--nx-muted);text-transform:uppercase;letter-spacing:.03em;display:flex;flex-direction:column;align-items:center;gap:6px}
.nx-mlabel i{width:30px;height:30px;border-radius:50%;background:var(--nx-bg2);color:#a99fc2;display:flex;align-items:center;justify-content:center;font-size:.8rem}
.nx-mlabel.done{color:var(--nx-pur)}.nx-mlabel.done i{background:var(--nx-pur);color:#fff}
.nx-mlabel.current{color:var(--nx-mag)}.nx-mlabel.current i{background:var(--nx-mag);color:#fff;box-shadow:0 0 0 5px rgba(219,39,119,.18)}

.nx-card{background:#fff;border:1px solid var(--nx-line);border-radius:16px;overflow:hidden;margin-bottom:22px}
.nx-card__h{padding:16px 22px;border-bottom:1px solid var(--nx-line);display:flex;align-items:center;justify-content:space-between}
.nx-card__h h3{font-size:1.05rem;display:flex;align-items:center;gap:10px}.nx-card__h h3 i{color:var(--nx-mag)}
.nx-card__h .live{font-size:.76rem;color:var(--nx-muted);display:inline-flex;align-items:center;gap:6px}
.nx-card__h .live::before{content:"";width:8px;height:8px;border-radius:50%;background:#16a34a;animation:nxpulse 1.6s infinite}
.nx-card__b{padding:22px}
#map{height:400px;width:100%;background:var(--nx-bg2)}
.ge-pulse{position:absolute;transform:translate(-50%,-50%);pointer-events:none;z-index:1}
.ge-pulse__ring{position:absolute;left:0;top:0;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:rgba(219,39,119,.45);animation:gepulse 2.4s cubic-bezier(.2,.6,.3,1) infinite}
.ge-pulse__ring--2{animation-delay:1.2s}
@keyframes gepulse{0%{transform:scale(.45);opacity:.85}100%{transform:scale(3.4);opacity:0}}
.nx-route{padding:13px 22px;background:var(--nx-bg);border-top:1px solid var(--nx-line);font-size:.86rem;color:var(--nx-muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.nx-route .here{display:inline-flex;align-items:center;gap:6px}.nx-route .here::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--nx-mag)}

/* horizontal journey */
.nx-htl{display:flex;gap:0;overflow-x:auto;padding:8px 4px 14px}
.nx-hstep{flex:0 0 220px;position:relative;padding-top:34px}
.nx-hstep::before{content:"";position:absolute;top:13px;left:0;right:0;height:3px;background:var(--nx-line)}
.nx-hstep:first-child::before{left:50%}.nx-hstep:last-child::before{right:50%}
.nx-hstep.first::before{background:linear-gradient(90deg,var(--nx-line),var(--nx-mag))}
.nx-hstep__d{position:absolute;top:4px;left:50%;transform:translateX(-50%);width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--nx-pur);z-index:1}
.nx-hstep.first .nx-hstep__d{border-color:var(--nx-mag);background:var(--nx-mag)}
.nx-hcard{background:var(--nx-bg);border-radius:12px;padding:14px 16px;margin:0 8px}
.nx-hstep.first .nx-hcard{background:#fdf2f8;border:1px solid #fbcfe8}
.nx-hcard .d{font-size:.76rem;color:var(--nx-muted);font-weight:700}
.nx-hcard .s{font-family:'Geologica',sans-serif;font-weight:700;color:var(--nx-pur);margin:1px 0;font-size:.95rem}
.nx-hcard .l{font-size:.86rem;color:var(--nx-ink)}
.nx-hcard .n{font-size:.8rem;color:var(--nx-muted);margin-top:3px}

.nx-grid{display:grid;grid-template-columns:1fr 340px;gap:22px}
.nx-kv{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}
.nx-kv div span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--nx-muted);font-weight:800;margin-bottom:3px}
.nx-kv div b{font-weight:600;color:var(--nx-ink)}
.nx-parcel img{width:100%;aspect-ratio:16/7;object-fit:cover;border-bottom:1px solid var(--nx-line)}
.nx-party{background:#fff;border:1px solid var(--nx-line);border-radius:16px;margin-bottom:20px;overflow:hidden}
.nx-party__h{background:var(--nx-pur);color:#fff;padding:13px 18px;font-family:'Geologica',sans-serif;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:9px}.nx-party__h i{color:#f9a8d4}
.nx-party__b{padding:16px 18px}.nx-party__b .r{margin-bottom:11px}.nx-party__b .r:last-child{margin-bottom:0}
.nx-party__b .r span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--nx-muted);font-weight:800}
.nx-party__b .r b{font-weight:600;color:var(--nx-ink);word-break:break-word}
.nx-trk2{background:var(--nx-pur);border-radius:16px;padding:20px;margin-bottom:20px}
.nx-trk2 h4{color:#fff;font-family:'Geologica',sans-serif;font-size:.95rem;margin:0 0 12px}
.nx-trk2 input{width:100%;border:0;padding:13px;border-radius:999px;margin-bottom:10px;font-family:inherit}
.nx-trk2 button{width:100%;background:var(--nx-mag);color:#fff;border:0;padding:13px;border-radius:999px;font-family:'Geologica',sans-serif;font-weight:700;cursor:pointer}
.nx-trk2 button:hover{background:var(--nx-mag-d)}
.nx-instr{background:#fff;border:1px solid var(--nx-line);border-radius:16px;padding:18px;margin-bottom:20px}
.nx-instr h4{color:var(--nx-pur);font-family:'Geologica',sans-serif;font-size:.92rem;margin:0 0 8px}
.nx-instr .cur{color:var(--nx-muted);font-size:.86rem;margin-bottom:10px}.nx-instr .cur b{color:var(--nx-ink)}
.nx-instr select{width:100%;padding:11px;border:1.5px solid var(--nx-line);border-radius:10px;font-family:inherit;margin-bottom:10px}
.nx-instr .saved{color:#16a34a;font-weight:700;font-size:.84rem;display:none}.nx-instr .saved.show{display:block}
.nx-barcode{background:#fff;border:1px solid var(--nx-line);border-radius:16px;padding:20px;text-align:center}
.nx-barcode h4{color:var(--nx-pur);font-family:'Geologica',sans-serif;font-size:.92rem}
.nx-barcode p{color:var(--nx-muted);font-size:.82rem;margin:.2rem 0 1rem}
.nx-barcode .num{font-weight:700;letter-spacing:.14em;color:var(--nx-pur);margin:.7rem 0}
.nx-foot{background:var(--nx-pur-d);color:#b4a8d0}
.nx-foot__in{max-width:1180px;margin:0 auto;padding:44px 22px;display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:30px}
.nx-foot__in img{height:46px;margin-bottom:12px}
.nx-foot p{color:#a397c4;font-size:.9rem;max-width:320px}
.nx-foot h4{color:#fff;font-size:.86rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}
.nx-foot a{display:block;color:#a397c4;padding:5px 0;font-size:.9rem}.nx-foot a:hover{color:var(--nx-mag)}
.nx-foot__bar{border-top:1px solid rgba(255,255,255,.1);text-align:center;padding:16px;font-size:.84rem;color:#8a7eb0}
@media(max-width:900px){.nx-grid{grid-template-columns:1fr}.nx-kv{grid-template-columns:1fr}.nx-foot__in{grid-template-columns:1fr}}
@media(max-width:760px){
  .nx-links{position:fixed;inset:0 0 0 auto;width:min(290px,80vw);background:#fff;flex-direction:column;align-items:stretch;padding:80px 20px 20px;transform:translateX(100%);transition:.3s;box-shadow:-10px 0 40px rgba(0,0,0,.2);z-index:290}
  .nx-links.open{transform:none}.nx-burger{display:block;z-index:300}
  .nx-form{flex-direction:column;border-radius:16px}.nx-form input{border-radius:10px}.nx-form button{padding:15px;border-radius:10px;margin-top:6px}
  .nx-mlabel{font-size:.6rem}
}
@media print{.nx-nav,.nx-foot,.nx-actions,.nx-trk2,#map,.nx-route,.nx-instr select,.nx-instr button,.nx-barcode .nx-btn{display:none!important}.nx-grid{grid-template-columns:1fr}.nx-rhead{background:var(--nx-pur)!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
