html{scroll-padding-top:88px}
/* Natsu Labs Website v2 foundation — scoped so unfinished v1 pages remain untouched. */
.v2-page{
  --v2-bg:#0b0d0f;
  --v2-surface:#101318;
  --v2-surface-2:#15191e;
  --v2-text:#f2f3ef;
  --v2-text-soft:#c4c9c4;
  --v2-muted:#8f9691;
  --v2-line:#292f34;
  --v2-line-strong:#41494f;
  --v2-accent:#c9f36b;
  --v2-accent-soft:#ddf7a4;
  --v2-max:1200px;
  --v2-gutter:clamp(18px,3.3vw,46px);
  --v2-display:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  --v2-body:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color-scheme:dark;
  margin:0;
  color:var(--v2-text);
  background:var(--v2-bg);
  font:16px/1.6 var(--v2-body);
  -webkit-font-smoothing:antialiased;
}
.v2-page *{box-sizing:border-box}
.v2-page img{display:block;max-width:100%}
.v2-page a{color:inherit;text-decoration:none}
.v2-page button,.v2-page input,.v2-page select,.v2-page textarea{font:inherit}
.v2-page button{color:inherit}
.v2-page h1,.v2-page h2,.v2-page h3,.v2-page h4{
  margin:0;
  color:var(--v2-text);
  font-family:var(--v2-display);
  line-height:1.06;
  letter-spacing:-.034em;
  text-wrap:balance;
}
.v2-page p{margin:0;text-wrap:pretty}
.v2-page [id]{scroll-margin-top:88px}
.v2-page ::selection{background:var(--v2-accent);color:#111}
.v2-shell{width:min(var(--v2-max),calc(100% - (var(--v2-gutter) * 2)));margin-inline:auto}
.v2-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:var(--v2-muted);
  font-size:.82rem;
  font-weight:720;
  line-height:1.3;
}
.v2-kicker::before{content:"";width:14px;height:1px;background:currentColor;flex:0 0 auto}
.v2-lead{max-width:62ch;color:var(--v2-text-soft);font-size:clamp(1rem,1.15vw,1.1rem);line-height:1.68}
.v2-section{padding:clamp(66px,7.2vw,100px) 0;border-top:1px solid var(--v2-line)}
.v2-section-head{display:grid;grid-template-columns:minmax(140px,.28fr) minmax(0,1fr);gap:clamp(26px,4.6vw,70px);align-items:start;margin-bottom:clamp(32px,4.5vw,52px)}
.v2-section-head h2{max-width:19ch;font-size:clamp(2rem,3.25vw,3.25rem);line-height:1.04}
.v2-section-head p{max-width:60ch;margin-top:12px;color:var(--v2-muted);line-height:1.65}
.v2-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.v2-button{
  display:inline-flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 15px;
  border:1px solid var(--v2-line-strong);
  border-radius:2px;
  background:transparent;
  color:var(--v2-text);
  font-size:.89rem;
  font-weight:740;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}
