/* DAV Communication Portal v6.0.1 — editable generic 404 page */
.portal-error-page main{
    display:flex;
    align-items:center;
}

.not-found-shell{
    display:grid;
    grid-template-columns:minmax(210px,.7fr) minmax(0,1.3fr);
    gap:38px;
    align-items:center;
    width:min(980px,100%);
    margin:38px auto;
    padding:42px;
    border:1px solid #d4dde7;
    border-radius:20px;
    background:#fff;
    box-shadow:0 16px 42px rgba(15,43,68,.10);
}
.not-found-visual{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:260px;
    border:1px solid #cfe0ed;
    border-radius:18px;
    background:linear-gradient(145deg,#f4f9fd,#e8f2fa);
    overflow:hidden;
}
.not-found-code{
    color:#0b5790;
    font-size:6.2rem;
    font-weight:900;
    letter-spacing:-.08em;
    opacity:.18;
}
.not-found-document-icon{
    position:absolute;
    display:flex;
    align-items:center;
    justify-content:center;
    width:92px;
    height:112px;
    border:5px solid #0b5790;
    border-radius:12px;
    background:#fff;
    color:#0b5790;
    font-size:3.3rem;
    font-weight:900;
    box-shadow:0 12px 25px rgba(11,87,144,.15);
}
.not-found-eyebrow{
    color:#0b5790;
    font-size:.78rem;
    font-weight:850;
    letter-spacing:.09em;
    text-transform:uppercase;
}
.not-found-content h1{
    margin:8px 0 12px;
    color:#1f2937;
    font-size:2.25rem;
    line-height:1.12;
}
.not-found-content > p{
    color:#59687b;
    font-size:1rem;
    line-height:1.6;
}
.not-found-help{
    display:grid;
    gap:4px;
    margin:22px 0;
    padding:14px 16px;
    border-left:4px solid #0b5790;
    border-radius:10px;
    background:#eef6fc;
    color:#31536d;
}
.not-found-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:20px;
}
.not-found-support{
    margin-top:22px!important;
    padding-top:18px;
    border-top:1px solid #e2e8f0;
    font-size:.88rem!important;
}
@media(max-width:720px){
    .not-found-shell{
        grid-template-columns:1fr;
        gap:22px;
        margin:20px auto;
        padding:24px;
    }
    .not-found-visual{min-height:180px;}
    .not-found-code{font-size:4.8rem;}
    .not-found-document-icon{width:72px;height:88px;font-size:2.5rem;}
    .not-found-content h1{font-size:1.8rem;}
    .not-found-actions{display:grid;grid-template-columns:1fr;}
    .not-found-actions .button{width:100%;text-align:center;}
}
