/* Additions to the original stylesheet for the static rebuild. */
html.tag-no-scroll { overflow: hidden; }

/* Service rows: collapsed description, animated like the original (0.35s ease) */
.tag-svc-desc { height: 0; opacity: 0; transition: height .35s cubic-bezier(.22,.03,.26,1), opacity .35s cubic-bezier(.22,.03,.26,1); }

/* Mobile menu fade, with the links rising in one after another */
#tag-mobile-menu { animation: tag-fade .2s ease both; }
#tag-mobile-menu[hidden] { display: none; }
#tag-mobile-menu .tag-menu-item { animation: tag-rise .25s ease both; }
#tag-mobile-menu .tag-menu-item:nth-child(2) { animation-delay: .06s; }
#tag-mobile-menu .tag-menu-item:nth-child(3) { animation-delay: .12s; }
#tag-mobile-menu .tag-menu-item:nth-child(4) { animation-delay: .18s; }
@keyframes tag-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes tag-rise { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

/* Toast (stands in for Sonner) */
.tag-toast { position: fixed; z-index: 100; right: 16px; bottom: 16px; max-width: 356px; padding: 16px; border-radius: 8px;
  background: hsl(0 0% 10%); color: hsl(0 0% 98%); border: 1px solid hsl(0 0% 18%); font: 13px/1.4 "DM Sans", sans-serif;
  box-shadow: 0 4px 12px rgba(0,0,0,.25); opacity: 0; transform: translateY(12px); transition: opacity .3s, transform .3s; }
.tag-toast.tag-toast-in { opacity: 1; transform: none; }

/* Step-by-step forms: slide in from the side, fade the character, animate the progress bar */
.tag-slide-r { animation: tag-slide-r .4s cubic-bezier(.4,0,.2,1) both; }
.tag-slide-l { animation: tag-slide-l .4s cubic-bezier(.4,0,.2,1) both; }
@keyframes tag-slide-r { from { opacity: 0; transform: translateX(60px); } to { opacity: 1; transform: none; } }
@keyframes tag-slide-l { from { opacity: 0; transform: translateX(-60px); } to { opacity: 1; transform: none; } }
.tag-fade { opacity: 0; transition: opacity .4s; }
.tag-fade.tag-fade-in { opacity: 1; }
.tag-progress-fill { transition: width .5s ease-in-out; }
[data-tag-stepform] [hidden] { display: none !important; }

@media (prefers-reduced-motion: reduce) {
  .tag-slide-r, .tag-slide-l { animation: none; }
  #tag-mobile-menu, #tag-mobile-menu .tag-menu-item { animation: none; }
  .tag-svc-desc { transition: none; }
}
