@import url("https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Inter:wght@400;500;600;700&display=swap");
:root{--levo-primary:#0077cc;--levo-primary-dark:#005a9e;--levo-accent:#89CFF0;--levo-dark:#0f1c2e;--levo-light:#f5f8ff;--levo-text:#111;--levo-text-muted:#666;--levo-white:#fff;--levo-border:#e2e8f0;--levo-radius:10px;--levo-shadow:0 10px 30px rgba(0,0,0,0.08);--levo-shadow-hover:0 15px 40px rgba(0,0,0,0.15);--levo-transition:0.3s ease}
*,*::before,*::after{box-sizing:border-box}
body.levo-brand{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--levo-light);color:var(--levo-text);margin:0;padding:0;min-height:100vh;line-height:1.6;display:flex;flex-direction:column}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.levo-skip-link{position:absolute;top:-40px;left:10px;padding:10px 16px;background:var(--levo-primary);color:var(--levo-white);border-radius:var(--levo-radius);transition:top var(--levo-transition);z-index:1000;text-decoration:none}
.levo-skip-link:focus{top:10px}
.levo-header{background:var(--levo-white);border-bottom:1px solid var(--levo-border);padding:.75rem 1.5rem;position:sticky;top:0;z-index:100;box-shadow:0 2px 10px rgba(0,0,0,0.05)}
.levo-header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
.levo-logo-link{display:flex;align-items:center;text-decoration:none;gap:.75rem}
.levo-logo-img{height:40px;width:auto}
.levo-logo-text{font-family:DM Serif Display,serif;font-size:1.5rem;color:var(--levo-primary)}
.levo-nav{display:flex;gap:.5rem;flex-wrap:wrap}
.levo-nav a{color:var(--levo-text);text-decoration:none;padding:.5rem 1rem;border-radius:var(--levo-radius);font-weight:500;transition:all var(--levo-transition)}
.levo-nav a:hover,.levo-nav a:focus,.levo-nav a.active{background:var(--levo-primary);color:var(--levo-white)}
.levo-main{max-width:1200px;margin:0 auto;padding:2rem 1.5rem 4rem;flex:1;width:100%}
.levo-page-title{text-align:center;margin-bottom:2rem}
.levo-page-title h1{font-family:DM Serif Display,serif;font-size:2.5rem;color:var(--levo-dark);margin:0 0 .5rem}
.levo-page-title p{color:var(--levo-text-muted);font-size:1.1rem;margin:0}
.levo-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}
.levo-card{background:var(--levo-white);border-radius:var(--levo-radius);padding:1.5rem;box-shadow:var(--levo-shadow);border:1px solid var(--levo-border);transition:all var(--levo-transition);text-decoration:none;color:inherit;display:flex;flex-direction:column;position:relative}
.levo-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--levo-primary),var(--levo-accent));border-radius:var(--levo-radius) var(--levo-radius) 0 0;opacity:0;transition:opacity var(--levo-transition)}
.levo-card:hover,.levo-card:focus{transform:translateY(-4px);box-shadow:var(--levo-shadow-hover);border-color:var(--levo-primary)}
.levo-card:hover::before,.levo-card:focus::before{opacity:1}
.levo-card-icon{font-size:2.5rem;margin-bottom:1rem}
.levo-card h2,.levo-card h3{font-family:DM Serif Display,serif;color:var(--levo-dark);margin:0 0 .75rem;font-size:1.4rem}
.levo-card p{color:var(--levo-text-muted);margin:0 0 1rem;line-height:1.6;flex:1}
.levo-tech-stack{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}
.levo-tech-badge{background:var(--levo-light);color:var(--levo-primary);padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}
.levo-footer{background:var(--levo-dark);color:var(--levo-white);padding:2rem 1.5rem;margin-top:auto}
.levo-footer-inner{max-width:1200px;margin:0 auto;text-align:center}
.levo-footer-social{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}
.levo-footer-social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:rgba(255,255,255,0.1);border-radius:50%;transition:all var(--levo-transition)}
.levo-footer-social a:hover,.levo-footer-social a:focus{background:var(--levo-primary);transform:translateY(-2px)}
.levo-footer-social img{width:20px;height:20px;filter:brightness(0) invert(1)}
.levo-footer-copyright{color:rgba(255,255,255,0.7);font-size:.9rem;margin-bottom:.75rem}
.levo-footer-links{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.levo-footer-links a{color:rgba(255,255,255,0.7);text-decoration:none;font-size:.85rem;transition:color var(--levo-transition)}
.levo-footer-links a:hover,.levo-footer-links a:focus{color:var(--levo-white)}
@media(max-width:768px){.levo-header-inner{justify-content:center}.levo-logo-text{font-size:1.25rem}.levo-nav{justify-content:center}.levo-page-title h1{font-size:2rem}.levo-card-grid{grid-template-columns:1fr}}
@media(max-width:480px){.levo-nav a{padding:.4rem .75rem;font-size:.9rem}.levo-page-title h1{font-size:1.75rem}}