body:not(.sqs-edit-mode-active) #page .page-section:first-child {
  padding-top: 0 !important;
}
body {
  margin: 0; padding: 0;
  font-family: Arial, sans-serif;
  background: #000;
  overflow: hidden;
  position: fixed;
  width: 100%; height: 100%;
}
body.loading-complete {
  overflow: auto;
  position: static;
  height: auto;
}
.loading-overlay {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: #000000;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: transform 0.8s ease-in-out;
}
.loading-overlay.slide-out { transform: translateX(-100%); }
.logo-container { position: relative; margin-bottom: 40px; }
.logo-inner { position: relative; width: 400px; height: 120px; }
.out { opacity: 0; }
.progress-outline {
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%;
  fill: none; stroke: #ffffff; stroke-width: 3;
  filter: drop-shadow(0 0 10px rgba(255,255,255,0.5));
}
.progress-outline path,
.progress-outline polygon,
.progress-outline rect {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: stroke-dashoffset 0.3s ease-out;
}
.fill {
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%;
  opacity: 0;
  transition: opacity 0.6s ease-in-out;
  filter: drop-shadow(0 0 20px rgba(255,255,255,0.3));
}
.fill.show { opacity: 1; }
.fill path, .fill polygon, .fill rect { fill: white; }
.progress-container { color: white; text-align: center; }
.progress { font-size: 48px; font-weight: 300; margin: 0; }
.loading-text {
  font-size: 18px; margin-top: 10px;
  opacity: 0.8; letter-spacing: 2px; text-transform: uppercase;
}
.loading-dots span { opacity: 0; animation: dotFade 1.8s infinite; }
.loading-dots span:nth-child(1) { animation-delay: 0s; }
.loading-dots span:nth-child(2) { animation-delay: 0.3s; }
.loading-dots span:nth-child(3) { animation-delay: 0.6s; }
@keyframes dotFade { 0%, 77% { opacity: 0; } 22% { opacity: 1; } }
.splash-wrapper-out,
.splash-wrapper-in {
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: #000000;
  z-index: 99998;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.65s cubic-bezier(0.77, 0, 0.175, 1);
  transform: translateX(0);
}
.splash-wrapper-out { display: flex; }
.splash-wrapper-out.hidden,
.splash-wrapper-in.hidden { display: none !important; }
.splash-wrapper-out.slide-out { transform: translateX(-100%); }
.splash-wrapper-in { transform: translateX(100%); }
.splash-wrapper-in.slide-in { transform: translateX(0); }
.splash-wrapper-in.slide-out { transform: translateX(-100%); }
@media (max-width: 768px) {
  .logo-inner { width: 300px; height: 90px; }
  .progress { font-size: 36px; }
  .loading-text { font-size: 14px; }
}
@media (max-width: 480px) {
  .logo-inner { width: 250px; height: 75px; }
  .progress { font-size: 28px; }
  .loading-text { font-size: 12px; }
}
