#contact { position:relative; isolation:isolate; min-height:100svh; display:grid; align-content:space-between; background:#112943; color:#fffaf1; }
#contact > img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; }
#contact::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(to top,rgba(18,21,23,.85),rgba(18,21,23,.67) 38%,transparent 78%),linear-gradient(to left,rgba(11,25,45,.42),transparent 60%); }
#contact .contact-scene { display:flex; justify-content:flex-end; }
#contact .chapter-copy { width:min(48%,780px); padding:clamp(38px,6vh,80px) 6vw 0 2vw; }
#contact h2 { font:400 clamp(40px,4.6vw,84px)/1.06 'Poiret One',sans-serif; letter-spacing:-.025em; margin:0; text-wrap:balance; }
#contact p,#studio-footer p { margin:0; }
#contact .label { font-size:12px; letter-spacing:.24em; margin-bottom:24px; }
#contact .story { font-size:clamp(18px,1.55vw,23px); line-height:1.5; margin-top:22px; max-width:43ch; }
#contact .spread { width:100%; max-width:1520px; margin:auto; display:grid; grid-template-columns:minmax(0,45fr) minmax(0,55fr); gap:8%; padding:clamp(42px,5vw,84px) 7%; align-items:center; }
#contact .signature { border-top:1px solid #b3afa1; margin-top:36px; padding-top:24px; max-width:320px; }
#contact .signature span { display:block; font-size:27px; margin-bottom:6px; }
#contact .inquiry { display:grid; gap:22px; }
#contact .field { border-bottom:1px solid #ada99d; padding:0 0 15px; font-size:14px; letter-spacing:.13em; }
#contact .field:last-of-type { padding-bottom:35px; }
#contact .send { display:inline-block; padding:18px 25px; font-size:14px; letter-spacing:.14em; color:var(--ivory); background:var(--ink); }
#contact .notice { font-size:16px; color:#fffaf1; line-height:1.5; margin-top:14px; }
#studio-footer { position:static; display:block; padding:52px 7% 32px; background:#302f2b; color:var(--ivory); font:inherit; }
#studio-footer strong { display:block; font-size:clamp(26px,3vw,50px); font-weight:400; letter-spacing:.09em; }
#studio-footer .attribution { display:flex; justify-content:space-between; gap:18px; border-top:1px solid #77746a; margin-top:30px; padding-top:20px; font-size:15px; }
@media(max-width:760px) {
 #contact::before { background:linear-gradient(165deg,rgba(13,25,39,.67),rgba(17,23,28,.77)); }
 #contact .chapter-copy { width:100%; padding:46px 7% 28px; }
 #contact > img { object-position:46% center; }
 #contact .spread { display:block; padding:54px 7%; }
 #contact .inquiry { margin-top:48px; }
}
