/* ===== LinkVerse.Work — Legal pages premium shell ===== */
.legal-hero {
    position: relative; padding: 110px 0 40px;
    background: #07070c; text-align: center; overflow: hidden; color: #e4e4e7;
}
.legal-hero::before, .legal-hero::after {
    content: ""; position: absolute; border-radius: 50%; filter: blur(70px); pointer-events: none;
}
.legal-hero::before { top: -180px; left: -120px; width: 480px; height: 480px; background: radial-gradient(circle, rgba(20, 85, 198, 0.45), transparent 70%); }
.legal-hero::after  { top: -100px; right: -120px; width: 420px; height: 420px; background: radial-gradient(circle, rgba(96, 165, 250, 0.32), transparent 70%); }
.legal-hero > * { position: relative; z-index: 1; }
.legal-hero-eyebrow {
    display: inline-flex; align-items: center; gap: 8px;
    color: #c7d2fe; font-size: 0.74rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.22em;
    padding: 6px 14px; border-radius: 999px;
    background: rgba(20, 85, 198, 0.12); border: 1px solid rgba(59, 91, 219, 0.28);
    margin-bottom: 18px;
}
.legal-hero-eyebrow .lh-dot { width: 7px; height: 7px; border-radius: 50%; background: #93c5fd; box-shadow: 0 0 0 3px rgba(147, 197, 253, 0.25), 0 0 14px rgba(147, 197, 253, 0.8); animation: lhPulse 2s ease-in-out infinite; }
@keyframes lhPulse { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:0.55;transform:scale(1.3);} }
.legal-hero-title {
    color: #fff; font-size: clamp(1.9rem, 4.4vw, 3rem); font-weight: 800;
    letter-spacing: -0.02em; line-height: 1.1; margin: 0 0 14px;
    background: linear-gradient(135deg, #fff, #c7d2fe);
    -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.legal-hero-subtitle { color: #a1a1aa; font-size: 1rem; margin: 0; }

.legal-section { background: #07070c; padding: 40px 0 100px; }
.legal-container { max-width: 880px; margin: 0 auto; padding: 0 20px; position: relative; }

.legal-card {
    padding: 44px 44px;
    background: linear-gradient(180deg, rgba(22,22,32,0.85), rgba(15,15,23,0.85));
    border: 1px solid rgba(20, 85, 198, 0.18); border-radius: 22px;
    box-shadow: 0 22px 60px rgba(0,0,0,0.4);
    backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
@media (max-width: 600px) { .legal-card { padding: 28px 22px; } }

.legal-content { color: #d4d4d8; line-height: 1.75; font-size: 0.96rem; }
.legal-content h2 {
    color: #fff; font-size: 1.25rem; font-weight: 800; letter-spacing: -0.01em;
    margin: 36px 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(20, 85, 198, 0.18);
}
.legal-content h2:first-child { margin-top: 0; }
.legal-content h3 {
    color: #f4f4f5; font-size: 1.02rem; font-weight: 700;
    margin: 24px 0 10px; letter-spacing: -0.005em;
}
.legal-content p { margin: 0 0 14px; color: #a1a1aa; }
.legal-content ul { margin: 0 0 18px; padding-left: 22px; color: #a1a1aa; }
.legal-content li { margin-bottom: 6px; }
.legal-content li::marker { color: #3b5bdb; }
.legal-content strong { color: #f4f4f5; font-weight: 600; }
.legal-content a { color: #93c5fd; text-decoration: none; transition: color 0.2s ease; border-bottom: 1px solid rgba(147, 197, 253, 0.32); }
.legal-content a:hover { color: #fff; border-bottom-color: #c7d2fe; }

.contact-box, .highlight {
    margin: 22px 0;
    padding: 18px 20px;
    background: linear-gradient(135deg, rgba(20, 85, 198, 0.10), rgba(96, 165, 250, 0.06));
    border: 1px solid rgba(59, 91, 219, 0.32); border-radius: 14px;
    color: #d4d4d8;
}
.contact-box h3 { color: #fff; margin: 0 0 8px; font-size: 1rem; }
.contact-box p, .highlight p { color: #d4d4d8; margin: 0 0 8px; }
.contact-box ul, .highlight ul { color: #d4d4d8; margin-bottom: 0; }
.highlight { border-color: rgba(245,158,11,0.42); background: linear-gradient(135deg, rgba(245,158,11,0.10), rgba(249,115,22,0.06)); color: #fcd34d; }
.highlight strong { color: #fff; }

.legal-related {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;
    margin-top: 30px;
    padding: 22px;
    background: rgba(22,22,32,0.6); border: 1px solid rgba(20, 85, 198, 0.16); border-radius: 16px;
}
.legal-related a {
    padding: 9px 18px; border-radius: 999px;
    color: #c7d2fe; font-size: 0.86rem; font-weight: 600;
    background: rgba(20, 85, 198, 0.10); border: 1px solid rgba(20, 85, 198, 0.28);
    text-decoration: none; transition: all 0.2s ease;
    display: inline-flex; align-items: center; gap: 7px;
}
.legal-related a i { font-size: 0.78rem; }
.legal-related a:hover { background: rgba(20, 85, 198, 0.22); color: #fff; border-color: rgba(59, 91, 219, 0.55); }
.legal-related a.is-current { background: linear-gradient(135deg, #1455c6, #3b5bdb); color: #fff; border-color: transparent; box-shadow: 0 8px 20px rgba(20, 85, 198, 0.42); }

@media (prefers-reduced-motion: reduce) {
    .lh-dot { animation: none !important; }
    .legal-related a { transition: none !important; }
}
