.elementor-11887 .elementor-element.elementor-element-7c4438d{--display:flex;}@media(max-width:1024px){.elementor-11887 .elementor-element.elementor-element-7c4438d{--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-11887 .elementor-element.elementor-element-8b291ec{width:100%;max-width:100%;}.elementor-11887 .elementor-element.elementor-element-8b291ec > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-11887 .elementor-element.elementor-element-8b291ec.elementor-element{--order:-99999 /* order start hack */;}}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
 
:root{
  --cf:    #757575;
  --cgs:   #105BB3;
  --cgp:   #09305E;
  --cl:    #5b7bfb;
  --clh:   #181b31;
  --cp:    #184341;
  --cs:    #EFEFEF;
  --cw:    #ffffff;
  --cb:    #E0E0E0;
  --cd:    #1a1a1a;
  --cg:    #0E9F6E;
  --cgl:   #ECFDF5;
  --ca:    #D97706;
  --cal:   #FFFBEB;
  --cr:    #DC2626;
  --radius:10px;
  --sh:    0 1px 3px rgba(0,0,0,.05),0 4px 14px rgba(0,0,0,.05);
  --shm:   0 2px 8px rgba(0,0,0,.07),0 8px 24px rgba(0,0,0,.07);
}
 
body{color:var(--cf);background:var(--cs);min-height:100vh;padding:0 0 80px}
 
/* ── Price spotlight ── */
.price-spotlight{
  padding:36px 24px 28px;
  background:var(--cw);
  border-bottom:1px solid var(--cb);
  text-align: center;
}
.price-spotlight-inner{
  max-width:1100px;margin:0 auto;
}
.ps-eyebrow{
  font-size:11px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--cf);
  margin-bottom:10px;
}
.ps-amount{
  display:flex;align-items:flex-start;gap:2px;
  line-height:1;margin-bottom:14px;justify-content: center;
}
.ps-currency{
  font-size:clamp(24px,4vw,34px);font-weight:800;
  color:var(--cgs);margin-top:8px;
}
.ps-number{
  font-size:clamp(64px,12vw,96px);font-weight:800;
  background:linear-gradient(135deg,var(--cgs),var(--cgp));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;letter-spacing:-3px;
}
.ps-lock{
  font-size:14px;color:var(--cf);
  margin-bottom:14px;line-height:1.5;
}
.ps-lock strong{color:var(--cd)}
.ps-pills{display:flex;gap:8px;flex-wrap:wrap;margin: auto;}
.ps-pill{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 14px;border-radius:100px;
  font-size:12px;font-weight:500;
  background:var(--cs);color:var(--cf);
  border:1px solid var(--cb);
}
.ps-pill.featured{
  background:linear-gradient(135deg,var(--cgs),var(--cgp));
  color:var(--cw);font-weight:600;border:none;
}
.ps-pill svg{opacity:.6}
 
/* ── Two-column layout ── */
.main{
  max-width:1100px;margin:24px auto 0;padding:0 16px;
  display:grid;grid-template-columns:1fr 360px;
  gap:18px;align-items:start;
}
@media(max-width:820px){.main{grid-template-columns:1fr}}
 
/* ── Cards ── */
.card{
  background:var(--cw);border-radius:var(--radius);
  box-shadow:var(--sh);border:1px solid var(--cb);
  margin-bottom:14px;overflow:hidden;
}
.card-title{
  padding:12px 18px;
  border-bottom:1px solid var(--cs);
  font-size:11px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cf);
  display:flex;align-items:center;gap:7px;
}
.card-title svg{flex-shrink:0;color:var(--cf);opacity:.7}
 
