.projects-page .projects-main{max-width:1280px;width:calc(100% - 64px);margin:0 auto;padding:24px 0 80px;color:var(--site-text,#17151d);font-family:'Outfit',sans-serif}
.projects-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:13px;color:var(--site-muted);margin-bottom:44px}.projects-breadcrumb a{color:inherit}.projects-breadcrumb a:hover{color:var(--site-primary)}
.projects-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;padding:0 0 44px;border-bottom:1px solid var(--site-border);margin-bottom:32px}.projects-eyebrow{display:block;color:var(--site-primary);font-size:11px;font-weight:600;letter-spacing:1.8px;margin-bottom:16px}.projects-intro h1{font-size:clamp(38px,4.6vw,64px);font-weight:700;line-height:1.12;letter-spacing:-2px;margin:0 0 22px;color:var(--site-text)}.projects-intro h1 em{font-style:normal;color:var(--site-primary)}.projects-intro p{font-size:17px;line-height:1.8;max-width:620px;margin:0;color:var(--site-muted)}
.projects-contact-link{display:inline-flex;align-items:center;justify-content:center;gap:24px;flex:none;max-width:100%;padding:15px 21px;background:var(--site-primary);color:#fff;border-radius:30px;font-size:15px;font-weight:600;text-decoration:none;min-height:48px}.projects-contact-link:hover{color:#fff;filter:brightness(.95)}.projects-main svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.projects-library-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.projects-library-heading h2{font-size:23px;font-weight:600;letter-spacing:-.5px;margin:0}.projects-library-heading>span{font-size:13px;padding:7px 12px;border:1px solid var(--site-border);border-radius:20px;color:var(--site-muted)}
.projects-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.portfolio-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--site-border);border-radius:20px;background:var(--site-page);color:var(--site-text);text-decoration:none;transition:box-shadow .2s,border-color .2s}.portfolio-card:hover{color:var(--site-text);border-color:var(--site-primary);box-shadow:0 12px 32px #17151d0b}.portfolio-card:focus-visible{outline:3px solid var(--site-primary);outline-offset:5px}
.portfolio-cover{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--site-surface)}.portfolio-cover>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.portfolio-card:hover .portfolio-cover>img{transform:scale(1.025)}.portfolio-open{position:absolute;bottom:20px;right:20px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--site-page);color:var(--site-text);border:1px solid var(--site-border)}
.portfolio-cover.is-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:32px;text-align:center;background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--site-primary) 12%,transparent),transparent 65%),var(--site-surface)}.portfolio-placeholder-name{font-size:clamp(24px,3vw,40px);font-weight:600;letter-spacing:-1px;overflow-wrap:anywhere}.portfolio-placeholder-caption{font-size:10px;letter-spacing:2px;color:var(--site-muted)}
.portfolio-body{padding:20px;display:flex;flex-direction:column;flex:1;min-width:0}.portfolio-brand{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;color:var(--site-muted);margin-bottom:18px;min-width:0}.portfolio-brand>span{overflow-wrap:anywhere}.portfolio-brand img{width:30px;height:30px;object-fit:contain;border:1px solid var(--site-border);border-radius:6px;background:#fff}.portfolio-brand time{margin-left:auto;white-space:nowrap;font-size:12px}.portfolio-body h3{font-size:22px;font-weight:600;line-height:1.35;letter-spacing:-.6px;color:var(--site-text);margin:0 0 13px;overflow-wrap:anywhere}.portfolio-body>p{font-size:15px;line-height:1.8;color:var(--site-muted);margin:0 0 20px;overflow-wrap:anywhere}.portfolio-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.portfolio-meta>span{padding:6px 10px;border:1px solid var(--site-border);border-radius:7px;font-size:12px;color:var(--site-muted)}.portfolio-card-link{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--site-border);padding-top:19px;margin-top:auto;font-size:14px;font-weight:600;color:var(--site-primary)}
.projects-callout{display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--site-surface);border:1px solid var(--site-border);border-radius:20px;padding:36px;margin-top:44px}.projects-callout h2{font-size:32px;letter-spacing:-.8px;line-height:1.2;margin:0 0 14px;font-weight:600}.projects-callout p{font-size:16px;line-height:1.7;margin:0;color:var(--site-muted)}.projects-empty{padding:50px 28px;text-align:center;background:var(--site-surface);border:1px solid var(--site-border);border-radius:16px}.projects-empty h2{font-size:25px}.projects-empty p{color:var(--site-muted);margin-bottom:25px}
@media(min-width:761px) and (max-width:1099px){.projects-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.projects-page .projects-main{width:calc(100% - 36px);padding:20px 0 50px}.projects-breadcrumb{margin-bottom:30px}.projects-intro{flex-direction:column;align-items:flex-start;gap:25px;padding-bottom:30px;margin-bottom:25px}.projects-intro h1{font-size:40px;letter-spacing:-1.2px;line-height:1.15}.projects-intro p{font-size:16px}.projects-library-grid{grid-template-columns:minmax(0,1fr);gap:22px}.portfolio-body{padding:23px}.portfolio-body h3{font-size:24px}.portfolio-brand time{white-space:normal;text-align:right}.portfolio-cover.is-placeholder{padding:26px}.projects-callout{padding:26px;flex-direction:column;align-items:flex-start;gap:23px;margin-top:30px}.projects-callout h2{font-size:28px}.projects-contact-link{font-size:14px;gap:20px}.projects-eyebrow{font-size:10px;letter-spacing:1.5px}}
@media(max-width:350px){.projects-intro h1{font-size:34px}.portfolio-body{padding:20px}.portfolio-body h3{font-size:22px}.projects-callout{padding:23px}}
@media(prefers-reduced-motion:reduce){.portfolio-card,.portfolio-cover>img{transition:none}}
