.projects-mosaic{--mosaic-ink:#8c7d70;width:100%;min-height:100vh;font-family:var(--font-barlow), Helvetica, sans-serif;background:#fff;padding:120px clamp(18px,3vw,40px) 80px}.projects-mosaic__title{color:var(--mosaic-ink);font-family:var(--font-quote), "Playfair Display", Georgia, serif;letter-spacing:.22em;text-transform:uppercase;margin:0 0 36px;font-size:clamp(28px,3.2vw,42px);font-weight:500;line-height:1}.projects-mosaic__empty{color:var(--mosaic-ink);margin:0;font-size:15px}.projects-mosaic__grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:150px;grid-auto-flow:dense;gap:18px;display:grid}.projects-mosaic__card{min-width:0;color:inherit;background:#d8cfc4;border-radius:16px;text-decoration:none;display:block;position:relative;overflow:hidden}.projects-mosaic__card--portrait,.projects-mosaic__card--square{grid-area:span 2/span 1}.projects-mosaic__card--wide{grid-area:span 2/span 2}.projects-mosaic__card--tall{grid-area:span 3/span 1}.projects-mosaic__img{object-fit:cover;object-position:center}.projects-mosaic__ph{background:#cfc4b6;position:absolute;inset:0}.projects-mosaic__meta{z-index:1;color:#fff;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 8px #00000059;flex-direction:column;gap:4px;max-width:80%;font-size:10px;font-weight:500;line-height:1.35;display:flex;position:absolute}.projects-mosaic__card--tl .projects-mosaic__meta{top:14px;left:14px}.projects-mosaic__card--bl .projects-mosaic__meta{bottom:14px;left:14px}.projects-mosaic__card--br .projects-mosaic__meta{text-align:right;bottom:14px;right:14px}@media (max-width:1100px){.projects-mosaic__grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:140px}}@media (max-width:720px){.projects-mosaic{padding:104px 16px 56px}.projects-mosaic__title{margin-bottom:24px;font-size:24px}.projects-mosaic__grid{grid-template-columns:1fr 1fr;grid-auto-rows:160px;gap:12px}.projects-mosaic__card--wide,.projects-mosaic__card--portrait,.projects-mosaic__card--square,.projects-mosaic__card--tall{grid-area:span 2/span 1}.projects-mosaic__card:nth-child(3n){grid-area:span 2/span 2}}
