.assets-main { width: 100%; align-items: stretch; justify-content: center; text-align: left; padding-block: clamp(2.5rem, 6vh, 4rem); }
.assets-intro { max-width: 48rem; }
.assets-eyebrow { margin: 0 0 1.25rem; font-size: .875rem; line-height: 1.5; color: var(--muted); }
.assets-main h1 { margin: 0 0 1.5rem; font: 400 clamp(2rem, 4vw, 2.75rem)/1.15 Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.assets-copy { margin: 0; font-size: 1rem; line-height: 1.8; color: #555; }
.assets-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; width: 100%; margin-top: 2.5rem; }
.assets-gallery figure { margin: 0; min-width: 0; }
.assets-gallery img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; filter: grayscale(1); }
#inquiry-inbox-link { min-height: 44px; align-items: center; font-size: .875rem; color: var(--muted); }
#inquiry-inbox-link:not([hidden]) { display: inline-flex; }
.asset-client-actions { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2.5rem; }
.asset-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; max-width: 100%; padding: .85rem 1.5rem; background: #fff; color: var(--ink); border: 1px solid #777; border-radius: 0; font: 400 .9375rem/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif; }
.asset-button:hover { border-color: var(--ink); }
.asset-button-primary { color: #fff; background: var(--ink); border-color: var(--ink); text-decoration-color: #aaa; }
.asset-button-primary:hover { text-decoration-color: #fff; }
.client-dialog p { margin: 1.25rem 0 .5rem; color: #555; font-size: 1rem; line-height: 1.75; }
body.client-dialog-open { overflow: hidden; }
@media (max-width: 700px) {
  .assets-main { padding-block: 2rem 2.5rem; }
  .assets-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; margin-top: 2rem; }
  .asset-client-actions { margin-top: 2rem; gap: .75rem; }
  .asset-button { flex: 1 1 12rem; }
}

.asset-project-status { align-self:center;text-align:center;margin:2rem 0 .25rem;font-size:.9375rem;line-height:1.6; }
.asset-project-status p { margin:.35rem 0; }
.asset-project-status p:first-child { display:flex;gap:.7rem;justify-content:center;align-items:center; }
.asset-project-status strong { font-weight:500; }
.project-dot { flex:none;width:7px;height:7px;border-radius:50%;background:#b72222;animation:project-pulse 2s ease-in-out infinite; }
@keyframes project-pulse { 50% { opacity:.2; } }
@media(prefers-reduced-motion:reduce) { .project-dot { animation:none; } }
