/* Shared navigation and compact-screen finishing. Loaded after the page styles. */
.nav-mobile-head,.nav-mobile-foot{display:none}
@media(max-width:960px){
  body.menu-open{overflow:hidden}
  .header,.header.scrolled{height:74px!important;padding-inline:22px!important;background:#0a0c10ee!important;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff1b;z-index:90!important}
  .header.open{background:#0a0c10!important;border-color:#ffffff2c}
  .header .brand{width:96px;position:relative;z-index:3}
  .header .brand img{height:62px;object-fit:contain}
  .header .menu{position:relative;z-index:3;display:flex!important;align-items:center;justify-content:space-between;gap:18px;width:auto;min-width:112px;height:45px;padding:0 14px;margin-left:auto;border:1px solid #ffffff4a;border-radius:2px;background:#ffffff08;color:#f4f4f2;transition:border-color .25s,background .25s;box-shadow:none}
  .header .menu:hover,.header .menu:focus-visible,.header.open .menu{border-color:#f33545;background:#f3354512}
  .menu-label:before{content:'MENU';font:500 10px/1 'IBM Plex Mono',monospace;letter-spacing:.15em}
  .header.open .menu-label:before{content:'ZAVRIEŤ'}
  .menu-icon{display:grid;align-content:center;gap:5px;width:20px;height:20px}
  .header .menu-icon i{display:block;width:20px;height:1px;margin:0;background:#f33545;transform-origin:center;transition:transform .3s,width .3s}
  .header .menu-icon i:last-child{width:14px;justify-self:end}
  .header.open .menu-icon i:first-child{transform:translateY(3px) rotate(45deg)}
  .header.open .menu-icon i:last-child{width:20px;transform:translateY(-3px) rotate(-45deg)}
  .header #navigation,.interior .header #navigation{box-sizing:border-box;display:flex!important;position:fixed;inset:0;width:100%;height:100svh;height:100dvh;max-height:none;margin:0;padding:calc(102px + env(safe-area-inset-top)) max(26px,7vw) max(24px,env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:0;overflow-y:auto;overscroll-behavior:contain;background:radial-gradient(ellipse at 100% 18%,#6717245c,transparent 37%),linear-gradient(155deg,#0b0e13 14%,#11151c 62%,#090b0f);border:0;opacity:0;visibility:hidden;transform:translateY(-12px);pointer-events:none;transition:opacity .3s ease,transform .45s cubic-bezier(.2,.7,.2,1),visibility .3s;counter-reset:menu-link}
  .header #navigation:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(90deg,#ffffff06 1px,transparent 1px),linear-gradient(#ffffff05 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(#0009,transparent 85%)}
  .header.open #navigation,.interior .header.open #navigation{opacity:1;visibility:visible;transform:none;pointer-events:auto}
  .nav-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 16px;color:#aab2bd;font-size:9px;letter-spacing:.18em;position:relative}
  .nav-mobile-head span:first-child{color:#f33545}
  .header #navigation>a,.interior .header #navigation>a{position:relative;z-index:1;display:flex!important;align-items:center;gap:17px;min-height:clamp(58px,8.3dvh,76px);padding:9px 0;border:0;border-top:1px solid #ffffff25;border-radius:0;background:none;color:#f0f2f5;white-space:normal;font:500 clamp(27px,7vw,42px)/1.05 Outfit,sans-serif!important;letter-spacing:-.035em;text-decoration:none;transition:color .25s,padding-left .25s}
  .header #navigation>a:last-of-type{border-bottom:1px solid #ffffff25}
  .header #navigation>a::before{counter-increment:menu-link;content:'0' counter(menu-link);align-self:center;flex:0 0 27px;color:#f33545;font:500 10px/1 'IBM Plex Mono',monospace;letter-spacing:0}
  .header #navigation>a::after{content:'↗';position:static;display:block;width:auto;height:auto;margin-left:auto;background:none;color:#7f8896;border:0;font:400 26px/1 Outfit,sans-serif;transition:transform .25s,color .25s}
  .header #navigation>a:hover,.header #navigation>a:focus-visible{padding-left:6px;color:#fff}
  .header #navigation>a:hover::after,.header #navigation>a:focus-visible::after{color:#f33545;transform:translate(3px,-3px)}
  .header #navigation>a[aria-current=page]{color:#f33545}
  .header #navigation>a.nav-contact{color:#f0f2f5!important}
  .header #navigation>a.nav-contact span{display:none}
  .nav-mobile-foot{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;margin-top:auto;padding-top:22px;color:#8f9aa8}
  .nav-mobile-foot .mono{font-size:9px;letter-spacing:.13em}
  .nav-mobile-foot>div{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
  .nav-mobile-foot a{font:500 12px/1.5 Inter,sans-serif;color:#d9dfe7;text-decoration:none}
  .nav-mobile-foot a:hover{color:#f33545}
}
@media(max-width:700px){
  .page-hero{height:auto;min-height:620px;max-height:none;padding-top:145px;padding-bottom:105px}
  .page-hero h1{overflow-wrap:break-word}
  .case-meta{line-height:1.5}
  .case h3{overflow-wrap:break-word}
  .contact-bottom>div>a{overflow-wrap:anywhere}
  .home-pricing h2{font-size:clamp(35px,9vw,58px)!important}
}
@media(max-width:370px){.header #navigation>a,.interior .header #navigation>a{font-size:25px!important;min-height:55px}.header #navigation{padding-inline:22px!important}.nav-mobile-foot{padding-top:15px}}
@media(max-height:650px) and (max-width:960px){.header #navigation>a,.interior .header #navigation>a{min-height:48px;font-size:25px!important}.header #navigation{padding-top:85px!important}.nav-mobile-foot{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.header #navigation,.header .menu-icon i{transition:none!important}}
@media(max-width:700px){
  footer,.interior footer{display:grid!important;grid-template-columns:1fr 1fr;align-items:center;column-gap:18px;row-gap:25px;padding:30px 24px 34px!important}
  footer>a:first-child{grid-column:1;grid-row:1;justify-self:start}
  footer>span{grid-column:2;grid-row:1;justify-self:end;white-space:nowrap;font-size:10px}
  footer>a:nth-of-type(2){grid-column:1;grid-row:2;justify-self:start}
  footer>a:nth-of-type(3){grid-column:2;grid-row:2;justify-self:end}
  footer>button{grid-column:1/-1;grid-row:3;justify-self:start;margin:0!important}
}
