.contact-page { background:#f4f7fa; }.contact-main { padding-top:78px; }.contact-intro { padding:clamp(4rem,7vw,6.5rem) 0; }.contact-copy { position:sticky; top:120px; }.contact-copy h1 { font-size:clamp(2.6rem,5vw,4.5rem); }.contact-copy>p { max-width:500px; font-size:1.08rem; }.back-link { display:flex; align-items:center; gap:.5rem; color:#526376; font-size:.82rem; font-weight:600; }.back-link:hover { color:var(--blue); }.what-next { margin-top:3rem; padding:1.5rem; border:1px solid var(--line); border-radius:var(--radius); background:#fff; box-shadow:var(--shadow-sm); }.what-next>span { color:#708092; font-size:.68rem; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }.what-next ol { display:grid; gap:1.2rem; margin:1.4rem 0 0; padding:0; list-style:none; }.what-next li { display:grid; grid-template-columns:32px 1fr; gap:.85rem; }.what-next li>b { display:grid; width:30px; height:30px; place-items:center; color:var(--blue); border-radius:50%; background:#eaf2fc; font-size:.65rem; }.what-next strong,.what-next small { display:block; }.what-next strong { font-size:.82rem; }.what-next small { margin-top:.2rem; color:#7a8896; font-size:.7rem; }.contact-form { padding:clamp(1.25rem,4vw,2.5rem); border:1px solid var(--line); border-radius:var(--radius-lg); background:#fff; box-shadow:var(--shadow); }.form-progress { display:flex; justify-content:space-between; gap:1rem; padding-bottom:1.5rem; border-bottom:1px solid var(--line); }.form-progress span { font-weight:700; }.form-progress small { color:#7a8896; }.contact-form fieldset { margin:0; padding:2rem 0; border:0; border-bottom:1px solid var(--line); }.contact-form legend { display:flex; align-items:center; gap:.7rem; margin-bottom:1.35rem; font-size:1rem; font-weight:700; }.contact-form legend span { display:grid; width:30px; height:30px; place-items:center; color:var(--blue); border-radius:9px; background:#eaf2fc; font-size:.6rem; }.legend-help { margin:-.8rem 0 1rem 2.35rem; font-size:.75rem; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.15rem; }.form-field.full { grid-column:1/-1; }.form-field label { display:block; margin-bottom:.45rem; color:#344659; font-size:.73rem; font-weight:650; }.form-field label small { color:#8a98a5; font-weight:400; }.form-field input,.form-field select,.form-field textarea { width:100%; min-height:47px; padding:.7rem .85rem; color:var(--ink); border:1px solid #ccd7e1; border-radius:9px; outline:0; background:#fff; font:inherit; font-size:.85rem; transition:border-color .2s,box-shadow .2s; }.form-field textarea { min-height:140px; resize:vertical; }.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--blue); box-shadow:0 0 0 4px rgba(12,91,217,.1); }.form-field .is-invalid { border-color:var(--danger); box-shadow:0 0 0 3px rgba(212,87,76,.08); }.field-error { display:none; margin-top:.35rem; color:var(--danger); font-size:.68rem; }.is-invalid+.field-error,.is-invalid~.textarea-meta+.field-error { display:block; }.choice-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:.55rem; }.choice-grid label { cursor:pointer; }.choice-grid input { position:absolute; opacity:0; }.choice-grid span { display:flex; min-height:44px; align-items:center; padding:.65rem .8rem; color:#536476; border:1px solid #d5dfe7; border-radius:9px; font-size:.75rem; transition:.2s; }.choice-grid span::before { display:grid; width:18px; height:18px; place-items:center; margin-right:.6rem; content:""; border:1px solid #b9c7d3; border-radius:5px; font-size:.65rem; }.choice-grid input:checked+span { color:var(--blue); border-color:#9bbce6; background:#f2f7fd; }.choice-grid input:checked+span::before { color:#fff; border-color:var(--blue); background:var(--blue); content:"✓"; }.choice-grid input:focus-visible+span { outline:3px solid rgba(41,184,211,.7); }.textarea-meta { display:flex; justify-content:space-between; gap:1rem; margin-top:.4rem; color:#81909e; }.textarea-meta small:first-child { max-width:85%; }.file-note { display:flex; gap:.8rem; align-items:start; margin-top:1.2rem; padding:1rem; border-radius:10px; background:#f2f7fb; }.file-note span { color:var(--blue); }.file-note p { margin:0; font-size:.73rem; }.hp-field { position:absolute!important; left:-9999px!important; width:1px;height:1px;overflow:hidden; }.form-message { display:none; margin-top:1.5rem; padding:1rem; border-radius:10px; font-size:.82rem; }.form-message.success,.form-message.error { display:block; }.form-message.success { color:#116c54; border:1px solid #b8e4d6; background:#eaf8f3; }.form-message.error { color:#9e3d35; border:1px solid #efc3bf; background:#fdf0ef; }.form-submit { display:flex; align-items:center; justify-content:space-between; gap:2rem; padding-top:2rem; }.form-submit p { max-width:370px; margin:0; font-size:.68rem; }.form-submit p a { color:var(--blue); text-decoration:underline; }.form-submit button { min-width:190px; }.form-submit button[disabled] { cursor:wait; opacity:.7; }.simple-footer { padding:1.5rem 0; color:#8ea0af; background:var(--navy); font-size:.7rem; }.simple-footer .container { display:flex; justify-content:space-between; gap:1rem; }
@media(max-width:991.98px){ .contact-copy { position:static; }.contact-copy h1 { max-width:750px; }.what-next { max-width:650px; }.contact-intro { padding-top:3.5rem; } }
@media(max-width:575.98px){ .form-grid,.choice-grid { grid-template-columns:1fr; }.form-field.full { grid-column:auto; }.contact-form { padding:1.1rem; border-radius:16px; }.form-progress { flex-direction:column; }.contact-form fieldset { padding:1.5rem 0; }.form-submit { flex-direction:column; align-items:stretch; }.form-submit button { width:100%; }.simple-footer .container { flex-direction:column; } }
