/* Contact: brief guidance beside the form, company details below. */
.studio-site .contact-page { padding-bottom: 2.5rem; }
.studio-site .contact-page .contact-heading { margin-bottom: clamp(2rem, 4vw, 3.5rem); }
.studio-site .contact-page .contact-heading h1 { margin: 0; max-width: 18ch; font-family: "Bebas Neue", sans-serif; font-size: clamp(2.75rem, 5.7vw, 5.1rem); font-weight: 400; letter-spacing: -.01em; line-height: .98; }
.studio-site .contact-page .contact-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "details form" "addresses addresses"; grid-template-rows: auto auto; gap: 2.75rem clamp(2rem, 6vw, 6rem); }
.studio-site .contact-page .contact-details { gap: .5rem; }
.studio-site .contact-page .contact-person { margin: 0 0 .35rem; color: #bbb; }
.studio-site .contact-page .contact-details > a { font-size: clamp(1.4rem, 2.5vw, 2.25rem); line-height: 1.3; }
.studio-site .contact-page .contact-guide { margin-top: 1.7rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.studio-site .contact-page .contact-guide .service-kicker { margin: 0 0 .5rem; color: var(--orange); font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; }
.studio-site .contact-page .contact-guide h2 { margin: .35rem 0 1rem; font-family: "Bebas Neue", sans-serif; font-size: clamp(1.8rem, 2.8vw, 2.5rem); font-weight: 400; line-height: 1.05; letter-spacing: 0; }
.studio-site .contact-page .contact-guide-list { display: grid; gap: .6rem; margin: 0; padding-left: 1.2rem; color: #ccc; line-height: 1.55; }
.studio-site .contact-page .contact-guide-list li::marker { color: var(--orange); }
.studio-site .contact-page .contact-guide-note { margin: 1.15rem 0 0; color: #fff; line-height: 1.6; }
.studio-site .contact-page .contact-guide-inspiration { margin: .8rem 0 0; color: #aaa; font-size: .9rem; line-height: 1.65; }
.studio-site .contact-page .contact-guide-inspiration a { font-size: inherit; text-decoration: underline; text-decoration-color: var(--orange); text-underline-offset: .2em; }
.studio-site .contact-page .contact-form { min-width: 0; gap: 1rem; padding-top: 1rem; scroll-margin-top: 7rem; }
.studio-site .contact-page .contact-form-title { margin: 0 0 .25rem; }
.studio-site .contact-page .contact-form textarea { min-height: 8rem; }
.studio-site .contact-page .submit-button { border-radius: 20px; justify-self: start; min-width: 14rem; }
.studio-site .contact-page .form-status:empty { display: none; }
.studio-site .contact-page .contact-addresses { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--line); font-size: .875rem; }
.studio-site .contact-page .contact-addresses h3 { margin: 0 0 .75rem; font-size: .875rem; }
.studio-site .contact-page .contact-addresses address, .studio-site .contact-page .contact-addresses p { color: #999; }
@media (max-width: 800px) {
  .studio-site .contact-page .contact-layout { grid-template-columns: minmax(0, 1fr); grid-template-areas: "details" "form" "addresses"; gap: 2rem; }
  .studio-site .contact-page .contact-heading { margin-bottom: 1.75rem; }
  .studio-site .contact-page .contact-guide { margin-top: 1rem; padding-top: 1.15rem; }
}
@media (max-width: 480px) {
  .studio-site .contact-page .contact-addresses { grid-template-columns: 1fr; gap: 1.25rem; }
  .studio-site .contact-page .submit-button { width: 100%; }
}
