/* MARCELLALEGAL.COM DESIGN SYSTEM — May 2026 — v7 */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=IBM+Plex+Mono:wght@300;400;500&family=Source+Serif+4:ital,opsz,wght@0,8..60,300;0,8..60,400;0,8..60,500;1,8..60,300;1,8..60,400&display=swap');
:root{--bg:#0a0c10;--bg-card:#12151c;--bg-card-hover:#181c26;--bg-surface:#1a1e28;--ink:#e8eaf0;--ink-muted:#9ca3b0;--ink-dim:#6b7280;--green:#22c55e;--green-bg:rgba(34,197,94,0.08);--yellow:#eab308;--red:#ef4444;--blue:#3b82f6;--accent:#f59e0b;--accent-dim:rgba(245,158,11,0.15);--rule:rgba(255,255,255,0.06);--rule-light:rgba(255,255,255,0.1);--serif:'Playfair Display',serif;--body-serif:'Libre Baskerville','Source Serif 4',serif;--mono:'IBM Plex Mono',monospace;--radius:8px;--radius-lg:12px;--max:1140px;--g:40px}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--body-serif);font-size:17px;line-height:1.7;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.inner{max-width:var(--max);margin:0 auto;padding:0 var(--g)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}.reveal.d1{transition-delay:.1s}.reveal.d2{transition-delay:.2s}.reveal.d3{transition-delay:.3s}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.2}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.5rem,3.5vw,2.2rem)}h3{font-size:clamp(1.1rem,2.5vw,1.5rem)}
.eyebrow{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:2.5px;text-transform:uppercase;color:var(--accent)}.body-text{font-family:var(--body-serif);font-size:16px;line-height:1.75;color:var(--ink-muted);max-width:640px}.h-rule{width:48px;height:1px;background:var(--accent);margin:20px 0}
nav{position:fixed;top:0;left:0;right:0;z-index:300;background:rgba(10,12,16,0.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);transition:box-shadow .2s}nav.raised{box-shadow:0 2px 20px rgba(0,0,0,.3)}.nav-inner{max-width:var(--max);margin:0 auto;padding:0 var(--g);height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{display:flex;align-items:center;gap:12px;flex-shrink:0;cursor:pointer}.nav-name{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--ink);letter-spacing:-0.3px}.nav-name em{font-style:italic;color:var(--accent)}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--ink-dim);padding:8px 14px;border-radius:6px;transition:color .15s,background .15s}.nav-links a:hover{color:var(--ink);background:rgba(255,255,255,0.04)}.nav-cta{font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--bg);background:var(--accent);padding:10px 20px;border-radius:6px;transition:background .15s;white-space:nowrap}.nav-cta:hover{background:#d4890a}
.mob-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px}.mob-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0;transition:.2s}.mob-menu{display:none}
footer{background:#06080c;border-top:1px solid var(--rule);padding:60px 0 40px}.footer-inner{max-width:var(--max);margin:0 auto;padding:0 var(--g)}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;margin-bottom:40px;flex-wrap:wrap}.footer-brand{font-family:var(--serif);font-size:20px;color:var(--ink)}.footer-brand em{font-style:italic;color:var(--accent)}.footer-tagline{font-family:var(--mono);font-size:10px;color:var(--ink-dim);letter-spacing:1.5px;text-transform:uppercase;margin-top:6px}.footer-links{display:flex;gap:48px;flex-wrap:wrap}.footer-col h4{font-family:var(--mono);font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-dim);margin-bottom:14px;font-weight:500}.footer-col a{display:block;font-size:14px;color:var(--ink-muted);padding:3px 0;transition:color .15s}.footer-col a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid var(--rule);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.footer-copy{font-family:var(--mono);font-size:10px;color:var(--ink-dim);letter-spacing:1px}.footer-legal{display:flex;gap:24px}.footer-legal a{font-family:var(--mono);font-size:10px;color:var(--ink-dim);letter-spacing:1px;text-transform:uppercase}.footer-legal a:hover{color:var(--ink-muted)}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:14px 28px;border-radius:6px;transition:all .15s;cursor:pointer;border:none}.btn-primary{background:var(--accent);color:var(--bg)}.btn-primary:hover{background:#d4890a}.btn-outline{background:transparent;color:var(--ink);border:1px solid var(--rule-light)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-ghost{background:rgba(255,255,255,0.04);color:var(--ink-muted);border:1px solid var(--rule)}.btn-ghost:hover{color:var(--ink);border-color:var(--rule-light)}
.card{background:var(--bg-card);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:32px;transition:border-color .2s,background .2s}.card:hover{border-color:var(--rule-light);background:var(--bg-card-hover)}
section{padding:80px 0}section+section{border-top:1px solid var(--rule)}
@media(max-width:768px){:root{--g:20px}.nav-links{display:none}.mob-toggle{display:block}.mob-menu.open{display:flex;flex-direction:column;position:fixed;top:72px;left:0;right:0;bottom:0;background:rgba(10,12,16,0.98);backdrop-filter:blur(12px);padding:32px var(--g);gap:8px;z-index:299}.mob-menu a{font-family:var(--mono);font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-muted);padding:14px 0;border-bottom:1px solid var(--rule)}.mob-menu .mob-cta{color:var(--accent);border-bottom:none;margin-top:16px}section{padding:48px 0}.footer-top{flex-direction:column}.footer-links{flex-direction:column;gap:32px}.footer-bottom{flex-direction:column;text-align:center}}
