/* Softlancer Core — showcase, jobs and headshot styles (light theme, brand tokens with fallbacks). */
:root{--slc-primary:var(--primary,#2f74a6);--slc-navy:var(--navy,#14304f);--slc-muted:var(--muted-foreground,#5d6b7c);--slc-border:var(--border,#e2e8f0);--slc-card:var(--card,#fff);--slc-accent:var(--accent,#e7f1f9);--slc-tint:var(--brand-tint,#f2f8fc)}
.slc-body{margin-top:2.5rem}
.slc-muted{color:var(--slc-muted)}
.slc-small{font-size:.75rem;margin-top:.5rem}
.slc-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--slc-border);border-radius:999px;padding:.6rem 1.25rem;font-weight:600;font-size:.9rem;color:var(--slc-navy);background:var(--slc-card);text-decoration:none;transition:all .2s}
.slc-btn:hover{border-color:var(--slc-primary);color:var(--slc-primary)}
.slc-btn--primary{background:var(--slc-primary);border-color:var(--slc-primary);color:#fff}
.slc-btn--primary:hover{filter:brightness(1.08);color:#fff}
.slc-btn--block{width:100%;margin-top:1.5rem}
.slc-avatar{display:inline-flex;align-items:flex-end;justify-content:center;overflow:hidden;border-radius:999px;background:linear-gradient(var(--slc-accent),var(--slc-tint));box-shadow:0 0 0 2px var(--slc-border);width:3rem;height:3rem;flex-shrink:0}
.slc-interpreters .slc-avatar img,.slc-avatar img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.slc-avatar--empty svg{width:80%;height:80%;color:color-mix(in srgb,var(--slc-primary) 35%,transparent);transform:translateY(10%)}
.slc-avatar--lg{width:4rem;height:4rem;box-shadow:0 0 0 2px color-mix(in srgb,var(--slc-primary) 30%,transparent)}
.slc-fill{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.slc-clients{position:relative;border:1px solid var(--slc-border);border-radius:2rem;background:var(--slc-card);padding:1.5rem;box-shadow:0 10px 30px -18px rgba(20,48,79,.25)}
@media(min-width:640px){.slc-clients{padding:2.5rem}}
.slc-client{display:grid;gap:2rem;align-items:center;margin:0;animation:slcFade .5s ease}
@media(min-width:768px){.slc-client{grid-template-columns:8rem minmax(0,1fr)}}
.slc-client__media{display:flex;align-items:center;gap:1.25rem}@media(min-width:768px){.slc-client__media{flex-direction:column;padding-top:.75rem}}
.slc-clients .slc-client__photo{display:block;width:6rem;height:6rem;aspect-ratio:1;flex-shrink:0;object-fit:cover;border-radius:50%;box-shadow:0 0 0 2px var(--slc-border)}
@media(min-width:768px){.slc-clients .slc-client__photo{width:7rem;height:7rem}}
.slc-clients .slc-client__photo.slc-avatar{height:6rem;border-radius:50%}
@media(min-width:768px){.slc-clients .slc-client__photo.slc-avatar{height:7rem}}
.slc-client__logo{display:flex;align-items:center;justify-content:center;width:6rem;height:3rem;padding:.6rem;border:1px solid var(--slc-border);border-radius:.5rem;background:var(--slc-card);flex-shrink:0}
.slc-client__logo img{max-width:100%;max-height:100%;object-fit:contain}
.slc-quote{display:block;font-size:3.5rem;line-height:1;color:color-mix(in srgb,var(--slc-primary) 35%,transparent);font-family:Georgia,serif}
.slc-client blockquote{margin:.25rem 0 0;color:var(--slc-navy);font-size:1.05rem;line-height:1.7}
.slc-client figcaption{margin-top:1.5rem}
.slc-client figcaption b{display:block;color:var(--slc-navy)}
.slc-client figcaption span{font-size:.875rem;color:var(--slc-muted)}
.slc-ratings{display:grid;gap:.5rem;margin-top:1.25rem}
@media(min-width:640px){.slc-ratings{grid-template-columns:1fr 1fr}}
.slc-rating{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem .75rem;border-radius:.75rem;background:var(--slc-tint);font-size:.75rem;font-weight:600;color:var(--slc-navy)}
.slc-stars i{font-style:normal;color:var(--slc-border)}
.slc-stars i.on{color:var(--slc-primary)}
.slc-stars b{margin-left:.35rem}
.slc-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.5rem;flex-wrap:wrap}
.slc-logos{display:flex;gap:.75rem;flex-wrap:wrap}
.slc-logos button{display:flex;align-items:center;justify-content:center;width:6rem;height:2.75rem;padding:.4rem;border:1px solid var(--slc-border);border-radius:.75rem;background:var(--slc-card);cursor:pointer;opacity:.6;filter:grayscale(1);transition:all .2s}
.slc-logos button img{max-width:100%;max-height:100%;object-fit:contain}
.slc-logos button[aria-current="true"],.slc-logos button:hover{opacity:1;filter:none;border-color:var(--slc-primary)}
.slc-arrows{display:flex;gap:.5rem}
.slc-arrows button{width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid var(--slc-border);background:var(--slc-card);color:var(--slc-navy);font-size:1.4rem;line-height:1;cursor:pointer}
.slc-arrows button:hover{border-color:var(--slc-primary);color:var(--slc-primary)}
.slc-dots{display:flex;gap:.4rem;flex-wrap:wrap}
.slc-dots button{width:.5rem;height:.5rem;border-radius:999px;border:0;background:var(--slc-border);cursor:pointer;transition:all .2s;padding:0}
.slc-dots button[aria-current="true"]{width:1.5rem;background:var(--slc-primary)}
.slc-grid3{display:grid;gap:1.25rem;animation:slcFade .5s ease}
@media(min-width:768px){.slc-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.slc-card{border:1px solid var(--slc-border);border-radius:1.25rem;background:var(--slc-card);padding:1.5rem;transition:transform .25s,box-shadow .25s;box-shadow:0 6px 20px -14px rgba(20,48,79,.25);display:flex;flex-direction:column}
.slc-card__head{display:flex;align-items:flex-start;gap:1rem}.slc-card__head>div{min-width:0;overflow-wrap:anywhere}
.slc-card h3{margin:0;font-size:1rem;font-weight:700;color:var(--slc-navy)}
.slc-card blockquote{margin:1rem 0 0;font-size:.875rem;line-height:1.65;color:var(--slc-muted);}
.slc-pill{display:inline-block;margin-top:.25rem;border-radius:.5rem;background:var(--slc-accent);color:var(--slc-primary);font-size:.75rem;font-weight:600;padding:.25rem .6rem;line-height:1.6}
.slc-mosaic{display:grid;grid-template-columns:repeat(6,1fr);gap:.75rem;list-style:none;padding:0;margin:2rem 0 0}
@media(min-width:640px){.slc-mosaic{grid-template-columns:repeat(8,1fr)}}
.slc-mosaic .slc-avatar{width:100%;height:auto;aspect-ratio:1}
.slc-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--slc-primary);margin:0 0 .35rem}
.slc-tags{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;padding:0;margin:1rem 0 0}
.slc-tags li{border-radius:999px;background:var(--slc-tint);padding:.2rem .6rem;font-size:.75rem;color:var(--slc-navy)}
.slc-link{margin-top:auto;padding-top:1.25rem;font-weight:600;font-size:.875rem;color:var(--slc-primary);text-decoration:none}
.slc-empty{border:1px dashed color-mix(in srgb,var(--slc-primary) 25%,transparent);border-radius:1.5rem;background:var(--slc-card);padding:2rem;text-align:center}
.slc-filters{display:grid;gap:1rem;border:1px solid var(--slc-border);border-radius:1.25rem;background:var(--slc-card);padding:1.5rem;margin-bottom:1.5rem}
@media(min-width:768px){.slc-filters{grid-template-columns:2fr 1fr 1fr 1fr}}
.slc-filters label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--slc-navy)}
.slc-filters input,.slc-filters select{border:1px solid var(--slc-border);border-radius:.75rem;padding:.6rem .8rem;font:inherit;font-weight:400;background:#fff}
.slc-closed{display:inline-block;border-radius:1rem;border:1px solid var(--slc-border);background:var(--slc-tint);padding:.8rem 1.1rem;font-weight:600;color:var(--slc-navy)}
.slc-job-layout{display:grid;gap:2.5rem}
@media(min-width:1024px){.slc-job-layout{grid-template-columns:1.6fr 1fr;align-items:start}}
.slc-prose h2{font-size:1.25rem;font-weight:800;color:var(--slc-navy);margin:2rem 0 .75rem}
.slc-prose h2:first-child{margin-top:0}
.slc-prose ul{padding-left:1.2rem;list-style:disc;color:var(--slc-muted);line-height:1.7}
.slc-prose p{color:var(--slc-muted);line-height:1.7}
.slc-h3{font-size:1rem;font-weight:800;color:var(--slc-navy);margin:0}
.slc-facts{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:1rem 0 0;font-size:.875rem}
.slc-facts dt{font-weight:600;color:var(--slc-navy)}
.slc-facts dd{margin:0;color:var(--slc-muted)}
@keyframes slcFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.slc-client,.slc-grid3{animation:none}}

.slc-client[hidden],.slc-grid3[hidden]{display:none!important}
@media(prefers-reduced-motion:no-preference){.slc-card:hover{transform:translateY(-4px)}.slc-reveal{opacity:0;transform:translateY(10px);transition:opacity .6s,transform .6s}.slc-reveal.is-visible{opacity:1;transform:none}}
