html, body { max-width: 100%; overflow-x: hidden; }
#main { overflow-x: hidden; max-width: 100%; }
.flash-messages-wrap { position: fixed; top: 72px; left: 0; right: 0; z-index: 9960; padding: 0 16px; pointer-events: none; }
.flash-messages-wrap .earnily-flash { pointer-events: auto; max-width: min(720px, 100%); margin: 0 auto 10px; }
[data-aos] { opacity: 1 !important; transform: none !important; transition: none !important; }
#hero { position: relative; isolation: isolate; min-height: 100vh; min-height: 100dvh; display: flex; align-items: center; overflow: hidden; background: #2b2b2d; padding: 110px 0 70px; }
#hero .hero-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; }
#hero .hero-media picture { position: absolute; inset: 0; display: block; width: 100%; height: 100%; margin: 0; }
#hero .hero-media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; max-width: none; }
#hero .hero-scrim { position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(105deg, rgba(43,43,45,0.93) 0%, rgba(49,49,51,0.85) 50%, rgba(49,49,51,0.7) 100%); }
#hero .hero-content { position: relative; z-index: 2; width: 100%; text-align: center; }
#hero .hero-content h1 { color: #fff !important; margin-bottom: 1rem; }
#hero .hero-content p { color: #ececec !important; margin-bottom: 1.5rem; }
@media (min-width: 992px) { #hero .hero-content { text-align: left; } }
@media (min-width: 1200px) {
  .header-bar { display: flex; align-items: center; flex-wrap: nowrap; gap: 16px; }
  .header .logo { flex-shrink: 0; }
  .header .navmenu { margin-left: auto; flex-shrink: 1; min-width: 0; }
  .header .navmenu ul { display: flex !important; flex-direction: row !important; flex-wrap: nowrap; align-items: center; position: static !important; width: auto !important; background: transparent !important; padding: 0 !important; box-shadow: none !important; max-height: none !important; overflow: visible !important; }
  .header .navmenu ul li { width: auto !important; display: list-item !important; }
  .header .navmenu ul li a, .header .navmenu ul li form button { display: inline-block !important; width: auto !important; padding: 10px 12px !important; min-height: 0 !important; text-align: center !important; border-bottom: none !important; text-transform: uppercase !important; font-size: 14px !important; }
  .header .navmenu .btn-nav, .header .navmenu .nav-activate-badge { display: inline-block !important; width: auto !important; margin: 0 0 0 8px !important; }
}
@media (max-width: 1199.98px) {
  .header-bar { display: flex; align-items: center; flex-wrap: nowrap; }
  .mobile-nav-toggle { margin-left: auto; background: transparent !important; border: none !important; box-shadow: none !important; color: #fff; }
  .navmenu ul { display: none !important; flex-direction: column !important; align-items: stretch !important; position: fixed !important; top: 68px !important; left: 0 !important; right: 0 !important; width: 100% !important; max-height: calc(100dvh - 68px); overflow-y: auto; background: #313133 !important; padding: 8px 0 20px !important; margin: 0 !important; box-shadow: 0 12px 32px rgba(0,0,0,0.3); z-index: 9999 !important; }
  body.mobile-nav-active .navmenu ul { display: flex !important; }
  .navmenu ul li { width: 100% !important; margin: 0 !important; padding: 0 !important; display: block !important; }
  .navmenu ul li a, .navmenu ul li form button { display: block !important; width: 100% !important; padding: 16px 24px !important; min-height: 48px !important; line-height: 1.4 !important; text-align: left !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 16px !important; box-sizing: border-box !important; }
  .navmenu .btn-nav, .navmenu .nav-activate-badge { margin: 12px 16px 0 !important; width: calc(100% - 32px) !important; text-align: center !important; display: block !important; }
}
