/* =========================================
   HOME FOOTER — HORIZON DISPATCH
   Signal, route & legal
   ========================================= */

.home-dispatch__signal{
  display:grid;
  grid-template-columns:
    minmax(220px,.8fr)
    minmax(340px,1.2fr);
  gap:clamp(30px,7vw,100px);
  align-items:center;

  margin-top:8px;
  padding:26px 0;

  border-top:
    1px solid rgba(255,255,255,.10);

  border-bottom:
    1px solid rgba(255,255,255,.10);
}

.home-dispatch__signal-copy{
  max-width:390px;
}

.home-dispatch__signal-head{
  display:flex;
  align-items:center;
  gap:10px;
}

.home-dispatch__signal-head > span{
  margin-top:-12px;
  color:#ff6e40;
  font-size:.48rem;

  text-shadow:
    0 0 12px rgba(255,110,64,.8);

  animation:
    home-dispatch-pulse
    2.8s
    ease-in-out
    infinite;
}

.home-dispatch__signal h2{
  margin:0;

  color:#f5f0e1;

  font-family:var(--font-title);

  font-size:
    clamp(1.25rem,1.8vw,1.65rem);

  line-height:1.1;
}

.home-dispatch__signal-copy > p{
  margin:8px 0 0;

  color:
    rgba(245,240,225,.54);

  font-size:.82rem;
}

.home-dispatch__signal form{
  width:100%;
}

.home-dispatch__field{
  display:grid;

  grid-template-columns:
    minmax(0,1fr) 46px;

  width:100%;

  overflow:hidden;

  border:
    1px solid rgba(255,255,255,.15);

  border-radius:3px;

  background:#f5f0e1;
}

.home-dispatch__field input{
  min-width:0;
  width:100%;

  padding:13px 14px;

  border:0;
  outline:0;

  background:transparent;
  color:#17344e;

  font:inherit;
  font-size:.88rem;
  font-weight:750;
}

.home-dispatch__field button{
  width:46px;
  min-width:46px;
  height:46px;

  padding:0;
  margin:0;

  display:grid;
  place-items:center;

  border:0;
  border-radius:0;

  cursor:pointer;

  background:#ff6e40;
  color:#17344e;

  font-size:1.1rem;
}

.home-dispatch__field button:hover{
  background:#ff805c;
}

.home-dispatch__consent{
  display:flex;
  gap:8px;

  margin-top:10px;

  color:
    rgba(245,240,225,.48);

  font-size:.72rem;
  line-height:1.45;
}

.home-dispatch__consent input{
  margin-top:2px;
  accent-color:#ff6e40;
}

.home-dispatch__consent a{
  color:
    rgba(245,240,225,.78);
}

.home-dispatch__route{
  display:grid;
  grid-template-columns:
    auto
    minmax(40px,1fr)
    auto
    minmax(40px,1fr)
    auto;
  gap:14px;
  align-items:center;
  padding:17px 0;
  border-top:1px solid rgba(255,255,255,.09);
  border-bottom:1px solid rgba(255,255,255,.09);
  color:rgba(244,239,228,.42);
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.home-dispatch__route strong{
  color:rgba(244,239,228,.82);
  font-size:.7rem;
  letter-spacing:.24em;
}

.home-dispatch__route-line{
  position:relative;
  height:1px;
  background:
    linear-gradient(
      90deg,
      rgba(255,255,255,.08),
      rgba(255,119,77,.42)
    );
}

.home-dispatch__route-line--reverse{
  background:
    linear-gradient(
      90deg,
      rgba(255,119,77,.42),
      rgba(255,255,255,.08)
    );
}

.home-dispatch__route-line i{
  position:absolute;
  top:50%;
  left:0;
  width:5px;
  height:5px;
  border-radius:50%;
  background:#ff774d;
  box-shadow:
    0 0 12px rgba(255,119,77,.75);
  transform:translateY(-50%);
  animation:
    home-dispatch-route
    6s
    ease-in-out
    infinite
    alternate;
}

.home-dispatch__route-line--reverse i{
  animation-direction:alternate-reverse;
}

.home-dispatch__bottom{
  display:flex;
  justify-content:space-between;
  gap:22px;
  align-items:center;
  padding-top:18px;
  color:rgba(244,239,228,.38);
  font-size:.72rem;
}

.home-dispatch__bottom p{
  margin:0;
}

.home-dispatch__bottom nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px 16px;
}

.home-dispatch__bottom a{
  color:inherit;
  text-decoration:none;
}

.home-dispatch__bottom a:hover{
  color:rgba(244,239,228,.8);
}

.home-dispatch .hp-field{
  position:absolute !important;

  left:-10000px !important;
  top:auto !important;

  width:1px !important;
  height:1px !important;

  padding:0 !important;
  margin:0 !important;

  overflow:hidden !important;

  opacity:0 !important;

  pointer-events:none !important;
}