

body:has(.nl-main){background:var(--near);background-image:none}

.nav a[aria-current]{color:var(--ink);font-weight:700;text-decoration:underline;
  text-decoration-color:var(--a);text-decoration-thickness:2px;text-underline-offset:5px}

@media (max-width:979.98px){
  .landing:not(.no-js) .bar-in:has(.hd-in) .nav a[aria-current]{text-decoration:none;
    box-shadow:inset 3px 0 0 var(--a)}
}

.nl-main{--nl-col:40rem;padding-block:30px 34px}
.nl-main .wrap{max-width:calc(var(--nl-col) + var(--sp) * 2)}

.nl-m,.nl-k,.nl-about h2,.nl-sec h2,.nl-end{font-family:var(--mo);font-size:.75rem;line-height:1.3;
  font-weight:400;letter-spacing:.12em;text-transform:uppercase}

.nl-hd{padding-block:0 26px}
.nl-h1{margin:0;font-size:clamp(2.25rem,6vw,2.875rem);line-height:1;letter-spacing:-.04em;
  font-weight:800;color:var(--ink)}
.nl-in{margin:14px 0 0;font-size:1.0625rem;line-height:1.5;color:var(--ink2);text-wrap:pretty}
.nl-to{display:flex;flex-wrap:wrap;gap:0 26px;margin:6px 0 0}
.nl-to .lnk{display:inline-flex;align-items:center;min-height:44px}

.nl-g+.nl-g{margin-top:34px}
.nl-m{margin:0;padding-top:10px;border-top:var(--bw) solid var(--ink);color:var(--ink)}
.nl-l{list-style:none;margin:0;padding:0}

.nl-e{padding-block:22px 26px;border-top:var(--bw) solid var(--hair)}
.nl-e:first-child{border-top:0;padding-top:16px}
.nl-a{position:relative;border-radius:var(--r-x)}

.nl-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 0;margin:0 0 8px;
  font-size:.875rem;line-height:1.45;color:var(--ink3);font-variant-numeric:tabular-nums}
.nl-k{color:var(--a-d);font-size:.7188rem}
.nl-d{color:var(--ink2);white-space:nowrap}
.nl-meta>*+*::before{content:"\00B7";margin-inline:9px;color:var(--ink3)}
.nl-rt{white-space:nowrap}

.nl-t{margin:0;font-size:1.25rem;line-height:1.24;letter-spacing:-.022em;font-weight:760;
  color:var(--ink);text-wrap:balance;overflow-wrap:break-word}
@media (min-width:760px){.nl-t{font-size:1.375rem}}
.nl-t a{color:inherit;text-decoration:none}

.nl-e:not(.nl-lead) .nl-t a::after{content:"";position:absolute;inset:-6px}
.nl-a:hover .nl-t a{color:var(--a-d);text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:4px}
.nl-t a:focus-visible{outline:none}
.nl-a:has(.nl-t a:focus-visible){outline:3px solid var(--a);outline-offset:6px}
.nl-x{margin:8px 0 0;font-size:1rem;line-height:1.55;color:var(--ink2);text-wrap:pretty}

.nl-lead{padding-bottom:34px}
.nl-lead .nl-t{font-size:clamp(1.625rem,4.2vw,2.25rem);line-height:1.12;letter-spacing:-.03em;font-weight:800}
.nl-lead .nl-sf{margin:14px 0 0;font-size:1.1875rem;line-height:1.45;color:var(--ink);text-wrap:pretty}
.nl-lx{margin-top:14px;font-size:1.0625rem;line-height:1.62;color:var(--ink2)}
.nl-lx p{margin:0;text-wrap:pretty}
.nl-lx p+p{margin-top:14px}
.nl-lx a{color:var(--a-d);text-decoration:underline;text-decoration-color:var(--a-e);text-underline-offset:3px}
.nl-go{margin:10px 0 0}
.nl-go .lnk{display:inline-flex;align-items:center;min-height:44px;font-weight:700}
.nl-go .lnk::after{content:"\2192";margin-left:6px}

.nl-end{margin:0;padding-top:12px;border-top:var(--bw) solid var(--hair);color:var(--ink3)}
.nl-years{display:flex;flex-wrap:wrap;align-items:center;gap:0 16px;margin:14px 0 0;
  font-size:.9375rem;color:var(--ink2)}
