.contact-page{background-color:var(--color-white);min-height:100vh;color:var(--color-black);flex-direction:column;display:flex}.contact-container{flex:1;max-width:1100px;margin:0 auto;padding:10px 5% 60px}.contact-header{text-align:center;margin-bottom:48px}.contact-header h1{color:var(--color-black);margin:0 0 12px;font-size:48px;font-weight:700}.contact-header p{color:var(--color-black-alpha-60);max-width:560px;margin:0 auto;font-size:18px;line-height:1.6}.contact-grid{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:48px;display:grid}.contact-info{background:var(--color-gray-50);border:1px solid var(--color-black-alpha-10);border-radius:var(--radius-xl);flex-direction:column;gap:32px;padding:32px;display:flex;position:sticky;top:120px}.contact-info-block h3{text-transform:uppercase;letter-spacing:.08em;color:var(--color-black-alpha-40);margin:0 0 6px;font-size:12px;font-weight:700}.contact-info-block a{color:var(--color-primary);font-size:15px;font-weight:600;text-decoration:none}.contact-info-block a:hover{text-decoration:underline}.contact-info-block p{color:var(--color-black-alpha-70);margin:0;font-size:15px;line-height:1.5}.contact-form-panel{background:var(--color-white);border:1px solid var(--color-black-alpha-10);border-radius:var(--radius-xl);min-width:0;padding:40px}.contact-form-panel .form-group label{color:var(--color-black-alpha-80)}.contact-form-panel .form-group input{background-color:var(--color-white);color:var(--color-black);border-color:var(--color-black-alpha-20)}.contact-form-panel .form-group input::placeholder{color:var(--color-black-alpha-40)}.contact-form-panel .form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3366ff1a}.contact-form-panel .form-group input.error{border-color:var(--color-danger)}.contact-form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.contact-form-row>*{min-width:0}.contact-form-group{margin-bottom:10px;position:relative}.contact-form-group label{color:var(--color-black-alpha-80);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.contact-form-group textarea{border:1px solid var(--color-black-alpha-20);border-radius:var(--radius-lg);resize:vertical;width:100%;min-width:0;min-height:140px;color:var(--color-black);background:var(--color-white);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box;outline:none;padding:12px 16px;font-family:inherit;font-size:15px;line-height:1.6}.contact-form-group textarea::placeholder{color:var(--color-black-alpha-40)}.contact-form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #3366ff1a}.contact-form-group textarea.error{border-color:var(--color-danger)}.contact-char-count{color:var(--color-black-alpha-40);text-align:right;margin-top:4px;font-size:12px;display:block}.contact-error-banner{background:var(--color-danger-light);border:1px solid var(--color-danger-border);color:var(--color-danger-hover);border-radius:var(--radius-lg);margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:500}.contact-field-error{color:var(--color-danger);margin-top:4px;font-size:13px;display:block}.contact-submit-btn{border-radius:var(--radius-lg);color:#fff;cursor:pointer;width:100%;transition:opacity var(--transition-fast),transform var(--transition-fast);background:linear-gradient(135deg,#f36 0%,#36f 100%);border:none;margin-top:8px;padding:15px;font-family:inherit;font-size:16px;font-weight:700}.contact-submit-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.contact-submit-btn:disabled{opacity:.65;cursor:not-allowed;transform:none}.grecaptcha-badge{visibility:hidden}.contact-recaptcha-notice{color:var(--color-black-alpha-40);text-align:center;margin-top:12px;font-size:12px}.contact-recaptcha-notice a{color:var(--color-black-alpha-50);text-decoration:underline}.contact-recaptcha-notice a:hover{color:var(--color-primary)}.contact-success{text-align:center;padding:64px 64px 56px;animation:.5s cubic-bezier(.16,1,.3,1) both success-enter}@keyframes success-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.contact-success-icon{background:#22a06414;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto 28px;display:grid}.contact-success-icon svg{width:34px;height:34px;overflow:visible}.contact-success-circle{fill:none;stroke:#22a064;stroke-width:3px;stroke-dasharray:151;stroke-dashoffset:151px;transform-origin:50%;animation:.6s cubic-bezier(.65,0,.35,1) .1s forwards draw-circle;transform:rotate(-90deg)}.contact-success-check{fill:none;stroke:#22a064;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:32;stroke-dashoffset:32px;animation:.35s cubic-bezier(.65,0,.35,1) .55s forwards draw-check}@keyframes draw-circle{to{stroke-dashoffset:0}}@keyframes draw-check{to{stroke-dashoffset:0}}.contact-success h2{letter-spacing:-.02em;color:var(--color-black);margin:0 0 12px;font-size:28px;font-weight:700}.contact-success p{color:var(--color-black-alpha-60);max-width:340px;margin:0 auto 28px;font-size:16px;line-height:1.6}.contact-reset-btn{border:2px solid var(--color-primary);color:var(--color-primary);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:12px 28px;font-family:inherit;font-size:15px;font-weight:600}.contact-reset-btn:hover{background:var(--color-primary-light)}.contact-reset-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}@media (prefers-reduced-motion:reduce){.contact-success{animation:none}.contact-success-circle,.contact-success-check{stroke-dashoffset:0;animation-duration:.01ms}}@media (max-width:900px){.contact-grid{grid-template-columns:minmax(0,1fr);gap:24px}.contact-info{flex-flow:wrap;gap:24px;padding:24px;position:static}.contact-info-block{flex:1;min-width:160px}}@media (max-width:600px){.contact-header h1{font-size:36px}.contact-header p{font-size:16px}.contact-form-panel{padding:24px}.contact-form-row{grid-template-columns:minmax(0,1fr);gap:0}.contact-info{flex-direction:column;gap:20px}}
