/* Revision 4: one six-folder fan and a compact, single-column enquiry. */
.project-deck { --fan-step:clamp(0px,calc((100vw - 400px) / 5),170px); }
.project-deck .project-file {
  --fan-center:calc(var(--fan-index) - 2.5);
  --x:calc(var(--fan-center) * 44px);
  --y:calc(var(--fan-center) * var(--fan-center) * 3px);
  --r:calc(var(--fan-center) * 3deg);
  z-index:calc(var(--fan-index) + 1);
}
.file-fea { --folder:var(--folder-a); }
.file-bim { --folder:var(--folder-c); }
.project-deck:is(:hover,:focus-within,.is-spread) .project-file {
  --x:calc(var(--fan-center) * var(--fan-step));
  --y:calc(var(--fan-center) * var(--fan-center) * 2px);
  --r:calc(var(--fan-center) * 2deg);
}
.project-deck .project-file:is(:hover,:focus-visible) { z-index:20; }
.file-tab { font-size:.7rem; }
.file-meta { font-size:.65rem; flex-wrap:wrap; }
.file-drawing { position:relative; overflow:hidden; }
.file-drawing .folder-cover { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; opacity:0; }
.file-drawing.has-cover .folder-cover { opacity:1; }
.file-drawing.has-cover > svg { visibility:hidden; }
.form { grid-template-columns:minmax(0,1fr); padding:20px; gap:12px; align-content:start; }
.form > .field { grid-column:1/-1; }
.form > .enquiry-note { margin:0 0 2px; }
.form .field label { font-size:.8125rem; }
.form .field input { min-height:44px; padding-block:6px; }
.form .field textarea { min-height:80px; padding-block:6px; }
.form .field :is(input,textarea) { font-size:16px; }
.form > button { min-height:48px; padding-block:12px; }
.gallery-slide img { aspect-ratio:16/10; }
@media (min-width:961px) {
  .contact-grid { align-items:stretch; }
  .contact-info { justify-content:space-between; gap:24px; }
}
@media (max-width:720px) {
  .project-deck .project-file,
  .project-deck:is(:hover,:focus-within,.is-spread) .project-file { translate:none; rotate:none; }
  .file-paper > p { display:block; -webkit-line-clamp:unset; }
  .file-paper { min-height:310px; }
}

/* Form delivery feedback; the existing form geometry stays unchanged. */
.form-honeypot { display:none; }
.form > button:disabled { cursor:wait; opacity:.7; }
.form-status[data-state="error"] { color:var(--ink); font-family:var(--font-body); font-size:.875rem; }
.form-status[data-state="success"] { color:var(--ink); font-family:var(--font-body); font-size:.875rem; }
