/* Eterano v1.21.2ac — public request page polish */

/* On wide desktop, let the request form scroll normally while the shorter
   menu / business-information column remains useful instead of leaving a
   large empty column below it. */
@media (min-width:1101px){
  #publicPage .public-form{position:static}
  #publicPage .public-menu-column{position:sticky;top:96px;align-self:start}
}

/* Footer: keep branding as one lockup and remove the inherited legal-nav
   top margin that caused Privacy / Terms to sit lower than the branding. */
#publicPage .public-footer{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:.65rem 1rem;
  line-height:1.2;
  text-align:center;
}
#publicPage .public-powered{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  white-space:nowrap;
}
#publicPage .public-footer .brand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.4rem;
  line-height:1;
}
#publicPage .public-footer .public-legal-links{
  display:inline-flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  gap:.8rem;
  width:auto;
  margin:0;
  line-height:1.2;
}
#publicPage .public-footer .public-legal-links a{
  display:inline-flex;
  align-items:center;
  line-height:1.2;
}

/* Preserve compact mobile layout while keeping each footer group internally
   aligned. If the viewport is very narrow the two groups wrap as whole units. */
@media (max-width:560px){
  #publicPage .public-footer{
    flex-direction:row;
    align-items:center;
    gap:.65rem 1rem;
  }
  #publicPage .public-footer .public-legal-links{width:auto;margin:0}
}
@media (max-width:340px){
  #publicPage .public-footer .public-legal-links{flex-basis:100%}
}


/* v1.21.2ad — final public footer alignment */
#publicPage .public-footer{
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  gap:14px;
  line-height:1;
}
#publicPage .public-powered,
#publicPage .public-footer .public-legal-links{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  height:26px;
  margin:0;
  line-height:1;
}
#publicPage .public-powered>span,
#publicPage .public-footer .brand-word,
#publicPage .public-footer .public-legal-links a{
  display:inline-flex;
  align-items:center;
  height:26px;
  margin:0;
  padding:0;
  line-height:1;
}
#publicPage .public-footer .brand{
  display:inline-flex;
  align-items:center;
  height:26px;
  gap:6px;
  line-height:1;
}
#publicPage .public-footer .brand-mark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:20px;
  height:20px;
  flex:0 0 20px;
}
#publicPage .public-footer .brand-mark img{
  display:block;
  width:20px;
  height:20px;
}
@media (max-width:560px){
  #publicPage .public-footer{
    flex-direction:row;
    flex-wrap:nowrap;
    gap:12px;
  }
  #publicPage .public-footer .public-legal-links{
    flex-basis:auto;
    width:auto;
  }
}
