@font-face{font-family:NavigationDM;src:url('hero-assets/DMSans.ttf') format('truetype');font-weight:100 1000;font-display:swap}
:root{--nav-height:76px}
.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:12px 18px;border-radius:999px;background:#f7f7f5;color:#000000;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.site-navigation{position:fixed;z-index:50;inset:0 0 auto;height:var(--nav-height);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 4%;color:#f7f7f5;background:radial-gradient(ellipse at 18% 0,#ffffff1c,transparent 62%),linear-gradient(180deg,#ffffff14,transparent 42%,#ffffff06),#00000018;border:1px solid #ffffff30;border-top-color:#ffffff55;border-radius:0 0 24px 24px;box-shadow:inset 0 1px 1px #ffffff30,0 4px 14px #0003;backdrop-filter:blur(20px) saturate(1.65) brightness(.55);-webkit-backdrop-filter:blur(20px) saturate(1.65) brightness(.55);font:400 clamp(16px,1.25vw,18px)/1.3 NavigationDM,sans-serif;text-shadow:0 1px 2px #0009,0 2px 8px #0005}
.site-navigation a{color:inherit;text-decoration:none}
.site-wordmark,.gallery-home{display:flex;align-items:center;flex:none;--wordmark-base:clamp(188px,calc(32vw - 100px),288px);width:calc(var(--wordmark-base) * 990 / 940);height:48px}
.site-wordmark img,.gallery-home img{display:block;width:100%;height:auto}
.gallery-home picture{display:block;width:100%}
.gallery-home{--wordmark-base:clamp(164px,52vw,288px);height:44px}
.site-links{display:flex;align-items:center;margin:0;gap:clamp(10px,1.5vw,26px)}
.site-links :is(a,summary){display:flex;align-items:center;min-height:44px;transition:color .2s,background .2s,text-shadow .2s,box-shadow .2s}
.site-links :is(a,summary):is(:hover,:focus-visible,:active),:is(.nav-services,.nav-concepts)[open]>summary{color:#ff4b33;text-shadow:0 0 12px #ff4b3370,0 1px 2px #0009}
.nav-services{position:relative;padding-block:16px;margin-block:-16px}
:is(.nav-services,.nav-concepts)>summary{gap:8px;cursor:pointer;list-style:none;touch-action:manipulation}
:is(.nav-services,.nav-concepts)>summary::-webkit-details-marker{display:none}
.nav-mobile-label{display:none}
:is(.nav-services,.nav-concepts)>summary svg{width:16px;height:16px;flex:none;transition:transform .2s cubic-bezier(.22,1,.36,1)}
:is(.nav-services,.nav-concepts)[open]>summary svg{transform:rotate(180deg)}
.services-submenu{position:absolute;top:100%;left:-18px;width:330px;max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain;list-style:none;margin:0;padding:10px;border:1px solid #ffffff30;border-top-color:#ffffff55;border-radius:20px;background:radial-gradient(ellipse at 18% 0,#ffffff1c,transparent 62%),linear-gradient(180deg,#ffffff14,transparent 42%,#ffffff06),#000000b8;box-shadow:inset 0 1px 1px #ffffff30,0 8px 24px #0005;backdrop-filter:blur(20px) saturate(1.65);-webkit-backdrop-filter:blur(20px) saturate(1.65)}
.services-submenu :is(a,summary){min-height:50px;padding:10px 14px;border-radius:10px;font-size:17px;font-weight:500;line-height:1.4}
.services-submenu :is(a,summary):is(:hover,:focus-visible){background:#ffffff08}
.nav-concepts>summary{justify-content:space-between}
.nav-concepts ul{list-style:none;margin:0 0 4px 14px;padding:0 0 0 12px;border-left:1px solid #ffffff30}
.nav-all-inspirations{gap:18px}
:is(.site-links .nav-contact,.hero-cta){gap:18px;padding:0 20px;border:1px solid #ff8e7e90;border-top-color:#ffd1c8d0;border-radius:999px;color:#ff9d8f;background:radial-gradient(ellipse at 35% 0,#ffffff30,transparent 65%),linear-gradient(180deg,#ffffff24,transparent 45%,#00000024 70%,#ffffff10),#ff4b3310;box-shadow:inset 0 2px 2px #ffffff80,inset 2px 0 4px #ffffff28,inset 0 -3px 4px #0005,inset -1px -1px 1px #ffb5a780,0 3px 1px #0004,0 8px 14px #0004}
:is(.site-links .nav-contact,.hero-cta):is(:hover,:focus-visible,:active){color:#ff4b33;background:linear-gradient(180deg,#ffffff28,transparent 48%,#00000020),#ff4b3320;text-shadow:0 0 12px #ff4b3370,0 1px 2px #0009}
.nav-contact span,.nav-all-inspirations span{font-size:23px;line-height:1}
.site-navigation :is(a,button,summary):focus-visible{outline:2px solid #ff4b33;outline-offset:3px}
.menu-toggle{display:none}
@media(min-width:901px){
  .site-wordmark{--wordmark-base:clamp(188px,calc(36vw - 136px),312px)}
  .site-wordmark img{content:url("hero-assets/dsgn-fctry-nav-farbsignet.png")}
  /* Keep the header's backdrop bounds independent of expanded dropdowns. */
  .site-navigation{backdrop-filter:none;-webkit-backdrop-filter:none}
  .site-navigation::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;clip-path:inset(0 round 0 0 24px 24px);pointer-events:none;backdrop-filter:blur(20px) saturate(1.65) brightness(.55);-webkit-backdrop-filter:blur(20px) saturate(1.65) brightness(.55)}
  .services-submenu{clip-path:inset(0 round 20px)}
  :is(.site-links .nav-contact,.hero-cta){border-color:#ff8e7e60;border-top-color:#ffd1c880;background:linear-gradient(180deg,#ffffff18,transparent 55%),#ff4b330c;box-shadow:inset 0 1px 1px #ffffff40,0 3px 8px #0003}
}
@media(max-width:900px){
  :root{--nav-height:0px}
  .site-navigation{inset:max(14px,env(safe-area-inset-top)) 18px auto auto;width:auto;height:auto;padding:0;background:none;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none}
  /* Catch outside taps above the section iframes. */
  .site-navigation:has(.site-links:popover-open)::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:auto}
  .site-wordmark{display:none}
  .menu-toggle{display:flex;align-items:center;gap:14px;min-height:48px;padding:0 18px;border:1px solid #ffffff48;border-top-color:#ffffff90;border-bottom-color:#ffffff28;border-radius:999px;background:radial-gradient(ellipse at 30% 0,#ffffff35,transparent 65%),linear-gradient(180deg,#ffffff18,transparent 45%,#ffffff0a),#00000020;box-shadow:inset 0 1px 2px #ffffff90,inset 2px 0 3px #ffffff30,inset -2px -3px 5px #ffffff12,0 3px 6px #0003,0 10px 24px #0003;backdrop-filter:blur(14px) saturate(1.65) brightness(.55);-webkit-backdrop-filter:blur(14px) saturate(1.65) brightness(.55);color:#f7f7f5;font:600 16px NavigationDM,sans-serif;text-shadow:0 1px 2px #0009,0 2px 8px #0005;cursor:pointer;pointer-events:auto}
  .menu-toggle:is(:hover,:focus-visible,:active){color:#ff4b33;text-shadow:0 0 12px #ff4b3370,0 1px 2px #0009}
  .menu-icon{position:relative;width:20px;height:14px}
  .menu-icon::before,.menu-icon::after{content:"";position:absolute;left:0;top:3px;width:20px;height:2px;border-radius:1px;background:currentColor;transition:transform .22s}
  .menu-icon::after{top:9px}
  .menu-toggle[aria-expanded="true"] .menu-icon::before{transform:translateY(3px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-icon::after{transform:translateY(-3px) rotate(-45deg)}
  .site-links{display:none;position:fixed;inset:calc(max(14px,env(safe-area-inset-top)) + 60px) 18px auto auto;margin:0;width:min(330px,calc(100vw - 36px));max-height:calc(100dvh - 100px);overflow-y:auto;padding:14px 22px 18px;border:1px solid #ffffff40;border-top-color:#ffffff80;border-radius:28px;background:radial-gradient(ellipse at 0 0,#ffffff24,transparent 65%),linear-gradient(135deg,#ffffff0a,transparent 55%,#ffffff08),#00000040;box-shadow:inset 0 1px 2px #ffffff80,inset 2px 0 4px #ffffff30,inset -2px -2px 4px #ffffff16,0 6px 12px #0003,0 22px 60px #0005;backdrop-filter:blur(28px) saturate(1.6) brightness(.65);-webkit-backdrop-filter:blur(28px) saturate(1.6) brightness(.65);color:#f7f7f5;pointer-events:auto}
  .site-links:popover-open{display:flex;flex-direction:column;align-items:stretch;gap:0;animation:menu-reveal .22s ease-out}
  .site-links{overscroll-behavior:contain}
  .site-links :is(a,summary){min-height:54px;font-size:20px;font-weight:600;border-bottom:1px solid #ffffff18}
  .nav-services{padding:0;margin:0}
  :is(.nav-services,.nav-concepts)>summary{justify-content:space-between}
  .site-links .nav-overview{display:none}
  .nav-mobile-label{display:inline}
  .services-submenu{position:static;width:auto;max-height:none;overflow:visible;margin:0;padding:4px 0 8px 10px;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
  .services-submenu :is(a,summary){min-height:50px;padding:10px 6px;font-size:16px;font-weight:500;border-radius:0}
  .nav-concepts ul{margin-left:6px}
  .site-links .nav-contact{justify-content:space-between;margin-top:14px;padding:0 18px;border:1px solid #ff4b3380}
  .site-links::backdrop{background:#0002}
}
@keyframes menu-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:370px){.menu-toggle{font-size:14px;padding-inline:14px;gap:10px}}
@media(prefers-reduced-motion:reduce){.site-links:popover-open{animation:none}.site-navigation *,.menu-icon::before,.menu-icon::after{transition:none}}

.site-navigation span{color:inherit}
.site-links .nav-services>summary>a{min-height:0;border:0}
.site-links a[aria-current],.site-links .nav-services:has(a[aria-current])>summary{color:#ff4b33;text-shadow:0 0 12px #ff4b3370,0 1px 2px #0009}
