/* Layout and interactions derived from 81 Fragments menu-footer[-refine] and header-glow. */
body.fs-family{--fs-inset:4vw;--fs-line:color-mix(in srgb,var(--fs-ink) 24%,transparent)}
body.fs-family header[data-pf-header]{position:fixed!important;inset:0 0 auto!important;width:100vw!important;max-width:none!important;height:80px!important;min-height:80px!important;background:var(--fs-bg)!important;color:var(--fs-ink)!important;z-index:1200!important;isolation:isolate}
body.fs-family [data-pf-row]{display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;height:80px!important;gap:18px!important;padding:14px var(--fs-inset)!important;width:100%!important;max-width:none!important}
.fs-brand{grid-column:1;grid-row:1;display:flex!important;gap:10px;align-items:center;color:var(--fs-ink)!important;text-decoration:none!important;justify-self:start;white-space:nowrap;font:750 16px/1.1 system-ui!important;min-width:0}.fs-brand strong{font:inherit!important;letter-spacing:-.025em!important}.fs-brand small{font:600 9px system-ui;color:#35f3a5;margin-left:4px}
.fs-app-mark{display:block!important;flex:none;background:var(--fs-accent)!important;mask:var(--fs-app-icon) center/contain no-repeat;-webkit-mask:var(--fs-app-icon) center/contain no-repeat;width:32px;height:32px}
body.fs-family .fs-looks{grid-column:2!important;grid-row:1!important;justify-self:center!important;display:flex!important;gap:5px!important;margin:0!important}
body.fs-family header[data-pf-header] button.pf-swatch{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border:1px solid var(--fs-line)!important;background:transparent!important;overflow:visible!important;margin:0!important;border-radius:50%!important;outline:none!important}
body.fs-family header[data-pf-header] button.pf-swatch::before{content:''!important;position:absolute!important;inset:3px!important;border-radius:50%!important;background:linear-gradient(135deg,var(--pf-swatch-bg) 0 33.333%,var(--pf-swatch-accent) 33.333% 66.666%,var(--pf-swatch-light) 66.666% 100%)!important;mask-image:radial-gradient(circle,#000 20%,#000b 48%,transparent 74%)!important;-webkit-mask-image:radial-gradient(circle,#000 20%,#000b 48%,transparent 74%)!important}
body.fs-family header[data-pf-header] button.pf-swatch[aria-pressed=true]::after{content:''!important;position:absolute!important;inset:-4px!important;border:1px solid var(--fs-accent)!important;border-radius:50%!important;background:transparent!important}
body.fs-family header[data-pf-header] button.pf-swatch:focus-visible{outline:2px solid var(--fs-accent)!important;outline-offset:6px!important}
.fs-actions{grid-column:3;grid-row:1;justify-self:end;display:flex;gap:10px;align-items:center}
body.fs-family .fs-actions :is(.pf-menu-toggle,button[data-df-language],button[data-family-language],select#language){display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border:1px solid var(--fs-line)!important;border-radius:50%!important;color:var(--fs-ink)!important;background:transparent!important;padding:0!important;font:600 12px system-ui!important;box-shadow:none!important;margin:0!important}
body.fs-family .fs-actions select#language{appearance:none!important;text-align:center!important;cursor:pointer}.fs-plus{width:22px!important;height:22px!important;transition:transform .28s ease}.pf-menu-toggle[aria-expanded=true] .fs-plus{transform:rotate(45deg)}
body.fs-family .pf-menu-panel{right:var(--fs-inset)!important;top:92px!important;width:min(620px,calc(100vw - 2*var(--fs-inset)))!important;max-height:calc(100svh - 115px)!important;border-radius:16px!important;background:var(--fs-bg)!important;color:var(--fs-ink)!important;border-color:var(--fs-line)!important;padding:16px!important;z-index:3!important}
body.fs-family .pf-menu-panel nav.fs-page-nav{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:0 0 8px!important;border:0!important}
body.fs-family .pf-menu-panel nav.fs-page-nav>a{display:block!important;padding:12px 10px!important;margin:0!important;font:500 14px/1.4 system-ui!important;min-height:44px!important;border-bottom:1px solid var(--fs-line)!important;border-radius:0!important}
body.fs-family .pf-menu-panel nav.fs-page-nav>a[href='#contact']{font-size:16px!important;padding-bottom:18px!important}
body.fs-family .pf-menu-apps{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:6px 12px!important;padding:6px 0 0!important}
body.fs-family .pf-menu-apps>a{align-items:flex-start!important;padding:12px 8px!important;min-width:0!important;gap:12px!important;line-height:1.45!important}
body.fs-family .pf-menu-apps span{min-width:0!important}.pf-menu-apps strong{display:block;font:750 14px/1.4 system-ui!important}
body.fs-family .pf-menu-apps span>.fs-menu-description{display:block!important;color:var(--fs-muted)!important;font:400 12px/1.45 system-ui!important;margin-top:5px!important;overflow-wrap:anywhere}
.fs-progress{position:absolute!important;top:100%!important;left:0!important;right:0!important;height:3px!important;background:var(--fs-line)!important;pointer-events:none!important;z-index:0!important}.fs-progress span{display:block;width:100%;height:100%;background:var(--fs-accent);transform:scaleX(var(--page-progress,0));transform-origin:left}
/* Footer follows the Mainpage's large mark, website rows, legal rows and centered credit. */
body.fs-family footer.fs-footer{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:48px var(--fs-inset) 25px!important;background:var(--fs-bg)!important;color:var(--fs-ink)!important;border-top:1px solid var(--fs-line)!important;font:14px/1.5 system-ui!important}
body.fs-family .fs-footer .footer-grid{display:grid!important;grid-template-columns:1fr 1.2fr 1fr!important;gap:50px!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
body.fs-family .fs-footer .footer-brand{padding-top:34px!important;grid-column:auto!important}
body.fs-family .fs-footer .brand{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:18px!important;width:clamp(100px,12vw,180px)!important;text-decoration:none!important;color:var(--fs-ink)!important}
body.fs-family .fs-footer .fs-app-mark{width:100%!important;height:auto!important;aspect-ratio:1!important}
body.fs-family .fs-footer .fs-app-name{display:block!important;width:100%!important;white-space:nowrap!important;font-weight:800!important;letter-spacing:0!important;line-height:1!important}
body.fs-family .fs-footer h2{font:600 11px/1.4 Consolas,monospace!important;letter-spacing:1.5px!important;text-transform:uppercase!important;margin:0 0 17px!important;color:var(--fs-ink)!important;transform:none!important;background:none!important;-webkit-text-fill-color:currentColor!important;-webkit-text-stroke:0!important}
body.fs-family .fs-footer nav{display:flex!important;flex-direction:column!important;gap:6px!important;width:100%!important;align-items:stretch!important;padding:0!important;margin:0!important}
body.fs-family .fs-footer nav>a{display:flex!important;align-items:center!important;gap:13px!important;min-height:52px!important;padding:10px 14px!important;border:1px solid var(--fs-line)!important;border-radius:6px!important;color:var(--fs-ink)!important;text-decoration:none!important;margin:0!important;font:400 14px/1.4 system-ui!important;background-color:var(--fs-bg)!important;background-image:linear-gradient(105deg,color-mix(in srgb,var(--fs-accent) 55%,transparent),color-mix(in srgb,var(--fs-accent) 12%,transparent))!important;background-repeat:no-repeat!important;background-position:left!important;background-size:0% 100%!important;transition:background-size .45s ease,color .25s ease!important;box-sizing:border-box!important}
body.fs-family .fs-footer nav>a:hover,body.fs-family .fs-footer nav>a:focus-visible{background-size:100% 100%!important;border-color:var(--fs-accent)!important;color:var(--fs-ink)!important}
body.fs-family .fs-footer svg{width:21px!important;height:21px!important;fill:none;stroke:currentColor;stroke-width:1.5;flex:none}.fs-footer .footer-linkedin svg:last-child{margin-left:auto}.fs-footer .footer-linkedin svg:first-child{fill:currentColor!important;stroke:none!important}
.fs-legal-spacer{display:block;min-height:52px;pointer-events:none}
body.fs-family .fs-footer .footer-bottom{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:20px!important;width:100%!important;max-width:none!important;margin:32px 0 0!important;padding:22px 0 0!important;border-top:1px solid var(--fs-line)!important}
body.fs-family .fs-footer .footer-credit{grid-column:2!important;margin:0!important;text-align:center!important;font:12px/1.5 system-ui!important;color:var(--fs-muted)!important}
body.fs-family .fs-footer .footer-top{grid-column:3!important;justify-self:end!important;display:grid!important;place-items:center!important;width:44px!important;height:44px!important;border:1px solid var(--fs-line)!important;border-radius:50%!important;padding:0!important;color:var(--fs-ink)!important}
/* A larger single band, with enough vertical space for its angle at every viewport width. */
body.fs-family .df-band-bridge{--fs-band-height:clamp(84px,7.5vw,120px);height:calc(var(--fs-band-height) + 3.8vw + 32px)!important}
body.fs-family .df-band{height:var(--fs-band-height)!important;top:calc(50% - var(--fs-band-height)/2)!important}
body.fs-family :is(.df-band-track,.df-band-copy){height:var(--fs-band-height)!important}
body.fs-family .df-band-copy{font-size:clamp(30px,4.2vw,62px)!important;line-height:1.05!important;letter-spacing:-.025em!important}.df-band-copy svg{width:26px!important;height:26px!important}
body.fs-family[data-product-page=janopulse] main>.pulse-marquee{height:calc(88px + 3.8vw + 32px)!important}
body.fs-family[data-product-page=janopulse] .pf-pulse-band{height:88px!important;top:calc(50% - 44px)!important}
body.fs-family[data-product-page=janopulse] .pulse-marquee .pf-pulse-band .marquee-track{height:88px!important}.marquee-track>span{font-size:clamp(30px,3.5vw,54px)!important}
body.fs-family .fs-live-seam{display:block;position:relative!important;width:100%!important;max-width:none!important;height:clamp(135px,13vw,225px)!important;margin:0!important;padding:0!important;overflow:hidden!important;background:none!important;border:0!important;isolation:isolate}
body.fs-family .fs-live-seam::before,body.fs-family .fs-live-seam::after{content:none!important}.fs-live-seam svg{display:block!important;width:100%!important;height:100%!important;position:absolute;inset:0;max-width:none!important}.fs-live-seam svg *{stroke:none!important;opacity:1!important;filter:none!important;transition:none!important}
@media(max-width:900px){body.fs-family .fs-footer .footer-grid{grid-template-columns:1fr 1fr!important;gap:28px 20px!important}body.fs-family .fs-footer .footer-brand{grid-column:1/-1!important;padding-top:0!important}.fs-brand{font-size:14px!important}body.fs-family [data-pf-row]{gap:10px!important}}
@media(max-width:600px){body.fs-family header[data-pf-header],body.fs-family [data-pf-row]{height:74px!important;min-height:74px!important}body.fs-family [data-pf-row]{padding:12px var(--fs-inset)!important;gap:4px!important}.fs-brand{font-size:12px!important;gap:5px}.fs-brand .fs-app-mark{width:24px;height:24px}.fs-brand small{font-size:7px;margin-left:2px}body.fs-family .fs-looks{gap:3px!important}body.fs-family header[data-pf-header] button.pf-swatch{width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important}.fs-actions{gap:6px}body.fs-family .fs-actions :is(.pf-menu-toggle,button[data-df-language],button[data-family-language],select#language){width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;font-size:10px!important}.fs-plus{width:18px!important;height:18px!important}body.fs-family .pf-menu-panel{top:86px!important;max-height:calc(100svh - 106px)!important}.pf-menu-apps strong{font-size:12px!important}body.fs-family .pf-menu-apps span>.fs-menu-description{font-size:11px!important}.pf-menu-apps img{width:22px!important;height:22px!important}body.fs-family .fs-footer nav>a{font-size:11px!important;gap:8px!important;padding:9px 8px!important;line-height:1.5!important}body.fs-family .fs-footer nav>a span{overflow-wrap:anywhere}body.fs-family .fs-footer svg{width:18px!important;height:18px!important}body.fs-family .fs-footer .brand{width:130px!important}body.fs-family .fs-footer .footer-bottom{grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important}body.fs-family .fs-footer .footer-credit{grid-column:1!important;font-size:11px!important}body.fs-family .fs-footer .footer-top{grid-column:2!important}}
@media(max-width:360px){.fs-brand{font-size:10.5px!important}.fs-brand .fs-app-mark{width:21px;height:21px}body.fs-family .fs-actions{gap:4px}body.fs-family [data-pf-row]{padding-inline:16px!important}body.fs-family header[data-pf-header] button.pf-swatch{width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important}}
@media(prefers-reduced-motion:reduce){.fs-plus,body.fs-family .fs-footer nav>a{transition:none!important}}

body.fs-family header[data-pf-header] .pf-menu-panel nav.fs-page-nav{width:100%!important;align-self:stretch!important;align-items:stretch!important;text-align:left!important}
body.fs-family header[data-pf-header] .pf-menu-panel nav.fs-page-nav>a{width:100%!important;align-self:stretch!important;text-align:left!important}
body.fs-family .fs-footer .footer-grid{align-items:start!important}body.fs-family .fs-footer :is(.footer-sites-column,.footer-right){align-self:start!important;padding:0!important;margin:0!important;border:0!important;line-height:1.5!important}
body.fs-family .fs-footer nav{min-height:0!important;border:0!important;box-sizing:border-box!important}body.fs-family .fs-footer nav>:is(a,.fs-legal-spacer){height:52px!important;min-height:52px!important;box-sizing:border-box!important;flex:none!important}
.fs-contact-anchor{display:block;height:0;scroll-margin-top:100px}
@media(max-width:360px){body.fs-family .fs-brand{font-size:9.5px!important;gap:4px!important}.fs-brand small{font-size:6px!important;margin-left:1px!important}.fs-brand .fs-app-mark{width:20px!important;height:20px!important}}

body.fs-family header[data-pf-header] .pf-menu-panel{right:var(--fs-inset)!important;top:92px!important;width:min(620px,calc(100vw - 2*var(--fs-inset)))!important;padding:16px!important}
@media(max-width:600px){body.fs-family header[data-pf-header] .pf-menu-panel{top:86px!important}}

body.fs-family .fs-footer h2{height:16px!important;min-height:16px!important;max-height:16px!important;line-height:16px!important;padding:0!important;border:0!important;box-sizing:border-box!important}

body.fs-family:has(.df-header) main>section.df-section{padding-inline:var(--fs-inset)!important}body.fs-family .app-directory{padding-inline:var(--fs-inset)!important}
