/* Public utility pages: 404 recovery and privacy policy. */
:root{
  --utility-black:#101214;
  --utility-panel:#171a1e;
  --utility-orange:#ff6a00;
  --utility-orange-light:#ff8a2a;
  --utility-white:#fff;
  --utility-muted:rgba(255,255,255,.72);
  --utility-line:rgba(255,255,255,.14);
  --utility-max:1040px;
}
*{box-sizing:border-box}
a{color:inherit;text-decoration:none}

body.page-not-found{
  min-height:100vh;
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:var(--utility-white);
  background:radial-gradient(circle at 82% 16%,rgba(255,106,0,.24),transparent 30%),linear-gradient(135deg,#090b0d,var(--utility-black) 58%,#1a1d21);
  display:flex;
  flex-direction:column;
  line-height:1.55;
}
.page-not-found .top{border-bottom:1px solid var(--utility-line);background:rgba(9,11,13,.72);backdrop-filter:blur(12px)}
.page-not-found .top__in{width:min(100% - 32px,var(--utility-max));min-height:72px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.page-not-found .brand{font-size:23px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}
.page-not-found .brand span{color:var(--utility-orange)}
.page-not-found .phone{font-weight:900;white-space:nowrap}
.page-not-found main{width:min(100% - 32px,var(--utility-max));margin:auto;padding:64px 0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(290px,.8fr);gap:36px;align-items:center}
.page-not-found .code{font-size:clamp(82px,18vw,190px);line-height:.78;font-weight:900;letter-spacing:-.08em;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.24);margin:0 0 32px}
.page-not-found .eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(255,106,0,.42);border-radius:999px;background:rgba(255,106,0,.12);color:#ffd8bd;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:18px}
.page-not-found .eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--utility-orange)}
.page-not-found h1{font-size:clamp(38px,6vw,68px);line-height:.98;letter-spacing:-.035em;text-transform:uppercase;margin:0 0 20px;font-weight:900}
.page-not-found .lead{max-width:720px;margin:0;color:var(--utility-muted);font-size:clamp(18px,2.2vw,22px)}
.page-not-found .actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}
.page-not-found .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 19px;border:1px solid transparent;border-radius:999px;font-weight:900;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.page-not-found .btn:hover{transform:translateY(-2px)}
.page-not-found .btn--accent{background:linear-gradient(135deg,var(--utility-orange),var(--utility-orange-light));color:#fff}
.page-not-found .btn--ghost{border-color:var(--utility-line);background:rgba(255,255,255,.06)}
.page-not-found .panel{background:rgba(255,255,255,.07);border:1px solid var(--utility-line);border-radius:28px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.page-not-found .panel h2{font-size:24px;line-height:1.1;text-transform:uppercase;margin:0 0 18px}
.page-not-found .routes{display:grid;gap:10px}
.page-not-found .route{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 16px;border-radius:16px;background:rgba(255,255,255,.055);border:1px solid transparent;font-weight:900}
.page-not-found .route:hover{border-color:rgba(255,106,0,.46);background:rgba(255,106,0,.1)}
.page-not-found .route span:last-child{color:var(--utility-orange);font-size:22px}
.page-not-found .help{margin:20px 0 0;padding-top:20px;border-top:1px solid var(--utility-line);color:var(--utility-muted)}
.page-not-found .help a{color:#fff;font-weight:900}
.page-not-found footer{border-top:1px solid var(--utility-line);color:rgba(255,255,255,.58)}
.page-not-found .footer__in{width:min(100% - 32px,var(--utility-max));min-height:62px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:14px}
.page-not-found .footer__in a{color:#fff}

body.page-privacy{margin:0;font-family:Arial,Helvetica,sans-serif;color:#111827;line-height:1.6;background:#f8fafc}
.page-privacy .wrap{width:min(100% - 32px,900px);margin:0 auto;padding:42px 0}
.page-privacy .card{background:#fff;border:1px solid #e5e7eb;border-radius:24px;padding:30px;box-shadow:0 12px 36px rgba(15,23,42,.08)}
.page-privacy h1{font-size:36px;line-height:1.1;margin:0 0 18px;font-weight:900}
.page-privacy h2{font-size:24px;margin:26px 0 10px}
.page-privacy p,.page-privacy li{color:#475467}
.page-privacy a{color:#111827;font-weight:900}
.page-privacy .btn{display:inline-flex;margin-top:20px;background:#111827;color:#fff;text-decoration:none;border-radius:999px;padding:12px 18px}

@media(max-width:820px){
  .page-not-found main{grid-template-columns:1fr;padding:42px 0}
  .page-not-found .code{margin-bottom:24px}
  .page-not-found .panel{padding:20px}
  .page-not-found .top__in{min-height:64px}
}
@media(max-width:540px){
  .page-not-found .top__in,.page-not-found .footer__in{width:min(100% - 24px,var(--utility-max))}
  .page-not-found .phone{font-size:14px}
  .page-not-found main{width:min(100% - 24px,var(--utility-max))}
  .page-not-found .actions{display:grid}
  .page-not-found .btn{width:100%}
  .page-not-found .panel{border-radius:22px}
  .page-privacy .wrap{width:min(100% - 24px,900px);padding:24px 0}
  .page-privacy .card{padding:22px;border-radius:20px}
  .page-privacy h1{font-size:31px}
}
