.portfolio-hero{background:var(--c2c-raised)}.portfolio-hero,.portfolio-toolbar{border-bottom:1px solid var(--c2c-border)}.portfolio-toolbar{position:sticky;top:80px;z-index:25;padding:16px 0;background:color-mix(in srgb,var(--c2c-raised) 96%,transparent);backdrop-filter:blur(12px)}.portfolio-filters{display:grid;gap:10px}.portfolio-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;color:var(--c2c-body);font-size:.85rem}.portfolio-grid{display:grid;gap:22px}.portfolio-card{overflow:hidden}.portfolio-art{position:relative;min-height:240px;display:flex;align-items:flex-end;padding:22px;background:linear-gradient(145deg,#011e3d,#006493 65%,#00a2eb);color:#fff}.portfolio-card:nth-child(3n+2) .portfolio-art{background:linear-gradient(145deg,#10243a,#006a6a 65%,#30f2f2)}.portfolio-card:nth-child(3n+3) .portfolio-art{background:linear-gradient(145deg,#0b1a2b,#485f82 65%,#8dcdff)}.portfolio-art:before{position:absolute;inset:0;background-image:linear-gradient(rgb(255 255 255/6%) 1px,transparent 0),linear-gradient(90deg,rgb(255 255 255/6%) 1px,transparent 0);background-size:34px 34px;content:""}.portfolio-art span{position:relative;padding:5px 9px;border:1px solid rgb(255 255 255/40%);border-radius:999px;font-size:.7rem}.portfolio-card-body{padding:24px}.portfolio-card-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--c2c-muted);font-size:.72rem;font-weight:600}.portfolio-card h2{margin:12px 0 9px;font-size:1.3rem}.portfolio-card p{min-height:52px;color:var(--c2c-body);line-height:1.65}.card-action{display:inline-flex;align-items:center;gap:7px;color:var(--c2c-blue-deep);font-size:.85rem;font-weight:700}.project-hero{padding-bottom:72px;background:var(--c2c-raised);border-bottom:1px solid var(--c2c-border)}.project-title{max-width:900px;margin:30px 0 20px;font-size:clamp(2.4rem,5vw,4.3rem);line-height:1.08}.project-lead{max-width:760px;color:var(--c2c-body);font-size:1.15rem;line-height:1.7}.project-facts{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.project-fact{padding:10px 14px;border:1px solid var(--c2c-border);border-radius:6px;background:var(--c2c-alt)}.project-fact small{display:block;color:var(--c2c-muted);font-size:.65rem;text-transform:uppercase}.project-fact strong{font-size:.85rem}.project-cover{min-height:clamp(300px,48vw,620px);display:grid;place-items:center;margin-top:48px;overflow:hidden;border:1px solid var(--c2c-border);border-radius:8px;background:linear-gradient(145deg,#011e3d,#006493 62%,#00a2eb);color:#fff}.project-cover-inner{width:min(76%,780px);padding:30px;border:1px solid #4c7898;border-radius:8px;background:#0b1a2b;box-shadow:0 24px 70px rgb(0 0 0/28%)}.project-cover-inner span{color:#8dcdff;font-size:.75rem;font-weight:700;text-transform:uppercase}.project-cover-inner h2{margin:8px 0 0;color:#fff}.project-story{display:grid;gap:56px}.story-section{scroll-margin-top:120px}.story-section h2{margin:0 0 18px;font-size:1.8rem}.story-section p{white-space:pre-line;color:var(--c2c-body);font-size:1.05rem;line-height:1.82}.project-rail{height:-moz-max-content;height:max-content;padding:24px}.project-rail h2{margin-top:0;font-size:1rem}.project-rail dl{display:grid;gap:18px;margin:0}.project-rail dt{color:var(--c2c-muted);font-size:.68rem;font-weight:700;text-transform:uppercase}.project-rail dd{margin:4px 0 0}.outcome-callout{padding:28px;border-left:4px solid var(--c2c-blue);background:var(--c2c-alt)}@media(min-width:700px){.portfolio-filters{grid-template-columns:1.4fr repeat(3,1fr)}.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.portfolio-grid{grid-template-columns:repeat(3,1fr)}.project-layout{display:grid;grid-template-columns:1fr 300px;gap:72px}.project-rail{position:sticky;top:130px}}.project-gallery{margin-top:80px}.project-gallery-grid{display:grid;gap:20px;margin-top:32px}.project-gallery figure{margin:0;overflow:hidden;border:1px solid var(--c2c-border);border-radius:8px;background:var(--c2c-alt)}.project-gallery img{display:block;width:100%;aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover}.project-gallery figcaption{padding:12px 16px;color:var(--c2c-body);font-size:.85rem}@media(min-width:700px){.project-gallery-grid{grid-template-columns:repeat(2,1fr)}}