/* The shared header, mega menu, mobile menu and footer. Every class starts with sk- so the
   older pages (style.css) can load this file too without a clash. */
html{scroll-padding-top:calc(var(--sk-hdr-h) + 16px)}
.sk-skip{position:absolute;left:-999px;top:0;z-index:100;background:var(--sk-ai);color:var(--sk-ink);padding:.6rem 1rem;font:600 .95rem var(--sk-sans);text-decoration:none}
.sk-skip:focus{left:1rem;top:1rem}
.sk-agents{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.sk-agents:focus-within{position:absolute;left:1rem;top:3.6rem;z-index:100;width:auto;height:auto;margin:0;clip:auto;overflow:visible;white-space:normal;background:var(--sk-ai);color:var(--sk-ink);padding:.6rem 1rem;font:600 .95rem var(--sk-sans)}
.sk-agents:focus-within a{color:inherit}
.sk-wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 2rem;box-sizing:border-box}
.sk-hdr *,.sk-foot *,.sk-announce *{box-sizing:border-box}
.sk-hdr :focus-visible,.sk-foot :focus-visible,.sk-announce :focus-visible{outline:2px solid var(--sk-bots);outline-offset:3px}

/* announcement band */
.sk-announce{background:var(--sk-deep);border-bottom:1px solid #1d2935;font:500 .85rem/1.3 var(--sk-sans)}
.sk-announce a{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .75rem;padding:.55rem 1rem;color:var(--sk-text-2);text-decoration:none}
.sk-announce a:hover{color:#ffffff}
.sk-announce-tag{font:500 .66rem var(--sk-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--sk-ink);background:var(--sk-bots);padding:.15rem .45rem;border-radius:3px}
.sk-announce-go{color:var(--sk-ai)}

/* header */
.sk-hdr{position:sticky;top:0;z-index:60;background:var(--sk-ink);border-bottom:1px solid #223040;font-family:var(--sk-sans);color:var(--sk-text)}
.sk-hdr-in{display:flex;align-items:center;gap:1.5rem;height:var(--sk-hdr-h)}
.sk-brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;color:#f4f6f8}
.sk-brand .mark{flex:none}
.sk-brand .m-tile{fill:var(--sk-ink-2);stroke:var(--sk-line-2)}
.sk-brand .m-ink{fill:#f4f6f8}
.sk-brand .m-cut{stroke:var(--sk-ink-2)}
.sk-brand-txt{display:flex;flex-direction:column;line-height:1}
.sk-brand-name{font:800 1.35rem var(--sk-disp);letter-spacing:-.02em}
.sk-brand-tag{margin-top:.3rem;font:500 .78rem/1.1 var(--sk-sans);letter-spacing:.01em;color:#d5dde5;-webkit-font-smoothing:antialiased;white-space:nowrap;transition:color .2s}
.sk-brand:hover .sk-brand-tag{color:var(--sk-ai)}
.sk-nav ul{display:flex;gap:.15rem;list-style:none;margin:0;padding:0}
.sk-nb{position:relative;display:inline-flex;align-items:center;gap:.35rem;background:none;border:0;border-radius:4px;color:#d5dde5;font:500 .95rem var(--sk-sans);padding:.55rem .75rem;cursor:pointer;text-decoration:none;transition:background .2s,color .2s}
.sk-nb:hover{color:#ffffff;background:#1a2532}
.sk-nb[aria-current="page"]{color:#ffffff;box-shadow:inset 0 -2px 0 var(--sk-ai)}
.sk-nav .sk-nb[aria-expanded="true"]{color:var(--sk-paper-ink);background:var(--sk-paper);border-radius:4px 4px 0 0}
.sk-nav .sk-nb[aria-expanded="true"]::after{content:'';position:absolute;left:0;right:0;top:100%;height:15px;background:var(--sk-paper)}
.sk-chev{transition:transform .25s}
.sk-nb[aria-expanded="true"] .sk-chev{transform:rotate(180deg)}
.sk-hdr-right{margin-left:auto;display:flex;align-items:center;gap:.6rem}
.sk-login{color:var(--sk-text-2);font-size:.92rem;text-decoration:none;padding:.5rem .4rem}
.sk-login:hover{color:#ffffff;text-decoration:underline;text-underline-offset:.25em}
.sk-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-radius:4px;border:1px solid transparent;font:600 .92rem/1 var(--sk-sans);text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s}
.sk-btn-p{background:var(--sk-cta);color:#ffffff}
.sk-btn-p:hover{background:var(--sk-cta-hover);color:#ffffff;transform:translate(-3px,-3px);box-shadow:4px 4px 0 var(--sk-text)}
.sk-btn-s{border-color:#4a5d70;color:var(--sk-text);background:transparent}
.sk-btn-s:hover{border-color:var(--sk-text);color:#ffffff}
.sk-btn-ink{background:var(--sk-ink);color:#f4f6f8}
.sk-btn-ink:hover{color:#ffffff;transform:translate(-3px,-3px);box-shadow:4px 4px 0 var(--sk-ai)}
.sk-burger{display:none;align-items:center;gap:.4rem;background:none;border:1px solid var(--sk-line-2);border-radius:4px;color:var(--sk-text);font:500 .9rem var(--sk-sans);padding:.5rem .7rem;cursor:pointer}

/* mega menu: a paper printout that tears off the dark header, over a dimmed page */
.sk-mega-wrap{position:relative}
.sk-scrim{position:fixed;left:0;right:0;bottom:0;top:var(--sk-hdr-h);z-index:-1;background:rgba(5,8,11,.66);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:skFade .25s ease}
.sk-mega{position:absolute;left:0;right:0;top:0;background:var(--sk-paper);color:var(--sk-paper-ink);box-shadow:0 40px 80px rgba(0,0,0,.6);animation:skMegaIn .32s cubic-bezier(.2,.8,.2,1)}
.sk-mega[hidden],.sk-scrim[hidden],.sk-mob[hidden]{display:none}
.sk-mega::after{content:'';position:absolute;left:0;right:0;bottom:-9px;height:9px;background:linear-gradient(135deg,var(--sk-paper) 4.5px,transparent 0) 0 0/9px 9px,linear-gradient(225deg,var(--sk-paper) 4.5px,transparent 0) 0 0/9px 9px}
.sk-mega-grid{display:grid;grid-template-columns:1fr 1fr 21rem;gap:2rem;padding:3.25rem 0 2.5rem}
.sk-mlab{display:flex;align-items:center;gap:.5rem;margin:0 0 .6rem .9rem;font:500 .72rem var(--sk-mono);letter-spacing:.1em;text-transform:uppercase;color:#4a5866}
.sk-mlab::before{content:'';width:.55rem;height:.55rem;border-radius:1px;background:var(--g,var(--sk-ai))}
.sk-ml{display:block;padding:.7rem .8rem .7rem .9rem;border-left:3px solid transparent;border-radius:0 5px 5px 0;color:var(--sk-paper-ink);text-decoration:none;transition:background .15s,border-color .15s,transform .15s}
.sk-ml strong{display:block;font-weight:700;font-size:1rem}
.sk-ml span{display:block;margin-top:.15rem;font-size:.87rem;line-height:1.4;color:#3d4a57}
.sk-ml:hover,.sk-ml:focus-visible{background:var(--sk-paper-2);border-left-color:var(--sk-ai);transform:translateX(3px);color:var(--sk-paper-ink)}
.sk-ml:hover strong{color:var(--sk-ai-deep)}
.sk-mall{display:inline-flex;gap:.4rem;margin:.6rem 0 0 .9rem;font:500 .8rem var(--sk-mono);color:var(--sk-ai-deep);text-decoration:none}
.sk-mall:hover{text-decoration:underline}
.sk-tile{background:var(--sk-ink);color:var(--sk-text);border-radius:6px;padding:1rem;box-shadow:6px 6px 0 var(--sk-ai)}
.sk-tile img{display:block;max-width:100%;height:auto;border-radius:3px;border:1px solid #2b3a49;margin-bottom:.9rem}
.sk-tile p{margin:0 0 .9rem;font-size:.95rem;line-height:1.5;color:#e2e8ee}
.sk-tile .sk-tk{margin:0 0 .6rem;font:500 .72rem var(--sk-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--sk-bots)}
.sk-mega-x{position:absolute;right:0;top:.85rem;background:none;border:1px solid #b9ae99;border-radius:4px;color:#3d4a57;font:500 .8rem var(--sk-sans);padding:.3rem .55rem;cursor:pointer}
.sk-mega-x:hover{color:var(--sk-paper-ink);border-color:var(--sk-paper-ink)}

/* mobile menu */
.sk-mob{background:var(--sk-paper);color:var(--sk-paper-ink);padding:.5rem 0 1.5rem;max-height:calc(100vh - var(--sk-hdr-h));overflow-y:auto;animation:skMegaIn .25s ease}
.sk-mob details{border-bottom:1px solid var(--sk-paper-line)}
.sk-mob summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:.9rem 0;font:700 1.05rem var(--sk-sans);cursor:pointer}
.sk-mob summary::-webkit-details-marker{display:none}
.sk-mob summary::after{content:'+';font:500 1.2rem var(--sk-mono);color:var(--sk-ai-deep)}
.sk-mob details[open] summary::after{content:'\2212'}
.sk-mob a{display:block;padding:.55rem 0 .55rem .9rem;color:var(--sk-paper-ink);text-decoration:none;font-weight:500}
.sk-mob a:hover{color:var(--sk-ai-deep)}
.sk-mob .sk-mob-top{padding-left:0;padding:.9rem 0;border-bottom:1px solid var(--sk-paper-line);font-weight:700}
.sk-mob .sk-btn{margin-top:1rem;width:100%;justify-content:center}

/* footer */
.sk-foot{background:var(--sk-deep);border-top:1px solid #1d2935;padding:4.5rem 0 2rem;color:var(--sk-text-2);font-family:var(--sk-sans)}
.sk-foot-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2.5rem;padding-bottom:3rem;margin-bottom:3rem;border-bottom:1px solid #1d2935}
.sk-foot-about{max-width:26rem}
.sk-foot-about p{margin:1rem 0 0;line-height:1.6;font-size:.95rem;color:var(--sk-text-3)}
.sk-foot-cta{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-start}
.sk-foot-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2rem}
.sk-foot-h{margin:0 0 .9rem;font:500 .72rem var(--sk-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--sk-text-4)}
.sk-foot ul{list-style:none;margin:0;padding:0}
.sk-foot li{margin:0 0 .55rem}
.sk-foot a{color:var(--sk-text-2);text-decoration:none;font-size:.9rem}
.sk-foot a:hover{color:#ffffff;text-decoration:underline;text-underline-offset:.2em}
.sk-foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid #1d2935;font:400 .8rem var(--sk-mono);color:var(--sk-text-4)}
.sk-foot-base p{margin:0}
.sk-cur{display:inline-block;width:.55em;height:1.05em;margin-left:.15em;vertical-align:-.15em;background:currentColor;animation:skBlink 1.1s steps(1) infinite}

/* a URL or path on screen: copy and open icons at its end (sk.js adds them) */
.sk-url{display:inline-flex;align-items:center;gap:.25rem;max-width:100%}
.sk-url-tools{display:inline-flex;gap:.1rem;opacity:0;transition:opacity .2s}
.sk-url:hover .sk-url-tools,.sk-url:focus-within .sk-url-tools,.sk-url.copied .sk-url-tools{opacity:1}
.sk-url-tools button,.sk-url-tools a{display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;padding:0;border:1px solid transparent;border-radius:4px;background:none;color:inherit;cursor:pointer;text-decoration:none}
.sk-url-tools button:hover,.sk-url-tools a:hover,.sk-url-tools button:focus-visible,.sk-url-tools a:focus-visible{border-color:currentColor}
@media (hover:none){.sk-url-tools{opacity:1}}

@keyframes skMegaIn{from{opacity:0;transform:translateY(-10px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}
@keyframes skFade{from{opacity:0}to{opacity:1}}
@keyframes skBlink{50%{opacity:0}}

@media (max-width:1180px){.sk-foot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1040px){
  .sk-nav,.sk-hide-md,.sk-login{display:none}
  .sk-burger{display:inline-flex}
  .sk-mega-wrap{display:none}
}
@media (max-width:640px){
  .sk-wrap{padding:0 1rem}
  .sk-hdr-in{gap:.75rem}
  .sk-hdr-right .sk-btn-s{display:none}
  .sk-btn-p .sk-long{display:none}
  .sk-brand-tag{font-size:.72rem}
  .sk-foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:380px){.sk-brand-tag{display:none}}
@media (prefers-reduced-motion:reduce){
  .sk-mega,.sk-scrim,.sk-mob{animation:none}
  .sk-cur{animation:none}
}