.nl-years .lnk{display:inline-flex;align-items:center;min-height:44px}

.nl-about{margin-top:44px;padding-top:10px;border-top:var(--bw) solid var(--ink)}
.nl-about h2,.nl-sec h2{margin:0 0 14px;color:var(--ink)}
.nl-about p{margin:0 0 12px;font-size:1rem;line-height:1.55;color:var(--ink2);text-wrap:pretty}
.nl-about .nl-to{margin-top:0}
.nl-mail{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:6px 0 0}
.nl-mail b{font-weight:400;color:var(--ink2)}
.nl-mail .mail{font-family:var(--mo);font-size:1rem;color:var(--ink);overflow-wrap:anywhere}
.nl-mail .cp-btn{border-color:var(--ink2);color:var(--ink)}

.nl-back{margin:0 0 14px}
.nl-back a{display:inline-flex;align-items:center;gap:4px;min-height:44px;padding-right:9px;
  font-size:.9375rem;font-weight:600;color:var(--ink2);text-decoration:none}
.nl-back a:hover{color:var(--a-d);text-decoration:underline;text-underline-offset:3px}
.nl-back svg{width:18px;height:18px;margin-left:-4px;fill:none;stroke:currentColor;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}

.nl-ph{padding-bottom:26px;border-bottom:var(--bw) solid var(--hair)}
.nl-ph .nl-meta{margin-bottom:12px}
.nl-pt{margin:0;font-size:clamp(1.75rem,4.6vw,2.5rem);line-height:1.12;font-weight:800;
  letter-spacing:-.032em;color:var(--ink);text-wrap:balance;overflow-wrap:break-word}

.nl-sf{margin:16px 0 0;font-size:1.25rem;line-height:1.45;color:var(--ink2);text-wrap:pretty}

.nl-by{margin:14px 0 0;font-size:.9375rem;color:var(--ink2)}
.nl-by a{color:var(--ink);font-weight:700;text-decoration:underline;text-decoration-color:var(--edge);
  text-underline-offset:3px}
.nl-by a:hover{color:var(--a-d);text-decoration-color:currentColor}

.nl-body>h2{margin:36px 0 12px;font-size:1.375rem;line-height:1.25;font-weight:780;
  letter-spacing:-.02em;color:var(--ink);text-wrap:balance}

.nl-body{margin-top:26px;font-size:1.0625rem;line-height:1.65;color:var(--ink);overflow-wrap:break-word}
.nl-body p{margin:0 0 18px;text-wrap:pretty}
.nl-body a{color:var(--a-d);text-decoration:underline;text-decoration-color:var(--a-e);
  text-underline-offset:3px;overflow-wrap:anywhere}
.nl-body a:hover{text-decoration-color:currentColor}

.nl-sec{margin-top:40px;padding-top:10px;border-top:var(--bw) solid var(--ink)}
.nl-sec p,.nl-sec li{font-size:1rem;line-height:1.6;color:var(--ink2)}
.nl-sec p{margin:0 0 10px}
.nl-sec .cp-btn{margin-left:9px;vertical-align:middle;border-color:var(--ink2);color:var(--ink)}
.nl-sec ul{margin:0;padding:0;list-style:none;counter-reset:nl}
.nl-sec li{position:relative;padding-left:34px;margin:0 0 14px}
.nl-sec li::before{counter-increment:nl;content:counter(nl);position:absolute;left:0;top:.1em;
  font-family:var(--mo);font-size:.875rem;color:var(--ink3);font-variant-numeric:tabular-nums}

.nl-cta .nl-to{margin-top:0}

.nl-more{margin-top:52px;padding-top:10px;border-top:var(--bw) solid var(--ink)}
.nl-nb{padding-block:18px}
.nl-nb:first-child{padding-top:16px}
.nl-nb-l{font-weight:700;color:var(--ink)}
.nl-more .nl-t{font-size:1.125rem}
.nl-all{margin:14px 0 0}
.nl-all .lnk{display:inline-flex;align-items:center;min-height:44px}

@media (max-width:419.98px){.nl-book .nl-rt{display:none}}

@media (min-width:760px){
  .nl-main{padding-block:52px 52px}
  .nl-hd{padding-bottom:40px}
  .nl-e{padding-block:26px 30px}
  .nl-lead{padding-bottom:40px}
}
