/* Repairs for the original Midnight Snack design. Original fonts, sizes, colors,
   backgrounds and gallery layout remain in main.css; this file adds safe controls. */
[hidden]{display:none!important}
html:has(.legacy-site),body.legacy-site{min-width:320px}
.legacy-site button{cursor:pointer}
.legacy-site button:focus-visible,.legacy-site a:focus-visible,.legacy-site input:focus-visible,.legacy-site textarea:focus-visible{outline:3px solid #f000ff!important;outline-offset:3px}
.legacy-site .header{z-index:30}
.legacy-site .header,.legacy-site section,.legacy-site .fullscreen-bg,.legacy-site #nav,.legacy-site dialog.popup{min-width:0}
.legacy-site .header__logo img{display:block;width:150px;height:auto}
.legacy-site #menu-trigger{appearance:none;background:transparent;border:0;padding:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;height:44px;min-height:44px}
.legacy-site #menu-trigger .menu-trigger__caption{width:64px;flex:1 1 auto}
.legacy-site #menu-trigger .menu-trigger__icon{position:static;flex:0 0 26px}
.legacy-site .noise{background-image:url('../img/noise-tile.png');background-repeat:repeat;background-size:256px 256px;opacity:.2}
.legacy-site #notify-close{appearance:none;border:0;padding:0;display:inline-flex;align-items:center;justify-content:flex-end;gap:10px;height:44px;min-height:44px}
.legacy-site #notify-close .popup-close__caption{width:64px;flex:1 1 auto}
.legacy-site #notify-close .popup-close__icon{position:static;flex:0 0 26px}
.legacy-site button.link-s{background:linear-gradient(90deg,#ff0f7b 0%,#c91de1 50%,#7c3aed 100%);background-size:200% 100%;background-clip:text;-webkit-background-clip:text;color:transparent}
.legacy-site #nav{background:#1a1a1a;z-index:20}
.legacy-site .legacy-contact-link{font-size:24px;cursor:pointer;color:#fff}
.legacy-site #main .socials,.legacy-site #main .copyright{opacity:1}
.legacy-site .skip-link{position:fixed;left:1rem;top:1rem;z-index:10000;padding:.75rem 1.1rem;background:#1a1a1a;color:#fff;text-decoration:underline;border:1px solid #fff;transform:translateY(-160%)}
.legacy-site .skip-link:focus{transform:translateY(0)}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.legacy-space{height:50px}
.legacy-gallery-title{margin-top:.25rem}
.legacy-site h1.block__title{font:normal 200 3.6rem/1.2 "Plus Jakarta Sans",sans-serif;color:#fff;margin-top:0;background:none;-webkit-text-fill-color:currentColor;-webkit-text-stroke:0;animation:none}
.legacy-site h1.block__title span.italic{font-style:italic;font-weight:400}
.legacy-site h1.block__title span.bold{font-weight:700}
.legacy-h5{font:normal 500 1.5rem/1 "Plus Jakarta Sans",sans-serif;text-transform:uppercase;letter-spacing:.1rem;color:#fff;margin-bottom:.6rem}
.team__descr h3{font-size:2.2rem}
.legacy-site .my-gallery__descr h3 a{font:inherit;color:inherit;text-decoration:none}
.legacy-site .my-gallery__descr h3 a small{font:normal 400 1.2rem/1.2 "Plus Jakarta Sans",sans-serif}
.legacy-site .my-gallery__descr{pointer-events:none}
.legacy-site .my-gallery picture{display:block}
.legacy-site .legacy-utility{display:flex;justify-content:flex-end;gap:22px;padding:0 0 18px;font-size:1.1rem}
.legacy-site .legacy-utility a{color:#ccc;min-height:44px;display:inline-flex;align-items:center}
.legacy-site .preview-banner{position:fixed;top:0;left:0;width:100%;z-index:60;display:flex;justify-content:space-between;gap:20px;padding:8px 20px;background:#242424;border-bottom:1px solid #c91de1;font-size:1.2rem;color:#fff}
.legacy-site:has(.preview-banner) .header{top:40px}
.legacy-site .legacy-video-toggle{position:absolute;bottom:85px;right:20px;z-index:5;padding:8px 15px;border:1px solid #ffffff70;background:#0009;color:#fff;font-size:1.2rem;min-height:44px}
.legacy-site dialog.popup{max-width:none;max-height:none;width:100%;height:100%;margin:0;padding:0;border:0;color:#ccc}
.legacy-site dialog.popup[open]{opacity:1;visibility:visible}
.legacy-site dialog.popup[open] .popup-close{opacity:1}
.legacy-site dialog.popup[open] .popup__content{opacity:1;transform:none}
.legacy-site dialog::backdrop{background:#0008}
.legacy-site .honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.legacy-site .form-notice{font-size:1.3rem;line-height:1.6;margin:16px 0;color:#ccc}
.legacy-site .form-notice a,.legacy-site .form-privacy a{color:#e2e2e2;text-decoration:underline}
.legacy-site .form-privacy{font-size:1.1rem;margin-top:14px}
.legacy-site [data-form-status]{font-size:1.4rem;line-height:1.6;margin-top:14px;overflow-wrap:anywhere}
.legacy-site [data-form-status].error{color:#ffafb6}
.legacy-site [data-form-status].success{color:#bae1ba}
.legacy-site button:disabled{opacity:.55;cursor:not-allowed}
.legacy-site .cf-turnstile{margin:14px 0}
.legacy-site .contact-data__item a{overflow-wrap:anywhere}
.legacy-site .legacy-video-detail{margin-top:40px}
.legacy-site .legacy-video-detail video{display:block;width:100%;max-height:80vh;background:#000}
.legacy-site .legacy-video-detail>a{display:block;max-width:1000px}
.legacy-site .legacy-prose{padding-top:160px;max-width:1000px}
.legacy-site .legacy-prose h2{font-size:2.6rem;margin:3rem 0 1.5rem}
.legacy-site .legacy-prose p{margin:1.5rem 0;line-height:1.8}
.legacy-site .legacy-prose a{text-decoration:underline;color:inherit}
.legacy-site .legacy-not-found{padding-top:180px;min-height:75vh;text-align:center}
.legacy-site .legacy-not-found h1{font-size:12rem}
.legacy-site .legacy-not-found h2{font-size:3.6rem}
.legacy-site .legacy-not-found p{margin:24px auto;max-width:600px}
.legacy-site .legacy-not-found .btn{margin:8px}
.page-404 .error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a1a 0%,#2a2a2a 100%);color:white;text-align:center;padding:2rem}
.page-404 .error-content{max-width:600px}
.page-404 .error-code{font-size:8rem;font-weight:900;color:#ff6b6b;margin:0;line-height:1}
.page-404 .error-title{font-size:2rem;font-weight:700;margin:1rem 0;color:white}
.page-404 .error-message{font-size:1.1rem;margin:1rem 0 2rem;color:#ccc;line-height:1.6}
.page-404 .error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.page-404 .btn{display:inline-block;padding:12px 24px;background:#ff6b6b;color:white;text-decoration:none;border-radius:6px;font-weight:700;transition:all .3s ease;border:none;cursor:pointer}
.page-404 .btn:hover{background:#ff5252;transform:translateY(-2px);box-shadow:0 4px 12px #ff6b6b4d}
.page-404 .btn-secondary{background:transparent;border:2px solid #ff6b6b;color:#ff6b6b}
.page-404 .btn-secondary:hover{background:#ff6b6b;color:white}
/* Preserve the original rotating service words without flip_style.css's accidental universal grid rule. */
.flip_wrapper{box-sizing:content-box;background:transparent;height:50px;padding:0;display:flex;border-radius:8px}
.flip_words{overflow:hidden}
.flip-word{display:block;height:100%;padding-left:0;color:gold;animation:legacy-flip-words 12s infinite}
@keyframes legacy-flip-words{0%{transform:translateY(0)}7.69%{transform:translateY(-100%)}15.38%{transform:translateY(-200%)}23.07%{transform:translateY(-300%)}30.76%{transform:translateY(-400%)}38.45%{transform:translateY(-500%)}46.14%{transform:translateY(-600%)}53.83%{transform:translateY(-700%)}61.52%{transform:translateY(-800%)}69.21%{transform:translateY(-900%)}76.90%{transform:translateY(-1000%)}84.59%{transform:translateY(-1100%)}92.28%{transform:translateY(-1200%)}100%{transform:translateY(0)}}
/* Identical, equally-spaced groups keep the original moving client strip seamless. */
.legacy-site .logo-container{padding-bottom:3rem}
.legacy-site .logo-container .logo-track{gap:0;animation:legacy-logo-loop 30s linear infinite;width:max-content}
.legacy-site .logo-group{display:flex;align-items:center;justify-content:space-around;gap:4rem;padding-right:4rem;flex-shrink:0;min-width:100vw}
.legacy-site .logo-container img.logo-img--portrait{height:100px;width:auto;min-width:0;max-width:150px;object-fit:contain}
.legacy-site .logo-container.is-paused .logo-track{animation-play-state:paused}
.legacy-site [data-logo-toggle]{position:absolute;right:2rem;bottom:0;padding:2px 10px;border:0;background:#1a1a1a;color:#ccc;font-size:1.1rem;min-height:28px}
@keyframes legacy-logo-loop{to{transform:translateX(-50%)}}
#lightbox{width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:70px 55px 55px;border:0;background:#101010;color:#fff;overflow:hidden}
#lightbox::backdrop{background:#000e}
#lightbox>img{display:block;width:100%;height:calc(100% - 30px);object-fit:contain}
.lightbox-close{position:absolute;right:20px;top:12px;min-height:44px;background:transparent;color:#fff;border:1px solid #fff6;padding:8px 20px;font-size:1.4rem}
.lightbox-caption{text-align:center;font-size:1.3rem;margin-top:12px}
[data-lightbox-prev],[data-lightbox-next]{position:absolute;top:50%;width:44px;height:60px;transform:translateY(-50%);background:#0009;color:#fff;border:1px solid #fff3;font-size:2.4rem}
[data-lightbox-prev]{left:5px}[data-lightbox-next]{right:5px}
@media(max-width:1199px){
  .legacy-site .main__intro{min-height:560px}
  .legacy-site .main__media{height:auto;min-height:0;aspect-ratio:9/16;overflow:hidden}
  .legacy-site .main__media .media__content{position:absolute;inset:0;height:100%}
  .legacy-site #main-video{object-fit:contain}
  .legacy-site .main__intro .intro__content{margin:8rem 0 0;padding-bottom:190px}
}
@media(max-width:767px){
  .legacy-site .main__intro{min-height:480px}
  .legacy-site .logo-group{gap:3rem;padding-right:3rem}
  .legacy-site .logo-container img.logo-img--portrait{height:70px;max-width:80px}
  .legacy-site dialog.popup .popup__container{padding-bottom:30px}
  .legacy-site .legacy-utility{justify-content:center;gap:16px}
  .legacy-site .legacy-prose{padding-top:120px}
  .legacy-site .legacy-not-found{padding-top:120px}
  #lightbox{padding:65px 44px 55px}
  .page-404 .error-code{font-size:6rem}.page-404 .error-title{font-size:1.5rem}.page-404 .error-actions{flex-direction:column;align-items:center}.page-404 .btn{width:100%;max-width:300px}
}
@media(min-width:1400px){.legacy-site h1.block__title{font-size:4rem}}
@media(prefers-reduced-motion:reduce){.legacy-site *,.legacy-site *::before,.legacy-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.legacy-site .marquee__inner{transform:none}.legacy-site .flip-word:not(:first-child){display:none}}
