/* Page not found (404.php). 17 Oct 2026. */
.nf{background:var(--light);padding:56px 0 72px;border-bottom:1px solid var(--line)}
.nf__in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:20px 56px;align-items:center}
.nf__art svg{display:block;width:100%;height:auto;max-width:620px}
.nf__fix{stroke-dasharray:640;stroke-dashoffset:640;animation:nfFix 1.4s .35s cubic-bezier(.6,.05,.3,1) forwards}
@keyframes nfFix{to{stroke-dashoffset:0}}
.nf__txt h1{font-size:clamp(30px,3.2vw,44px);font-weight:600;letter-spacing:-.03em;line-height:1.1;margin:0 0 14px;color:var(--black)}
.nf__lead{font-size:17px;line-height:1.6;color:var(--grey);margin:0 0 26px;max-width:52ch}

.nf__guess{margin:0 0 24px}
.nf__guess h2{font-size:15px;font-weight:600;color:var(--black);margin:0 0 8px}
.nf__guess ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.nf__guess li{border-bottom:1px solid var(--line)}
.nf__guess a{display:block;padding:11px 2px;text-decoration:none;color:var(--black)}
.nf__guess a b{display:block;font-size:15.5px;font-weight:600}
.nf__guess a span{display:block;font-size:13.5px;color:var(--grey);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nf__guess a:hover b{color:var(--red)}

.nf__search label{display:block;font-size:14px;font-weight:600;color:var(--black);margin:0 0 8px}
.nf__search div{display:flex;gap:0;max-width:560px}
.nf__search input{flex:1;min-width:0;font:inherit;font-size:15.5px;padding:13px 14px;border:1px solid var(--sand);border-right:0;background:#fff;color:var(--black);border-radius:0}
.nf__search input:focus{outline:0;border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
.nf__search .btn{border-radius:0;white-space:nowrap}

.nf__routes{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:30px}
.nf__routes a{display:block;padding:20px 22px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--black);transition:border-color .15s,box-shadow .15s}
.nf__routes a b{display:block;font-size:16.5px;font-weight:600;margin-bottom:5px}
.nf__routes a span{display:block;font-size:14px;line-height:1.5;color:var(--grey)}
.nf__routes a:hover{border-color:var(--stone);box-shadow:0 12px 28px -22px rgba(26,23,25,.45)}
.nf__routes a:hover b{color:var(--red)}
.nf__routes a:focus-visible,.nf__guess a:focus-visible{outline:2px solid var(--red);outline-offset:2px}

.nf__foot{grid-column:1/-1;margin:22px 0 0;font-size:14px;color:var(--grey);line-height:1.6}
.nf__foot code{font-family:var(--mono);font-size:13px;background:#fff;border:1px solid var(--line);padding:1px 6px;color:var(--black);word-break:break-all}
.nf__foot a{color:var(--red);font-weight:600;text-decoration:none}
.nf__foot a:hover{text-decoration:underline}

@media (max-width:980px){.nf__in{grid-template-columns:1fr}.nf__art svg{max-width:480px}.nf__routes{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.nf{padding:32px 0 48px}.nf__routes{grid-template-columns:1fr}.nf__search div{flex-direction:column}.nf__search input{border-right:1px solid var(--sand)}}
@media (prefers-reduced-motion:reduce){.nf__fix{animation:none;stroke-dashoffset:0}}
