/* ==========================================================================
   Contatti — masthead, form + info, store locator, new collabs
   ========================================================================== */

.nf-contact__main {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: clamp(40px, 6vw, 88px);
    padding-bottom: clamp(64px, 9vw, 120px);
}
.nf-contact__info { display: flex; flex-direction: column; gap: 32px; padding-top: 4px; }
.nf-contact__info-lead { font-size: clamp(15px, 1.4vw, 16.5px); line-height: 1.7; color: var(--nf-body); margin: 0; max-width: 34ch; }
.nf-contact__info-lead strong { font-weight: 700; color: var(--nf-ink); }
.nf-contact__info-block .nf-over { margin-bottom: 8px; }
.nf-contact__info-block a { font-size: 16px; }
.nf-contact__info-block p { font-size: 15px; line-height: 1.6; color: var(--nf-body); margin: 0; max-width: 32ch; }

@media (max-width: 900px) { .nf-contact__main { grid-template-columns: 1fr; } }

/* CONCEPT STORE */
.nf-contact__stores { background: var(--nf-cream-1); padding: clamp(64px, 9vw, 120px) 0; }
.nf-contact__stores-head { max-width: 640px; margin-bottom: clamp(40px, 6vw, 64px); }
.nf-contact__stores-head h2 { font-family: var(--nf-serif); font-weight: 400; font-size: clamp(2rem, 3.8vw, 3rem); margin: 0 0 18px; }
.nf-contact__stores-head p { font-size: 15.5px; line-height: 1.7; color: var(--nf-body); margin: 0; }

.nf-contact__stores-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: clamp(28px, 4vw, 56px); }
.nf-contact__store-media { aspect-ratio: 4 / 3; margin-bottom: 20px; overflow: hidden; box-shadow: inset 0 0 0 1px var(--nf-hairline); }
.nf-contact__store-media img { width: 100%; height: 100%; object-fit: cover; }
.nf-contact__store h3 { font-family: var(--nf-serif); font-weight: 400; font-size: 1.7rem; margin: 0 0 6px; }
.nf-contact__store-loc { font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--nf-muted); margin-bottom: 10px; }
.nf-contact__store p { font-size: 14.5px; color: var(--nf-body); margin: 0 0 14px; }
.nf-contact__store-cta { font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; border-bottom: 1px solid var(--nf-ink); padding-bottom: 3px; }

@media (max-width: 700px) { .nf-contact__stores-grid { grid-template-columns: 1fr; } }

/* NEW COLLABS */
.nf-contact__collabs { background: var(--nf-ink); color: var(--nf-light); padding: clamp(72px, 11vw, 148px) 28px; text-align: center; border-bottom: 1px solid rgba(243, 240, 234, 0.14); }
.nf-contact__collabs-inner { max-width: 760px; margin: 0 auto; }
.nf-contact__collabs-over { color: rgba(243, 240, 234, 0.55); margin-bottom: 28px; }
.nf-contact__collabs-quote { font-family: var(--nf-serif); font-weight: 400; font-size: clamp(1.8rem, 3.6vw, 2.6rem); line-height: 1.3; margin: 0 0 20px; text-wrap: balance; }
.nf-contact__collabs-sub { font-size: 15px; line-height: 1.6; color: rgba(243, 240, 234, 0.7); margin: 0 0 36px; }
