/* Individual-project entry and shared adaptive contact presentation. */
.zavel-bespoke { background: var(--zavel-paper-soft); border-block: 1px solid var(--zavel-line); padding: clamp(2rem, 5vw, 5.5rem) var(--zavel-page-inset) 0; scroll-margin-top: calc(var(--zavel-anchor-reserve) + 1rem); }
.zavel-bespoke-inner { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr); align-items: center; gap: clamp(2rem, 5vw, 6rem); }
.zavel-bespoke-copy { padding-block: 2rem; }
.zavel-bespoke-copy .zavel-micro-label { color: var(--zavel-clay-deep); margin: 0 0 1.75rem; }
.zavel-bespoke h2 { font-family: var(--wp--preset--font-family--serif); font-size: clamp(2.8rem, 5.5vw, 5.75rem); font-weight: 400; letter-spacing: -0.04em; line-height: 1.04; margin: 0 0 1.75rem; }
.zavel-bespoke-lead { color: var(--zavel-charcoal-soft); font-size: clamp(1rem, 1.25vw, 1.2rem); line-height: 1.7; max-width: 37ch; margin: 0 0 2rem; }
.zavel-bespoke-action { display: inline-flex; align-items: center; justify-content: space-between; gap: 2.5rem; min-height: 3.5rem; padding: 1rem 1.6rem; background: var(--zavel-charcoal); color: var(--zavel-paper); font-family: var(--wp--preset--font-family--sans); font-size: 0.9rem; font-weight: 600; text-decoration: none; max-width: 100%; }
.zavel-bespoke-action:hover { background: var(--zavel-charcoal-soft); color: var(--zavel-paper); }
.zavel-bespoke-action span { font-size: 1.4rem; font-weight: 400; }
.zavel-bespoke-note { font-size: 0.85rem; color: var(--zavel-charcoal-soft); margin: 1rem 0 0; }
.zavel-bespoke-drawing { margin: 0; min-width: 0; }
.zavel-bespoke-drawing img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; }
.zavel-bespoke-drawing figcaption { font-size: 0.75rem; color: var(--zavel-charcoal-soft); margin-top: 1rem; letter-spacing: 0.06em; }
.zavel-bespoke-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; padding: 1.75rem 0; margin: 3rem 0 0; border-top: 1px solid var(--zavel-line); gap: 1.5rem; }
.zavel-bespoke-process li { display: flex; align-items: baseline; gap: 1rem; font-size: 0.9rem; color: var(--zavel-charcoal-soft); }
.zavel-bespoke-process span { color: var(--zavel-clay-deep); font-size: 0.75rem; }
.zavel-bespoke-back { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: 0.85rem; margin-bottom: 1.5rem; text-decoration: none; }
body #project-form { scroll-margin-top: calc(var(--zavel-anchor-reserve) + 1.5rem); }
.zavel-contact [hidden] { display: none !important; }
.zavel-contact [data-collection-mode="nocturne"],
[data-theme="nocturne"] .zavel-contact [data-collection-mode="gallery"] { display: none; }
[data-theme="nocturne"] .zavel-contact [data-collection-mode="nocturne"] { display: block; }
body .zavel-contact-fields select { width: 100%; min-width: 0; min-height: 3rem; padding: 0.8rem; border: 1px solid var(--zavel-line); border-radius: 0; background: var(--zavel-paper-soft); color: var(--zavel-charcoal); font: inherit; font-size: 1rem; }
body .zavel-contact-details legend [data-project-legend] { font: inherit; color: inherit; letter-spacing: inherit; }
body .zavel-contact-feedback:not(:empty) { margin-top: 1.5rem; border-left: 2px solid var(--zavel-clay-deep); padding: 1rem; background: var(--zavel-paper-soft); }
@media (max-width: 800px) {
  .zavel-bespoke-inner { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .zavel-bespoke-copy { padding-block: 0; }
  .zavel-bespoke-process { grid-template-columns: minmax(0, 1fr); gap: 1rem; margin-top: 2rem; }
  .zavel-bespoke h2 { font-size: clamp(2.5rem, 8vw, 4rem); }
}
