/* Full-width masthead with the winged horse and the Slovak wordmark. */
.design-page { --site-header-height:116px; --site-brand-width:236px; }
.design-header {
  width:100%; max-width:none; height:0; margin:0;
  position:sticky; top:0; z-index:50; container-type:normal;
}
.design-header::before {
  content:""; position:absolute; inset:0 0 auto;
  height:var(--site-header-height); background:#fff;
  border-bottom:1px solid #d8ddee; pointer-events:none;
}
.design-header::after {
  content:""; position:absolute; inset:0 0 auto; height:3px;
  background:linear-gradient(to right,#2924e8 90%,#ff4b0a 90%);
  pointer-events:none;
}
.design-header .header-face {
  width:92.5%; max-width:1184px; height:var(--site-header-height);
  margin:0 auto; padding:3px 0 1px; position:relative; inset:auto;
  display:flex; align-items:center; gap:32px; background:#fff; border:0;
}
.design-header .d-brand { position:static; display:flex; flex:none; align-items:center; line-height:0; }
.design-header .d-brand img { display:block; width:var(--site-brand-width); height:auto; max-width:none; }
.design-header .main-nav {
  position:static; display:flex; align-items:center; gap:42px; margin:0 0 0 auto;
  padding:0; font-size:15px; line-height:1.4; background:transparent;
  border:0; box-shadow:none;
}
.design-header .main-nav>a,.design-header .nav-dropdown>summary { padding:14px 0; }
.design-header .nav-dropdown>summary::after,
.design-header .main-nav>a[aria-current]::after { display:none; }
.design-header .nav-dropdown .dropdown {
  position:absolute; top:100%; left:-18px; width:265px; padding:10px;
  font-size:15px; background:#fff; border:1px solid #d8ddee;
  box-shadow:0 12px 24px #12121208;
}
.design-header .dropdown a { padding:12px; }
.design-header .header-project {
  position:static; display:flex; align-items:center; justify-content:space-between;
  flex:0 0 184px; width:184px; height:46px; padding:0 20px; gap:18px;
  border:1px solid #111; background:#fff; color:#080808;
  font-size:15px; font-weight:500; line-height:1.2; white-space:nowrap;
}
.design-header .header-project span { font-size:22px; }
.design-header .header-project:hover { color:#fff; background:#2924e8; border-color:#2924e8; }
.design-header .menu-toggle { display:none; }
.aux-page .design-header { height:var(--site-header-height); }
.home-intro { padding-top:var(--site-header-height); }
.design-page .panorama-footer, .aux-page .section { scroll-margin-top:calc(var(--site-header-height) + 8px); }

@media (min-width:901px) {
  /* The four illustrated subpage heroes already reserve the original header height. */
  .design-header + main.design-main {
    padding-top:calc(var(--site-header-height) - clamp(70px, 7.75vw, 88px));
  }
}

@media (min-width:901px) and (max-width:1240px) {
  .design-header .header-face { gap:22px; }
  .design-header .main-nav { gap:20px; font-size:15px; }
  .design-header .header-project { flex-basis:164px; width:164px; height:44px; padding-inline:16px; font-size:15px; }
}
@media (min-width:901px) and (max-width:1150px) {
  .design-page { --site-header-height:102px; --site-brand-width:207px; }
}
@media (min-width:901px) and (max-width:1040px) {
  .design-header .header-face { gap:16px; }
  .design-header .main-nav { gap:16px; }
  .design-header .header-project { flex-basis:148px; width:148px; padding-inline:12px; gap:8px; font-size:14px; }
}
@media (max-width:900px) {
  .design-page { --site-header-height:96px; --site-brand-width:198px; }
  .design-page .canvas { scroll-margin-top:var(--site-header-height); }
  .design-header { height:var(--site-header-height); }
  .design-header .header-face { width:calc(100% - 40px); gap:14px; }
  .design-header .header-project { display:none; }
  .design-header .menu-toggle {
    position:static; display:block; margin-left:auto; padding:9px 11px; min-height:42px;
    font-size:14px; line-height:1.3; border:1px solid #d8ddee; background:#fff; white-space:nowrap;
  }
  .design-header .main-nav {
    display:none; position:absolute; top:var(--site-header-height); left:-20px; right:-20px;
    margin:0; padding:15px 22px; max-height:calc(100dvh - var(--site-header-height));
    overflow-y:auto; background:#fff; border-bottom:1px solid #d8ddee;
    box-shadow:0 10px 18px #0001; font-size:16px;
  }
  .design-header .main-nav.open { display:grid; gap:0; }
  .design-header .main-nav>a,.design-header .nav-dropdown>summary { padding:12px 0; }
  .design-header .nav-dropdown .dropdown { position:static; width:auto; padding:0 12px; font-size:15px; border:0; box-shadow:none; }
  .design-header .dropdown a { padding:10px; }
  .home-intro { padding-top:0; }
}
@media (max-width:350px) {
  .design-page { --site-header-height:90px; --site-brand-width:182px; }
  .design-header .header-face { width:calc(100% - 36px); gap:8px; }
  .design-header .menu-toggle { font-size:12px; padding:9px 8px; }
  .design-header .main-nav { left:-18px; right:-18px; }
}
