.mindset-note { max-width: 590px; margin: 60px 0 0 17%; padding: 20px 0 0 22px; border-left: 3px solid var(--orange); }
.mindset-note span { font: 10px var(--mono); letter-spacing: .1em; color: #66777b; }
.mindset-note p { margin: 9px 0 0; font-size: 15px; line-height: 1.75; color: #46575c; }
.contact-options { display: flex; flex-wrap: wrap; align-items: end; gap: 20px 28px; margin-top: 55px; }
.contact-options .email { margin-top: 0; }
.phone { color: var(--ink); font: 700 14px var(--mono); text-decoration: none; border-bottom: 1px solid var(--ink); padding-bottom: 5px; }
.contact-trigger, .form-submit { border: 0; color: var(--paper); background: var(--ink); padding: 15px 18px; font: 700 12px var(--sans); cursor: pointer; }
.contact-trigger span, .form-submit span { color: var(--lime); margin-left: 14px; font-size: 17px; }
.contact-modal { display: none; position: fixed; z-index: 50; inset: 0; align-items: center; justify-content: center; padding: 24px; }
.contact-modal.is-open { display: flex; }
.modal-backdrop { position: absolute; inset: 0; background: rgba(10, 23, 29, .69); backdrop-filter: blur(6px); }
.modal-panel { position: relative; z-index: 1; width: min(590px, 100%); max-height: calc(100vh - 48px); overflow: auto; background: var(--paper); padding: 45px; box-shadow: 18px 18px 0 var(--lime); }
.modal-close { position: absolute; top: 14px; right: 16px; border: 0; background: transparent; color: var(--ink); font-size: 30px; line-height: 1; cursor: pointer; }
.modal-panel h2 { margin: 0; font-size: clamp(36px, 5vw, 55px); letter-spacing: -.06em; line-height: 1; }
.modal-panel h2 em { font-family: var(--serif); font-weight: 600; }
.modal-intro { max-width: 420px; margin: 17px 0 27px; color: #526468; font-size: 13px; line-height: 1.65; }
#contact-form { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
#contact-form label { display: grid; gap: 7px; font: 10px var(--mono); letter-spacing: .06em; }
#contact-form label:nth-of-type(3), #contact-form label:nth-of-type(4), #contact-form label:nth-of-type(5), .form-submit { grid-column: 1 / -1; }
#contact-form input, #contact-form select { width: 100%; border: 1px solid #a6b2aa; border-radius: 0; background: #fffdf8; color: var(--ink); padding: 12px; font: 14px var(--sans); }
.form-submit { justify-self: start; margin-top: 7px; }
body.modal-open { overflow: hidden; }
@media (max-width: 800px) { .mindset-note { margin-left: 0; } .modal-panel { padding: 37px 24px 28px; } }
@media (max-width: 480px) { #contact-form { grid-template-columns: 1fr; } #contact-form label:nth-of-type(2) { grid-column: 1 / -1; } .contact-options { align-items: start; flex-direction: column; } }