/* ── Steps ── */
.steps{display:flex;padding:16px 12px;gap:0}
.step{
  display:flex;flex-direction:column;
  align-items:center;flex:1;position:relative;
}
.step:not(:last-child)::after{
  content:'';position:absolute;top:12px;
  left:calc(50% + 12px);right:calc(-50% + 12px);
  height:2px;background:var(--cb);
}
.step.done:not(:last-child)::after{background:var(--cg)}
.step-c{
  width:24px;height:24px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:700;flex-shrink:0;
  position:relative;z-index:1;margin-bottom:5px;
}
.step.done .step-c{background:var(--cg);color:var(--cw)}
.step.done .step-c svg{stroke:var(--cw)}
.step.now  .step-c{
  background:linear-gradient(135deg,var(--cgs),var(--cgp));
  color:var(--cw);box-shadow:0 0 0 4px rgba(16,91,179,.12);
}
.step.todo .step-c{
  background:var(--cs);color:var(--cf);
  border:1.5px solid var(--cb);
}
.step-lbl{font-size:10px;text-align:center;color:var(--cf);line-height:1.3}
.step.now  .step-lbl{color:var(--cgs);font-weight:600}
.step.done .step-lbl{color:var(--cg)}
 
/* ── Route visual ── */
.route-body{padding:18px;display:flex;gap:0}
.route-spine{
  display:flex;flex-direction:column;
  align-items:center;width:22px;min-width:22px;
}
.pin-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;z-index:1}
.pin-dot.a{background:var(--cg)}
.pin-dot.b{background:var(--cr)}
.route-dashes{
  width:2px;flex:1;margin:4px 0;
  background:repeating-linear-gradient(
    to bottom,var(--cb) 0,var(--cb) 5px,
    transparent 5px,transparent 10px
  );
}
.trk-dot{
  width:28px;height:28px;
  background:rgba(16,91,179,.07);
  border:1.5px solid rgba(16,91,179,.2);
  border-radius:50%;display:flex;
  align-items:center;justify-content:center;
  flex-shrink:0;color:var(--cgs);
}
.route-info{
  flex:1;padding-left:14px;
  display:flex;flex-direction:column;
}
.loc-lbl{
  font-size:10px;font-weight:700;text-transform:uppercase;
  letter-spacing:.07em;color:var(--cf);margin-bottom:2px;
}
.loc-val{
  font-size:20px;font-weight:700;
  color:var(--cd);line-height:1.2;
}
.mid-strip{
  display:flex;gap:16px;flex-wrap:wrap;
  padding:10px 0;margin:8px 0;
  border-top:1px dashed var(--cb);
  border-bottom:1px dashed var(--cb);
}
.mid-item{display:flex;flex-direction:column}
.mid-lbl{font-size:10px;color:var(--cf)}
.mid-val{font-size:13px;font-weight:600;color:var(--cd)}
 
/* ── Vehicle ── */
.veh-hero{
  display:flex;align-items:center;gap:12px;
  padding:14px 18px;border-bottom:1px solid var(--cs);
}
.veh-badge{
  width:46px;height:46px;
  background:rgba(16,91,179,.06);
  border:1px solid rgba(16,91,179,.12);
  border-radius:10px;display:flex;
  align-items:center;justify-content:center;
  flex-shrink:0;color:var(--cgs);
}
.veh-name{font-size:15px;font-weight:700;color:var(--cd);margin-bottom:2px}
.veh-sub{font-size:12px;color:var(--cf)}
 
/* ── Data rows ── */
.drow{
  display:flex;justify-content:space-between;align-items:center;
  padding:10px 18px;border-bottom:1px solid var(--cs);
  font-size:13px;gap:12px;
}
.drow:last-child{border-bottom:none}
.dlbl{color:var(--cf);flex-shrink:0}
.dval{font-weight:600;color:var(--cd);text-align:right}
 
/* ── Tags ── */
.tag{
  display:inline-block;padding:3px 9px;
  border-radius:100px;font-size:11px;font-weight:600;
}
.tg{background:var(--cgl);color:var(--cg)}
.tb{background:rgba(16,91,179,.07);color:var(--cgs)}
.tp{background:rgba(24,67,65,.07);color:var(--cp)}
.ta{background:var(--cal);color:var(--ca)}
 
