:root {
    --primary:#2563eb;
    --primary-dark:#1e40af;
    --accent:#ff3b12;
    --dark:#020617;
    --light:#f8fafc;
    --text:#0f172a;
    --muted:#64748b;
    --border:#e2e8f0;
}

html, body {
    height: 100%;
    margin: 0;
}

body{
    font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
    background:var(--light);
    color:var(--text);
}

/* STRUCTURE */
.layout-root{
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

.site-content{
    flex:1;
}

header{
    background:
        radial-gradient(circle at top left,rgba(37,99,235,.38),transparent 34%),
        linear-gradient(135deg,#020617,#0f172a 55%,#1e293b);
    color:white;
    padding:56px 20px 50px;
    text-align:center;
}

.site-logo{
    display:block;
    width:min(420px,88vw);
    height:auto;
    margin:0 auto;
}

header p{
    max-width:760px;
    margin:12px auto 0;
    color:#dbeafe;
    font-size:17px;
    line-height:1.5;
}

.container{
    max-width:1000px;
    margin:48px auto;
    padding:0 20px;
}

.legal-page{
    max-width:920px;
    margin:0 auto;
}

.back-home{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:22px;
    color:var(--primary);
    font-weight:700;
    text-decoration:none;
}

.back-home:hover{
    color:var(--primary-dark);
}

.legal-hero{
    background:white;
    border:1px solid var(--border);
    border-left:6px solid var(--primary);
    border-radius:16px;
    padding:28px;
    box-shadow:0 18px 45px rgba(15,23,42,.08);
    margin-bottom:22px;
    text-align:center;
}

.legal-hero h1{
    margin:0 0 10px;
    font-size:32px;
}

.legal-hero p{
    margin:0;
    color:var(--muted);
    line-height:1.6;
}

.legal-card{
    background:white;
    border:1px solid var(--border);
    border-radius:14px;
    padding:24px 26px;
    box-shadow:0 10px 30px rgba(15,23,42,.06);
    margin-bottom:18px;
}

.legal-card h2,
.legal-card h3{
    margin:0 0 12px;
    color:#0f172a;
}

.legal-card p,
.legal-card li{
    color:#334155;
    line-height:1.65;
}

.legal-card ul{
    margin:0;
    padding-left:22px;
}

.legal-note{
    background:#f8fafc;
    border:1px dashed #cbd5e1;
    color:#475569;
}

.contact-box{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
}

.contact-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--primary);
    font-size:18px;
    font-weight:800;
    text-decoration:none;
    overflow-wrap:anywhere;
}

/* FOOTER */
.site-footer{
    background:#020617;
    color:#cbd5f5;
    padding:40px 20px;
    text-align:center;
    font-size:14px;
}

.footer-links{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px 18px;
}

.site-footer a{
    color:#93c5fd;
    text-decoration:none;
}

.site-footer a:hover{
    text-decoration:underline;
}

.footer-copy{
    margin-top:12px;
    opacity:.7;
    font-size:13px;
}

@media(max-width:640px){
    header{
        padding:42px 18px 38px;
    }

    .site-logo{
        width:min(330px,90vw);
    }

    .container{
        margin:28px auto;
        padding:0 16px;
    }

    .legal-hero,
    .legal-card{
        padding:20px;
    }

    .legal-hero h1{
        font-size:26px;
    }
}
/* Remaining static Blade presentation. */
p.public-layout-legal-note-inset { padding:12px 14px; border-radius:10px; }
