
/* contact v9 (17 Oct night): a statement, then the details as type (no cards, no badges), then one calm form */
.chead { padding: calc(var(--nav-h) + var(--s-2xl)) 0 var(--s-xl); text-align: center; }
.chead .inner { display: grid; justify-items: center; gap: var(--s-s); }
.chead .t-subtitle { max-width: 26em; }
/* 19 Oct round 4: details and form merged into one gold block; details left between drawn hairlines, form right, swirl watermark drifting behind */
.cblock { position: relative; overflow: hidden; padding-block: var(--s-2xl); }
.cblock > .watermark { width: min(64vw, 1100px); left: -22%; top: 50%; translate: 0 -50%; color: rgba(40, 28, 10, .2); animation: wmturn 90s linear infinite; }
@keyframes wmturn { to { rotate: 360deg; } }
.cblock .inner { position: relative; z-index: 1; width: var(--shell); display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(40px, 7vw, 140px); align-items: center; }
.cdet { display: grid; }
.cdet .rule { height: 1px; background: rgba(255, 255, 255, .45); }
.crow { display: grid; gap: var(--s-xs); padding-block: var(--s-m); }
.crow h2 { font-size: var(--t-s); font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--white); }
.crow .big { font-size: var(--t-m); font-weight: 300; letter-spacing: -.015em; line-height: 1.35; }
.crow .big a { color: inherit; transition: color var(--d-move); }
.crow .big a:hover, .crow .big a:focus-visible { color: var(--gold-100); outline: none; }
.crow .btns { margin-top: var(--s-2xs); }
.hours2 { display: grid; }
.hours2 p { display: flex; justify-content: space-between; gap: var(--s-s); padding-block: .5em; font-size: var(--t-xs); }
.hours2 p + p { border-top: 1px solid rgba(255, 255, 255, .22); }
.hours2 b { font-weight: 500; }
.hours2 span { font-weight: 400; font-variant-numeric: tabular-nums; }
.cform { display: grid; gap: var(--s-m); }
.cform .t-small { max-width: 34em; }
.cform .gform { padding: 0; box-shadow: none; border-radius: 0; }
.cform .row2 { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-s); }
.cform .gform .field input, .cform .gform .field textarea, .cform .gform .field select { background: rgba(40, 28, 10, .18); border-color: rgba(255, 255, 255, .42); }
.cform .note { min-height: 1.5em; }
@media (max-width: 1024px) { .cblock .inner { grid-template-columns: 1fr; } .cblock > .watermark { width: 120vw; left: -40%; top: 18%; } }
@media (max-width: 640px) { .cform .row2 { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .cblock > .watermark { animation: none; } }
/* 19 Oct round 3: life on Contact: four short films as the hero tiles */
.phead .media.tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; background: #1A1F25; }
.phead .media.tiles .tile { overflow: hidden; }
.phead .media.tiles video { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 767px) { .phead .media.tiles { grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; } }
/* words over bright film tiles need a deeper foot */
.phead:has(.tiles)::after { background: linear-gradient(180deg, rgba(10, 12, 15, .5) 0%, rgba(10, 12, 15, .1) 22%, rgba(14, 17, 20, .55) 45%, rgba(22, 26, 31, .9) 66%, #1A1F25 88%); }
.phead:has(.tiles) .t-subtitle { font-weight: 400; }