/* ── CTA card ── */
.cta-card{
  background:var(--cw);border-radius:var(--radius);
  box-shadow:var(--shm);border:1px solid var(--cb);
  margin-bottom:14px;overflow:hidden;
}
.cta-header{
  background:linear-gradient(140deg,var(--cgp) 0%,var(--cgs) 100%);
  padding:20px;
}
.cta-h-label{
  font-size:10px;font-weight:700;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(255,255,255,.5);
  margin-bottom:6px;
}
.cta-h-price{
  display:flex;align-items:flex-start;gap:2px;
  line-height:1;margin-bottom:10px;
}
.cta-h-price sup{
  font-size:18px;font-weight:700;
  color:rgba(255,255,255,.7);margin-top:5px;
}
.cta-h-num{
  font-size:46px;font-weight:800;
  color:var(--cw);letter-spacing:-2px;
}
.cta-h-lock{
  font-size:12px;color:rgba(255,255,255,.65);line-height:1.5;
}
.cta-h-lock strong{color:var(--cw)}
.cta-body{padding:18px}
.btn-book{
  display:flex;align-items:center;justify-content:center;
  gap:8px;width:100%;padding:14px;
  background:linear-gradient(135deg,var(--cgs),var(--cgp));
  color:var(--cw);font-size:15px;font-weight:600;
  border:none;border-radius:8px;cursor:pointer;
  text-decoration:none;
  transition:opacity .15s,transform .1s,box-shadow .15s;
  box-shadow:0 4px 14px rgba(16,91,179,.25);
  margin-bottom:10px;
}
.cta-body a{width: 100%;}
.cta-body a:hover{color: #fff;border-radius:0px!important;}
.btn-book:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 6px 20px rgba(16,91,179,.35)}

.btn-book svg{flex-shrink:0}
.cta-or{text-align:center;font-size:12px;color:var(--cf);margin:8px 0}
.cta-note{text-align:center;font-size:13px;color:var(--cf);line-height:1.5}
.cta-note a{color:var(--cl);font-weight:500;text-decoration:none}
.cta-note a:hover{color:var(--clh);text-decoration:underline}
 
/* ── Price lines ── */
.pline{
  display:flex;justify-content:space-between;
  padding:10px 18px;font-size:13px;
  border-bottom:1px solid var(--cs);
}
.pline:last-child{border-bottom:none}
.plbl{color:var(--cf)}
.pamt{font-weight:600;color:var(--cd)}
.pzero .pamt{color:var(--cb)}
.ptotal{
  font-size:15px;font-weight:700;
  padding:14px 18px;background:var(--cs);
  border-top:2px solid var(--cb);
  border-bottom:none;margin-top:4px;
}
.ptotal .plbl{color:var(--cd)}
.ptotal .pamt{
  background:linear-gradient(135deg,var(--cgs),var(--cgp));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
 
/* ── Factor rows ── */
.factor-row{
  display:flex;gap:10px;padding:12px 18px;
  border-bottom:1px solid var(--cs);
  align-items:flex-start;
}
.factor-row:last-child{border-bottom:none}
.f-badge{
  width:32px;height:32px;min-width:32px;
  border-radius:8px;display:flex;
  align-items:center;justify-content:center;
  background:var(--cs);color:var(--cf);
  border:1px solid var(--cb);
}
.f-badge svg{flex-shrink:0}
.f-name{font-size:13px;font-weight:600;color:var(--cd);margin-bottom:2px}
.f-desc{font-size:12px;color:var(--cf);line-height:1.55}
 
/* ── Animations ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.au1{animation:fadeUp .32s ease forwards}
.au2{animation:fadeUp .32s ease .1s forwards;opacity:0}

/* ── Skeleton loading ── */
.skel{
  display:inline-block;
  min-width:80px;
  height:.9em;
  border-radius:4px;
  background:linear-gradient(90deg,#EFEFEF 25%,#E0E0E0 50%,#EFEFEF 75%);
  background-size:200% 100%;
  animation:shimmer 1.4s infinite;
  vertical-align:middle;
}
.skel-lg { min-width:140px; }
.skel-sm { min-width:50px; }
@keyframes shimmer{
  0%  { background-position:200% 0; }
  100%{ background-position:-200% 0; }
}
/* Price number skeleton */
#s-total.skel, #s-total-cta.skel{
  min-width:160px;
  height:1em;
  display:inline-block;
  border-radius:6px;
}