
@font-face { font-family: 'Huawei Sans'; src: url('/upload/HuaweiSans-Light.ttf') format('truetype'); font-style: normal; font-weight: 300; font-display: swap; }

@font-face { font-family: 'Huawei Sans'; src: url('/upload/HuaweiSans-Regular.ttf') format('truetype'); font-style: normal; font-weight: 400 500; font-display: swap; }
@font-face { font-family: 'Huawei Sans'; src: url('/upload/HuaweiSans-Bold.ttf') format('truetype'); font-style: normal; font-weight: 600 900; font-display: swap; }

:root {
  --hw-black: #010101;
  --hw-navy: #021632;
  --hw-blue: #04224d;
  --hw-red: #ce0e2d;
  --hw-white: #fff;
  --hw-line: rgba(255, 255, 255, .62);
  --hw-width: 1064px;
  --hw-font: 'Huawei Sans', Arial, sans-serif;
  --hw-header-offset: 80px;

  --hw-about-image: url('/upload/about-background.png');
  --hw-timer-height: 322px;
}
html { scroll-behavior: smooth; }
body { min-width: 0; max-width: none; background: var(--hw-black); color: var(--hw-white); font-family: var(--hw-font); }
#section1, #section2, #section3, #section4, #section5, #section6, #section7 { scroll-margin-top: var(--hw-header-offset); }
.hw-container { width: calc(100% - 48px); max-width: var(--hw-width); margin: 0 auto; }
.hw-title { margin: 0 0 32px; font-size: clamp(26px, 2.1vw, 35px); line-height: 1.2; font-weight: 700; color: inherit; }
.hw-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 24px; border: 1px solid var(--hw-red); border-radius: 50px; background: var(--hw-red); color: #fff; font: 700 16px/1.3 var(--hw-font); text-decoration: none; text-align: center; text-transform: uppercase; cursor: pointer; transition: background-color .3s, color .3s, border-color .3s; }
.hw-button:hover, .hw-button:focus-visible { background: #fff; border-color: #fff; color: #1c1c1c; text-decoration: none; }
.hw-button:focus-visible, .hw-speaker:focus-visible, .hw-footer a:focus-visible { outline: 3px solid #67cfff; outline-offset: 5px; }
[hidden] { display: none !important; }

#navigation, #navigation.transparentMenu, #navigation.white_menu,
#navigation .nav-list, #navigation .nav-dropdown,
#navigation ul.nav-list .dropdown-menu { background-color: var(--hw-black) !important; }
#navigation nav ul li a, #navigation.transparentMenu nav ul li a,
#navigation.transparentMenu ul.nav-list li ul.dropdown-menu li a,
#navigation .brand a { color: #fff !important; }
#navigation nav ul li a:hover, #navigation nav ul li a.active { color: var(--hw-red) !important; }
#navigation nav ul li a::after { background-color: var(--hw-red); }
#navigation #nav-toggle span, #navigation #nav-toggle span::before, #navigation #nav-toggle span::after { background-color: #fff; }
#navigation #nav-toggle.active span { background-color: transparent; }




@media (max-width: 600px) { :root { --hw-timer-height: 248px; } .hw-container { width: calc(100% - 32px); } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .hw-button, .hw-speaker { transition: none; }
}

#navigation { height: 76px; border-bottom: 1px solid rgba(255,255,255,.13); box-shadow: 0 4px 20px rgba(0,0,0,.18) !important; }
#navigation > .container { width: calc(100% - 48px); max-width: var(--hw-width); height: 100%; padding: 0; }
#navigation .nav-container { position: relative; display: flex; align-items: center; justify-content: space-between; height: 100%; }
#navigation .brand { flex: 0 0 auto; width: 190px; margin: 0; padding: 0; line-height: 1; }
#navigation .brand a { display: block; }
#navigation .brand .logoMenu { width: 100%; height: 42px; object-fit: contain; object-position: left center; }
#navigation .nav-container > nav { width: auto; margin-left: auto; }
#navigation nav ul.nav-list > li > a { margin: 0 !important; padding: 12px 16px !important; font: 500 14px/20px var(--hw-font) !important; border-radius: 24px; transition: background-color .2s, color .2s; }
#navigation nav ul.nav-list > li > a::after { display: none; }
#navigation nav ul.nav-list > li > a:hover, #navigation nav ul.nav-list > li > a.active { background: rgba(255,255,255,.1); color: #fff !important; }
#navigation nav ul.nav-list > li > a[href="#section6"] { margin-left: 12px !important; padding-left: 23px !important; padding-right: 23px !important; background: var(--hw-red); color: #fff !important; }
#navigation nav ul.nav-list > li > a[href="#section6"]:hover { background: #fff; color: var(--hw-navy) !important; }
#navigation a:focus-visible { outline: 2px solid #67cfff; outline-offset: 3px; }
#section1 { margin-top: 76px; }
@media (min-width: 1270px) {
  #navigation .nav-list { display: flex !important; align-items: center; gap: 6px; }
}
@media (max-width: 1269px) {
  #navigation { height: 64px; }
  #section1 { margin-top: 64px; }
  #navigation .brand { width: 160px; }
  #navigation .brand .logoMenu { height: 36px; }
  #navigation .nav-mobile { position: absolute; top: 0; right: -8px; width: 48px; height: 64px; }
  #navigation #nav-toggle { left: 2px; top: 10px; width: 44px; height: 44px; padding: 0; }
  #navigation #nav-toggle span { left: 8px; top: 21px; }
  #navigation #nav-toggle span, #navigation #nav-toggle span::before, #navigation #nav-toggle span::after { width: 28px; height: 2px; }
  #navigation #nav-toggle span::before { top: -8px; }
  #navigation #nav-toggle span::after { bottom: -8px; }
  #navigation #nav-toggle.active span::before, #navigation #nav-toggle.active span::after { top: 0; }
  #navigation ul.nav-list { position: absolute; top: 63px; left: 0; right: 0; max-height: calc(100dvh - 80px); overflow-y: auto; padding: 12px; border: 1px solid rgba(255,255,255,.2); border-radius: 0 0 16px 16px; box-shadow: 0 16px 24px rgba(0,0,0,.3); }
  #navigation ul.nav-list > li { float: none; }
  #navigation nav ul.nav-list > li > a { display: block; width: 100%; padding: 14px 16px !important; border-radius: 8px; }
  #navigation nav ul.nav-list > li > a[href="#section6"] { margin: 6px 0 0 !important; text-align: center; }
}
@media (max-width: 600px) { #navigation > .container { width: calc(100% - 32px); } }


.hw-registration-success { box-sizing: border-box; width: 100%; max-width: 850px; margin: 24px auto; padding: clamp(24px, 5vw, 48px); border: 1px solid rgba(255,255,255,.5); border-radius: 24px; background: #071c36; color: #fff !important; text-align: center; font: 400 16px/1.75 var(--hw-font); }
.hw-registration-success h2 { margin: 0 0 24px; color: #fff !important; font: 700 clamp(24px, 3vw, 30px)/1.3 var(--hw-font); }
.hw-registration-success p { margin: 0 0 20px; color: #e3eaf4 !important; font: inherit; }
.hw-registration-success img { display: block; width: auto; max-width: min(100%, 320px); height: auto; margin: 28px auto 0; padding: 18px 22px; border-radius: 14px; background: #fff; box-sizing: border-box; }
.hw-registration-success p:last-child { margin-bottom: 0; }

#RegistrationView:has(.hw-registration-success) .card-header::after { content: none; }


#navigation, #navigation .brand img { transition: background-color .2s; }

#navigation { border-bottom: 1px solid var(--hw-line) !important; }
#powered-by { display: none !important; }
#navigation .hw-nav-more { position: relative; }
#navigation .hw-nav-more__toggle { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 44px; margin: 0 0 0 12px; padding: 11px 19px; border: 1px solid var(--hw-line); border-radius: 24px; background: transparent; color: #fff; font: 500 14px/20px var(--hw-font); text-transform: uppercase; cursor: pointer; }
#navigation .hw-nav-more__toggle::after { content: ''; width: 7px; height: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg) translateY(-2px); }
#navigation .hw-nav-more__toggle[aria-expanded="true"]::after { transform: rotate(225deg) translate(-2px,-1px); }
#navigation .hw-nav-more__toggle:hover { background: rgba(255,255,255,.1); }
#navigation .hw-nav-more__toggle:focus-visible { outline: 2px solid #67cfff; outline-offset: 3px; }
#navigation .hw-nav-more__panel { position: absolute; top: calc(100% + 10px); right: 0; min-width: 200px; padding: 8px; border: 1px solid var(--hw-line); border-radius: 16px; background: #010101; box-shadow: 0 12px 24px #0006; }
#navigation .hw-nav-more__panel a { display: block; margin: 0 !important; padding: 12px 16px !important; border-radius: 8px; font: 400 14px/20px var(--hw-font) !important; }
#navigation .hw-nav-more__panel a::after { display: none; }
#navigation .hw-nav-more__panel a:hover { background: #ffffff18; color: #fff !important; }
#organizatorzy, #kontakt { scroll-margin-top: var(--hw-header-offset); }
@media (max-width: 1269px) {
  #navigation .hw-nav-more__toggle { width: 100%; margin: 8px 0 0; border-radius: 8px; }
  #navigation .hw-nav-more__panel { position: static; min-width: 0; margin-top: 8px; box-shadow: none; }
}

#navigation { border-bottom: 0 !important; }
#navigation nav ul.nav-list > li > a,
#navigation nav ul.nav-list > li > a[href="#section6"],
#navigation .hw-nav-more__toggle {
  box-sizing: border-box; display: flex; align-items: center; justify-content: center;
  width: 187px; min-height: 40px; margin: 0 !important; padding: 9px 18px !important;
  border: 1px solid #fff; border-radius: 24px; background: transparent; color: #fff !important;
  font: 700 15px/20px var(--hw-font) !important;
}
#navigation nav ul.nav-list > li > a:hover,
#navigation nav ul.nav-list > li > a[href="#section6"]:hover,
#navigation .hw-nav-more__toggle:hover { background: #ffffff18; color: #fff !important; }
#navigation .hw-nav-more__toggle { justify-content: space-between; }
#navigation .hw-nav-more__toggle::after,
#navigation .hw-nav-more__toggle[aria-expanded="true"]::after {
  content: ''; display: block; flex: 0 0 21px; width: 21px; height: 17px; border: 0; transform: none;
  background: linear-gradient(#fff,#fff) top / 100% 1px no-repeat,
              linear-gradient(#fff,#fff) center / 100% 1px no-repeat,
              linear-gradient(#fff,#fff) bottom / 100% 1px no-repeat;
}
@media (min-width: 1270px) { #navigation .nav-list { gap: 22px; } }
@media (max-width: 1269px) {
  #navigation nav ul.nav-list > li > a,
  #navigation nav ul.nav-list > li > a[href="#section6"],
  #navigation .hw-nav-more__toggle { width: 100%; min-height: 44px; margin: 8px 0 !important; }
}
