.error-shell { display:grid; grid-template-rows:auto 1fr auto; }
.error-header { flex-wrap:nowrap; }
.error-main { min-height:calc(100vh - 200px); display:grid; grid-template-columns:1.08fr .92fr; }
.error-copy { align-self:center; padding:clamp(80px,9vw,145px) clamp(28px,6vw,108px); }
.error-copy h1 { max-width:820px; }
.error-intro { max-width:650px; color:var(--muted); font-size:clamp(18px,1.55vw,23px); line-height:1.62; }
.error-links { display:flex; align-items:center; flex-wrap:wrap; gap:24px 32px; margin-top:40px; }
.error-board { position:relative; min-height:600px; overflow:hidden; border-left:2px solid var(--ink); background:var(--blush); }
.error-board::before { content:""; position:absolute; inset:0; opacity:.55; background-image:linear-gradient(rgba(36,36,60,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(36,36,60,.13) 1px,transparent 1px); background-size:42px 42px; }
.error-board-title { position:absolute; z-index:1; top:26px; left:26px; right:26px; display:flex; justify-content:space-between; padding-bottom:13px; border-bottom:2px solid var(--ink); font-family:var(--mono); font-size:11px; font-weight:500; letter-spacing:.03em; text-transform:uppercase; }
.error-board-title b { color:var(--pink); letter-spacing:5px; }
.error-paper { position:absolute; z-index:1; top:22%; left:12%; right:12%; min-height:260px; display:flex; flex-direction:column; padding:32px; border:2px solid var(--ink); background:var(--paper); box-shadow:8px 8px 0 var(--ink); transform:rotate(-3deg); }
.error-paper small { font-family:var(--mono); font-size:10px; font-weight:500; letter-spacing:.04em; }
.error-paper strong { margin:auto 0 8px; font-family:var(--serif); font-size:clamp(46px,6vw,84px); font-weight:600; letter-spacing:-.02em; }
.error-paper span { font-family:var(--serif); font-style:italic; font-size:17px; color:var(--muted); }
.error-stamp { position:absolute; z-index:2; right:7%; bottom:8%; width:130px; height:130px; display:grid; place-items:center; border:3px solid var(--pink); border-radius:50%; color:var(--pink); font-family:var(--mono); font-size:10px; font-weight:500; line-height:1.5; text-align:center; text-transform:uppercase; transform:rotate(9deg); }
@media (max-width:900px) { .error-main { grid-template-columns:1fr; } .error-board { min-height:520px; border-top:2px solid var(--ink); border-left:0; } }
@media (max-width:650px) { .error-copy { padding:76px 22px; } .error-links { align-items:flex-start; flex-direction:column; } .error-board { min-height:430px; } .error-paper { min-height:220px; } }
