:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;background:#fafbfc;color:#222;margin:0;padding:0;line-height:1.7}.container{max-width:600px;margin:0 auto;padding:4rem 1.5rem 2rem;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start}header{margin-bottom:2.5rem;text-align:left}h1{font-size:2.2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-1px}nav{margin-top:.5rem}nav a{color:#555;text-decoration:none;margin-right:1.2rem;font-size:1rem;transition:color .2s}nav a:hover{color:#0070f3}nav.slider-nav{display:flex;gap:1.2rem;margin-top:.5rem;border-bottom:2px solid #eee;padding-bottom:.5rem}nav.slider-nav-bar{margin-top:.5rem}.slider-track{position:relative;display:flex;background:#f3f4f6;border-radius:2rem;box-shadow:0 1px 6px #3c3c3c0a;padding:.2rem;width:max-content;max-width:100%;overflow:hidden;margin-left:auto;margin-right:auto}.slider-thumb{position:absolute;top:0;left:0;height:100%;background:#e6f0fa;border-radius:2rem;box-shadow:0 2px 8px #0070f312;z-index:0;transition:left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);width:0}.slider-tab{background:none;border:none;color:#555;font-size:1rem;font-family:inherit;padding:.5rem 1.5rem;margin:0;cursor:pointer;border-radius:2rem;z-index:1;position:relative;transition:color .2s}.slider-tab.selected{color:#0070f3;font-weight:600}.slider-tab:focus{outline:none;color:#005bb5}.slider-content-outer{overflow:hidden;width:100%;min-height:180px;margin-top:2rem;box-sizing:border-box}.slider-content-inner{display:flex;transition:transform .5s cubic-bezier(.4,0,.2,1);width:100%}.slider-panel{flex:0 0 100%;min-width:0;box-sizing:border-box;padding:0 .5rem}.intro{margin-bottom:2rem;text-align:left;font-size:1.1rem}.about{margin-bottom:2rem;text-align:left}h2{font-size:1.15rem;font-weight:600;margin-bottom:.5rem}footer{text-align:left;color:#aaa;font-size:.95rem;margin-top:auto;padding-top:2rem}.contact-links{margin:.5rem 0 1.2rem;display:flex;gap:.7rem;align-items:center;font-size:1.05rem}.contact-links a{color:#0070f3;text-decoration:none;transition:color .2s}.contact-links a:hover{color:#005bb5;text-decoration:underline}.reviews-controls{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.review-filters{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.filter-checkbox{display:flex;align-items:center;gap:.4rem;font-size:.95rem;cursor:pointer}.filter-checkbox input{width:1rem;height:1rem;accent-color:#0070f3;cursor:pointer}.filter-actions{display:flex;flex-wrap:wrap;gap:.75rem}.filter-actions button{border:1px solid #d0d7de;background:#fff;border-radius:999px;padding:.25rem .9rem;font-size:.85rem;cursor:pointer;transition:background .2s ease,color .2s ease}.filter-actions button:hover:not(:disabled){background:#f0f6ff;color:#005bb5}.filter-actions button:disabled{opacity:.4;cursor:not-allowed}.reviews-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.review-card{position:relative;border-radius:1rem;overflow:hidden;aspect-ratio:3 / 4;display:block;text-decoration:none;color:inherit;box-shadow:0 8px 20px #0f172a14}.review-card img{width:100%;height:100%;object-fit:cover;display:block}.review-overlay{position:absolute;inset:0;background:#0a0c10d9;color:#fff;padding:1rem;display:flex;flex-direction:column;justify-content:flex-end;opacity:0;transition:opacity .3s ease}.review-card:hover .review-overlay,.review-card:focus-visible .review-overlay{opacity:1}.reviews-empty{color:#6b7280;font-size:.95rem;margin:1rem 0}.work-intro{margin-bottom:1.5rem}.work-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:1.5rem}.filter-toggle{margin-bottom:.75rem}.filter-toggle button{border:1px solid #d0d7de;background:#fff;border-radius:999px;padding:.25rem .9rem;font-size:.85rem;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease}.work-filter-toggle button:hover{background:#f0f6ff;color:#005bb5;border-color:#b3c6f6}.work-filter-helper{grid-column:1 / -1;margin:0 0 .25rem;font-size:.86rem;color:#6b7280}.work-filter-group h4{margin:0 0 .4rem;font-size:.95rem;font-weight:600;color:#374151}.work-filter-options{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.5rem}.work-grid{display:grid;gap:1rem}.work-card{display:block;text-decoration:none;color:inherit;border-radius:.9rem;padding:.9rem 1rem;border:1px solid #e5e7eb;background:#fff;box-shadow:0 6px 16px #0f172a08;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.work-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0f172a0f;border-color:#d1d5db}.work-card-header h3{margin:0 0 .15rem;font-size:1rem}.work-company{margin:0;font-size:.9rem;color:#6b7280}.work-summary{margin:.5rem 0 .6rem;font-size:.92rem;color:#4b5563}.work-meta{display:flex;flex-wrap:wrap;gap:.4rem}.work-pill{font-size:.8rem;padding:.15rem .6rem;border-radius:999px;background:#e5f0ff;color:#1d4ed8}.work-pill.subtle{background:#f3f4f6;color:#4b5563}.review-type{text-transform:uppercase;font-size:.7rem;letter-spacing:.08em;margin:0 0 .2rem;color:#9fb7ff}.review-overlay h3{margin:0 0 .2rem;font-size:1rem}.review-blurb{font-size:.85rem;margin:.5rem 0 0;color:#d9e2ff}.review-stars{font-size:.95rem;color:#ffdd57}.star{opacity:.35}.star.filled{opacity:1}
