/* Shared pieces of the design boards: page wrapper and footer. */
.dz-page { font-size: 16px; line-height: normal; overflow-x: clip; }
.dz-page img { max-width: none; }
.dz-page .fw-crumbs { margin: 0; }
.dz-page [hidden] { display: none !important; }
.fw-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.dz-page .fw-notice { margin: 0 0 22px; }
.dz-page .fw-pagination { margin-top: 40px; }

/* Home hero art panels */
.dz-page [data-dz-art] { position: absolute; inset: 0; }

/* Footer */
.dz-foot { background: #08080A; border-top: 1px solid #1E1E22; margin-top: auto; font-size: 16px; line-height: normal; }
.dz-foot__wrap { max-width: 1280px; margin: 0 auto; padding: 80px 24px 0; box-sizing: border-box; }
.dz-foot__top { display: flex; flex-wrap: wrap; gap: 48px; justify-content: space-between; }
.dz-foot__brand { flex: 1 1 300px; max-width: 380px; }
.dz-foot__logo { font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: 26px; color: #F2F0EB; }
.dz-foot__logo span { color: #C8F560; }
.dz-foot__brand p { margin: 18px 0 0; color: #A9A69E; font-size: 18px; line-height: 1.7; }
.dz-foot__mail { display: inline-block; margin-top: 22px; font-weight: 700; color: #C8F560; }
.dz-foot__mail:hover { color: #C8F560; text-decoration: underline; }
.dz-foot__cols { flex: 2 1 520px; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 32px; }
.dz-foot__col { display: flex; flex-direction: column; gap: 12px; font-size: 18px; }
.dz-foot__head { font-family: 'JetBrains Mono', monospace; font-size: 12px; letter-spacing: 2px; color: #8A877F; margin-bottom: 6px; }
.dz-foot__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.dz-foot__col a { color: #A9A69E; transition: color .2s; }
.dz-foot__col a:hover { color: #C8F560; }
.dz-foot__big { margin-top: 80px; padding-top: 20px; font-family: 'Bricolage Grotesque', sans-serif; font-weight: 800; font-size: clamp(48px, 10.5vw, 150px); letter-spacing: -4px; line-height: .85; color: #1C1C21; white-space: nowrap; overflow: hidden; }
.dz-let { display: inline-block; transition: transform .35s cubic-bezier(.2,.7,.2,1), color .35s; }
.dz-let::before { content: attr(data-l); }
.dz-let.is-dot { color: #C8F560; }
.dz-let:hover { transform: translateY(-18px) rotate(-4deg); color: #C8F560; }
.dz-foot__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding: 28px 0 36px; border-top: 1px solid #1E1E22; margin-top: 24px; font-size: 13px; color: #8A877F; }
@media (prefers-reduced-motion: reduce) { .dz-let { transition: none; } }