.v2-button.primary{border-color:var(--v2-accent);background:var(--v2-accent);color:#11140e}
.v2-button.text{min-height:42px;padding-inline:2px;border-color:transparent;background:transparent}
.v2-text-link,.section-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid var(--v2-line-strong);padding-bottom:2px;font-weight:730}
.section-link{margin-top:16px;color:var(--v2-text-soft);font-size:.86rem}
.v2-status{display:inline-flex;align-items:center;gap:8px;color:var(--v2-text-soft);font-size:.76rem;font-weight:700;line-height:1.3}
.v2-status::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--v2-accent)}
.v2-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.v2-page :focus-visible{outline:3px solid var(--v2-accent);outline-offset:4px}
.v2-page .skip-link{position:fixed;z-index:1000;left:12px;top:12px;padding:10px 14px;background:var(--v2-accent);color:#111;font-weight:800;transform:translateY(-180%)}
.v2-page .skip-link:focus{transform:none}

/* Header */
.v2-page .site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid var(--v2-line);background:#0b0d0f}
.v2-page .nav-shell{height:66px;display:flex;align-items:center;gap:25px}
.v2-page .brand{display:inline-flex;flex:0 0 auto;align-items:center;gap:10px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.v2-page .brand img{width:31px;height:31px}
.v2-page .nav-links{display:flex;flex:0 0 auto;align-items:center;gap:19px;margin-left:auto;font-size:.86rem;font-weight:680}
.v2-page .nav-links a{padding:9px 0;color:var(--v2-text-soft);white-space:nowrap}
.v2-page .nav-primary{display:inline-flex;flex:0 0 auto;align-items:center;min-height:40px;padding:8px 12px;border:1px solid var(--v2-line-strong);border-radius:2px;font-size:.83rem;font-weight:760}
.v2-page .menu-toggle{display:none;margin-left:auto;min-height:42px;border:1px solid var(--v2-line-strong);border-radius:2px;background:transparent;padding:8px 12px;font-size:.86rem;font-weight:760}
.v2-page .mobile-panel{display:none}
.v2-page.menu-open{overflow:hidden}

/* Footer */
.v2-page .v2-footer{padding:56px 0 30px;border-top:1px solid var(--v2-line);background:#080a0c}
.v2-footer-grid{display:grid;grid-template-columns:1.35fr .65fr .72fr;gap:clamp(30px,6vw,72px);padding-bottom:40px}
.v2-footer-intro h2{max-width:17ch;margin-top:18px;font-size:clamp(1.8rem,2.5vw,2.55rem);line-height:1.06}
.v2-footer-intro p{max-width:48ch;margin-top:14px;color:var(--v2-muted)}
.v2-footer-column strong{display:block;margin-bottom:10px;color:var(--v2-muted);font-size:.74rem;font-weight:700}
.v2-footer-column a{display:block;width:max-content;max-width:100%;padding:5px 0;color:var(--v2-text-soft)}
.v2-footer-bottom{display:flex;justify-content:space-between;gap:24px;padding-top:20px;border-top:1px solid var(--v2-line);color:var(--v2-muted);font-size:.78rem}

@media(hover:hover){
  .v2-button:hover{border-color:#626b72;background:var(--v2-surface-2)}
  .v2-button.primary:hover{background:var(--v2-accent-soft);border-color:var(--v2-accent-soft)}
  .v2-button.text:hover{border-color:transparent;background:transparent;color:var(--v2-accent)}
  .v2-text-link:hover,.section-link:hover{border-color:var(--v2-accent);color:var(--v2-accent)}
  .v2-page .nav-links a:hover{color:var(--v2-text)}
  .v2-page .nav-primary:hover{border-color:var(--v2-accent);color:var(--v2-accent)}
  .v2-footer-column a:hover{color:var(--v2-accent)}
}


@media(max-width:1080px){
  .v2-page .nav-links,.v2-page .nav-primary{display:none}
  .v2-page .menu-toggle{display:block}
  .v2-page .mobile-panel{position:fixed;left:0;right:0;top:66px;max-height:calc(100dvh - 66px);overflow:auto;border-bottom:1px solid var(--v2-line-strong);background:#0d1013;padding:10px max(var(--v2-gutter),env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(var(--v2-gutter),env(safe-area-inset-left));box-shadow:0 26px 54px rgba(0,0,0,.34)}
  .v2-page .mobile-panel.open{display:flex;flex-direction:column}
  .v2-page .mobile-panel a{display:flex;min-height:52px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--v2-line);font-weight:720}
  .v2-page .mobile-panel a:last-child{margin-top:10px;border:1px solid var(--v2-line-strong);padding-inline:14px}
}

@media(max-width:900px){
  .v2-section{padding:66px 0}
  .v2-section-head{grid-template-columns:1fr;gap:12px;margin-bottom:36px}
  .v2-section-head h2{max-width:21ch;font-size:clamp(2rem,5.8vw,2.9rem)}
  .v2-section-head p{margin-top:7px}
  .v2-footer-grid{grid-template-columns:1fr 1fr}
  .v2-footer-intro{grid-column:1/-1}
}
@media(max-width:600px){
  .v2-page{font-size:15.5px}
  .v2-page .nav-shell{height:62px}
  .v2-page .brand img{width:29px;height:29px}
  .v2-page .mobile-panel{top:62px;max-height:calc(100dvh - 62px)}
  .v2-section{padding:56px 0}
  .v2-section-head{margin-bottom:28px}
  .v2-section-head h2{font-size:clamp(1.9rem,8.6vw,2.5rem)}
  .v2-footer-grid{grid-template-columns:1fr;gap:27px}
  .v2-footer-intro{grid-column:auto}
  .v2-footer-intro h2{font-size:1.9rem}
  .v2-footer-bottom{display:block}
  .v2-footer-bottom > span{display:block;margin-top:5px}
  .v2-footer-bottom [data-current-year]{display:inline;margin:0}
}
@media(max-width:380px){
  .v2-page{--v2-gutter:16px}
  .v2-page .brand{gap:8px;font-size:.95rem}
  .v2-page .menu-toggle{padding-inline:10px}
  .v2-section{padding:50px 0}
}
@media(prefers-reduced-motion:reduce){
  .v2-page *, .v2-page *::before, .v2-page *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
