.contact-page{width:100%;background:#fff;padding:5.4rem 8rem 4rem}.contact-page__container{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:.95fr 1.05fr;gap:1.25rem;align-items:start}.contact-page__left h1,.contact-page__right h2{font-size:clamp(1.85rem, 2.3vw, 2.3rem);line-height:1.25;color:#0f172a;margin-bottom:1.1rem}.contact-page__item{margin-bottom:1rem}.contact-page__item:last-of-type{margin-bottom:1.2rem}.contact-page__item span{display:block;font-size:.72rem;line-height:1.2;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary);margin-bottom:.32rem}.contact-page__item a,.contact-page__item p{color:#1f2937;font-size:clamp(1.15rem, 1.45vw, 1.42rem);line-height:1.35;font-weight:700;text-decoration:none;margin:0}.contact-page__item a:hover{color:var(--primary)}.contact-page__social{margin-top:.2rem;margin-bottom:1rem}.contact-page__social-tagline{display:block;font-size:.72rem;line-height:1.2;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary);margin-bottom:.42rem}.contact-page__social-links{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.contact-page__social-links a{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.contact-page__social-links a img{width:24px;height:24px;object-fit:contain;display:block;filter:brightness(0) saturate(100%)}.contact-page__social-links a:hover{opacity:.85}.contact-page__map-wrap{border-radius:.45rem;overflow:hidden;aspect-ratio:1 / 1;min-height:320px}.contact-page__map-wrap iframe{width:100%;height:100%;min-height:320px;border:0;display:block}.contact-form{display:grid;gap:.9rem}.contact-form__field{display:grid}.contact-form__field label{font-size:.86rem;line-height:1.2;font-weight:700;color:#0f172a;margin-bottom:.42rem}.contact-form__field label span{color:#dc2626}.contact-form__field input,.contact-form__field textarea{width:100%;border:1px solid #cbd5e1;border-radius:.4rem;padding:.72rem .82rem;font-size:.98rem;line-height:1.45;color:#0f172a;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.contact-form__field textarea{resize:none;min-height:150px}.contact-form__field input:focus,.contact-form__field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,#ffffff 78%)}.contact-form__error{max-height:0;opacity:0;overflow:hidden;transform:translateY(-4px);margin:0;color:#dc2626;font-size:.82rem;line-height:1.35;transition:max-height .22s ease,opacity .22s ease,transform .22s ease,margin-top .22s ease}.contact-form__field.is-error .contact-form__error{max-height:80px;opacity:1;transform:translateY(0);margin-top:.34rem}.contact-form__field.is-error input,.contact-form__field.is-error textarea{border-color:#dc2626}.contact-form__field--fax{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.contact-form__status{margin:.15rem 0 0;font-size:.88rem;line-height:1.35;min-height:0;max-height:0;opacity:0;overflow:hidden;transform:translateY(-4px);transition:max-height .24s ease,opacity .24s ease,transform .24s ease}.contact-form__status.is-visible{max-height:110px;opacity:1;transform:translateY(0)}.contact-form__status.is-error{color:#dc2626}.contact-form__status.is-success{color:#166534}.contact-form__submit{margin-top:.2rem;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.72rem 1.2rem;border:0;border-radius:.4rem;background:var(--primary);color:#fff;font-weight:700;font-size:.98rem;cursor:pointer;transition:filter .2s ease}.contact-form__submit:hover{filter:brightness(1.06)}.contact-form__submit:disabled{opacity:.75;cursor:not-allowed;filter:none}.contact-form__consent{margin:.2rem 0 0;font-size:.8rem;line-height:1.45;color:#475569}.contact-form__consent a{color:var(--primary);text-decoration:underline}@media (max-width:1200px){.contact-page{padding-left:5rem;padding-right:5rem}}@media (max-width:768px){.contact-page{padding:3.2rem .5rem 2.8rem}.contact-page__container{grid-template-columns:1fr;gap:1.1rem}.contact-page__left h1,.contact-page__right h2{font-size:1.7rem;margin-bottom:.85rem}.contact-page__item a,.contact-page__item p{font-size:1.08rem}.contact-page__map-wrap,.contact-page__map-wrap iframe{min-height:270px;aspect-ratio:auto}.contact-form{gap:.8rem}.contact-form__submit{width:100%}}