
.contacts-page { overflow:clip; }
.contacts-page .contacts-hero { min-height:auto;padding:4rem 0 2.7rem; }
.contacts-hero .contacts-hero-inner { max-width:860px;text-align:center;margin:0 auto; }
.contacts-hero h1 { width:100%;max-width:none;margin:.55rem 0 0;color:#172033;font:700 clamp(2.6rem,5.4vw,4.35rem)/1.08 'Poppins',sans-serif;letter-spacing:-.05em;text-align:center; }
.contacts-hero h1 span { display:inline-block;background:linear-gradient(100deg,#087cf4,#7613d4);background-clip:text;-webkit-background-clip:text;color:transparent; }
.contacts-hero .hero-description { max-width:700px;margin:1rem auto 0;color:var(--color-text-muted);font-size:1.05rem;line-height:1.65; }
.contacts-hero .hero-actions { justify-content:center;align-items:center;gap:1.25rem;margin-top:1.45rem; }
.contacts-work-hours { display:inline-flex;align-items:center;gap:.45rem;color:#627088;font-size:.84rem;font-weight:650; }
.contacts-work-hours span { color:#5e4ad7;font-size:1.05rem; }
.contact-channels-section { padding:2.6rem 0 4.8rem;background:#fff; }
.contact-channel-layout { display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:clamp(1.5rem,4vw,3.8rem);align-items:center; }
.contact-illustration { position:relative;display:grid;min-height:545px;place-items:center;overflow:hidden;border:1px solid #e6e9f5;border-radius:1.35rem;background:radial-gradient(ellipse at 52% 45%,rgba(94,83,225,.14),transparent 41%),linear-gradient(145deg,#eff7ff,#f8f3ff); }
.contact-illustration-glow { position:absolute;width:200px;height:200px;border-radius:50%;background:linear-gradient(135deg,rgba(8,124,244,.12),rgba(118,19,212,.16));filter:blur(4px); }
.contact-illustration-orbit { position:absolute;border:1px solid rgba(90,78,209,.13);border-radius:50%; }
.contact-illustration .orbit-a { width:350px;height:350px; }
.contact-illustration .orbit-b { width:260px;height:260px;border-style:dashed; }
.contact-chat-card { position:relative;z-index:1;width:min(78%,360px);padding:1.25rem;border:1px solid #e4e8f3;border-radius:1.2rem;background:#fff;box-shadow:0 24px 58px rgba(45,56,119,.14);animation:contact-float 7s ease-in-out infinite; }
@keyframes contact-float { 0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)} }
.contact-chat-top { display:flex;align-items:center;gap:.7rem;padding-bottom:1rem;border-bottom:1px solid #edf0f6; }
.contact-chat-avatar { display:grid;width:2.7rem;height:2.7rem;place-items:center;border-radius:.82rem;background:linear-gradient(135deg,#087cf4,#7613d4);color:#fff;font:800 1.1rem 'Poppins',sans-serif; }
.contact-chat-top b { display:block;color:#172033;font-size:.85rem; }
.contact-chat-top small { display:block;margin-top:.2rem;color:#8791a3;font-size:.69rem; }
.contact-chat-top i { width:.52rem;height:.52rem;margin-left:auto;border-radius:50%;background:#27b486;box-shadow:0 0 0 4px #e8f8f1; }
.contact-chat-message { max-width:92%;margin:1rem 0;padding:.85rem .9rem;border-radius:.8rem .8rem .8rem .2rem;background:#f2f6fd;color:#536078;font-size:.82rem;line-height:1.5; }
.contact-chat-reply { display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-left:auto;padding:.7rem .8rem;border-radius:.8rem .8rem .2rem .8rem;background:linear-gradient(110deg,#087cf4,#7613d4);color:#fff;font-size:.77rem; }
.contact-chat-reply i { font-style:normal; }
.contact-chat-footer { display:flex;align-items:center;gap:.45rem;margin-top:1.05rem;color:#8993a5;font-size:.68rem; }
.contact-chat-dot { width:.42rem;height:.42rem;border-radius:50%;background:#29b487; }
.contact-float-icon { position:absolute;z-index:2;display:grid;width:3rem;height:3rem;place-items:center;border:1px solid #e5e8f5;border-radius:1rem;background:#fff;color:#5946d6;font-size:1.2rem;box-shadow:0 12px 30px rgba(45,56,119,.12); }
.float-phone { top:18%;right:13%;transform:rotate(8deg); }.float-mail { bottom:19%;left:12%;transform:rotate(-7deg); }
.contact-float-spark { position:absolute;top:16%;left:14%;color:#7048dc;font-size:1.5rem; }
.contact-card-stack { display:grid;gap:.8rem; }
.contact-info-card { padding:1.05rem 1.15rem;border:1px solid #e5e9f2;border-radius:1rem;background:#fff;box-shadow:0 10px 28px rgba(35,45,82,.05); }
.contact-card-title { display:flex;align-items:center;gap:.7rem;margin-bottom:.75rem; }
.contact-card-icon { display:grid;flex:0 0 2.4rem;width:2.4rem;height:2.4rem;place-items:center;border:1px solid transparent;border-radius:.75rem;font-size:1rem;font-weight:800; }
.contact-card-icon.icon-blue { background:linear-gradient(135deg,#e8f4ff,#eaeaff);color:#147ceb; }
.contact-card-icon.icon-purple { background:linear-gradient(135deg,#efeaff,#f6eaff);color:#7339ce; }
.contact-card-icon.icon-cyan { background:linear-gradient(135deg,#e5faff,#eaf1ff);color:#158eae; }
.contact-card-title > div > span { color:#5d48d5;font-size:.57rem;font-weight:800;letter-spacing:.12em; }
.contact-card-title h2 { margin:.15rem 0 0;color:#172033;font:700 1rem/1.25 'Poppins',sans-serif; }
.contact-line { display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.48rem 0;border-top:1px solid #f0f2f7;color:inherit;text-decoration:none; }
.contact-line span { color:#8590a3;font-size:.75rem; }
.contact-line b { color:#29354c;font-size:.82rem;font-weight:650;text-align:right;overflow-wrap:anywhere; }
.contact-line:hover b { color:#5541d7; }
.contact-social-card { padding-bottom:.8rem; }
.contact-social-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem; }
.contact-social-list > a { display:flex;align-items:center;gap:.55rem;min-width:0;padding:.65rem;border:1px solid #edf0f6;border-radius:.8rem;background:#fcfdff;color:inherit;text-decoration:none;transition:border-color .2s ease,transform .2s ease; }
.contact-social-list > a:hover { transform:translateY(-2px);border-color:#cfd7f4; }
.contact-social-symbol { display:grid;flex:0 0 2rem;width:2rem;height:2rem;place-items:center;border-radius:.62rem;background:#e7f0fb;color:#2e5d9a;font-size:.75rem;font-weight:800; }
.instagram-symbol { background:linear-gradient(135deg,#fff0dd,#f8e8ff);color:#bd4f91;font-size:1.4rem; }
.contact-social-symbol svg { display:block;width:1.15rem;height:1.15rem; }
.contact-social-symbol .social-brand-vk { fill:currentColor;stroke:none; }
.contact-social-symbol .social-brand-instagram { fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
.contact-social-symbol .social-dot { fill:currentColor;stroke:none; }
.contact-social-list > a > span:nth-child(2) { min-width:0; }
.contact-social-list b { display:block;color:#26334a;font-size:.72rem; }
.contact-social-list small { display:block;margin-top:.15rem;color:#8993a5;font-size:.6rem; }
.contact-social-list i { margin-left:auto;color:#5b49d3;font-size:.8rem;font-style:normal; }
.contact-form-section { padding:4.8rem 0;background:#f7f8fc;scroll-margin-top:7rem; }
.contact-form-shell { display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start;padding:clamp(1.5rem,4vw,3rem);border:1px solid #e5e9f2;border-radius:1.25rem;background:#fff;box-shadow:0 15px 44px rgba(35,45,82,.06); }
.contact-form-intro { position:sticky;top:7rem; }
.contact-form-intro h2 { margin:.55rem 0 .75rem;color:#172033;font:700 clamp(1.7rem,3vw,2.45rem)/1.17 'Poppins',sans-serif;letter-spacing:-.04em; }
.contact-form-intro h2 span { background:linear-gradient(100deg,#087cf4,#7613d4);background-clip:text;-webkit-background-clip:text;color:transparent; }
.contact-form-intro > p { margin:0;color:var(--color-text-muted);font-size:.94rem;line-height:1.7; }
.contact-form-reassurance { display:flex;align-items:center;gap:.6rem;margin-top:1rem;color:#657087;font-size:.82rem; }
.contact-form-reassurance span { display:grid;width:1.35rem;height:1.35rem;place-items:center;border-radius:50%;background:#e8f8f1;color:#1b9d72;font-size:.7rem;font-weight:800; }
.contact-form { min-width:0; }
.contact-form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem; }
.contact-form label { display:flex;min-width:0;flex-direction:column;gap:.4rem;color:#344056;font-size:.78rem;font-weight:700; }
.contact-form input,.contact-form select,.contact-form textarea { width:100%;min-height:2.9rem;padding:.72rem .8rem;border:1px solid #e0e5ef;border-radius:.7rem;outline:none;background:#fff;color:#26334a;font:400 .87rem 'Inter',sans-serif;transition:border-color .18s ease,box-shadow .18s ease; }
.contact-form textarea { min-height:7.5rem;resize:vertical;line-height:1.55; }
.contact-form input::placeholder,.contact-form textarea::placeholder { color:#a0a8b7; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:#6870ed;box-shadow:0 0 0 3px rgba(89,79,216,.11); }
.contact-message-field { grid-column:1/-1; }
.contact-form-hint { margin:.8rem 0;color:#8690a2;font-size:.72rem;line-height:1.5; }
.contact-submit { display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-width:220px;cursor:pointer; }
.contact-submit span { transition:transform .2s ease; }.contact-submit:hover span { transform:translateX(3px); }
.contact-form-status,.contact-form-error { min-height:1.1rem;margin:.65rem 0 0;font-size:.78rem;line-height:1.5; }
.contact-form-status { color:#16835e; }.contact-form-error { color:#bc3c53; }
.contact-help-section { padding:4.8rem 0;background:#fff; }
.contact-help-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem; }
.contact-help-card { display:flex;min-height:220px;flex-direction:column;padding:1.15rem;border:1px solid #e5e9f2;border-radius:1rem;background:#fff;box-shadow:0 10px 28px rgba(35,45,82,.045);color:inherit;text-decoration:none;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease; }
.contact-help-card:hover { transform:translateY(-4px);border-color:#d2d8ee;box-shadow:0 16px 34px rgba(35,45,82,.085); }
.contact-help-icon { display:grid;width:2.5rem;height:2.5rem;place-items:center;border:1px solid transparent;border-radius:.8rem;font-size:.95rem;font-weight:800; }
.contact-help-icon.icon-blue { background:linear-gradient(135deg,#e8f4ff,#eaeaff);color:#147ceb; }
.contact-help-icon.icon-purple { background:linear-gradient(135deg,#efeaff,#f6eaff);color:#7339ce; }
.contact-help-icon.icon-cyan { background:linear-gradient(135deg,#e5faff,#eaf1ff);color:#158eae; }
.contact-help-icon.icon-green { background:linear-gradient(135deg,#e8f8f0,#e7f6ff);color:#159b70; }
.contact-help-card h3 { margin:.8rem 0 .35rem;color:#172033;font:700 .96rem/1.32 'Poppins',sans-serif; }
.contact-help-card p { margin:0 0 .8rem;color:var(--color-text-muted);font-size:.8rem;line-height:1.55; }
.contact-help-card > span:last-child { display:flex;align-items:center;justify-content:space-between;gap:.3rem;margin-top:auto;padding-top:.65rem;border-top:1px solid #edf0f6;color:#5743d3;font-size:.72rem;font-weight:700; }
.contact-help-card > span:last-child b { transition:transform .2s ease; }.contact-help-card:hover > span:last-child b { transform:translateX(4px); }
.contact-requisites-section { padding:4.6rem 0;background:#f7f8fc; }
.contact-requisites-head { display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.15rem; }
.contact-requisites-head h2 { margin:.45rem 0 0;color:#172033;font:700 clamp(1.9rem,3.4vw,2.7rem)/1.15 'Poppins',sans-serif;letter-spacing:-.04em; }
.contact-copy-all { display:inline-flex;align-items:center;gap:.45rem;padding:.65rem .85rem;border:1px solid #e1e5ef;border-radius:.7rem;background:#fff;color:#5743d3;font:650 .77rem 'Inter',sans-serif;cursor:pointer;transition:border-color .2s ease,background-color .2s ease; }
.contact-copy-all:hover { border-color:#bfc7eb;background:#fafaff; }
.contact-requisites-card { padding:1.25rem 1.4rem;border:1px solid #e5e9f2;border-radius:1.05rem;background:#fff;box-shadow:0 12px 32px rgba(35,45,82,.05); }
.contact-requisites-main { display:grid;gap:0; }
.contact-requisite-row { display:grid;grid-template-columns:minmax(135px,.38fr) minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.72rem 0;border-bottom:1px solid #eff1f6; }
.contact-requisite-row > span { color:#7c8799;font-size:.78rem; }
.contact-requisite-row > b { color:#2a354b;font-size:.82rem;font-weight:650;line-height:1.5;overflow-wrap:anywhere; }
.contact-requisite-row > button { padding:.35rem .5rem;border:1px solid transparent;border-radius:.45rem;background:transparent;color:#5b49d3;font:650 .68rem 'Inter',sans-serif;cursor:pointer; }
.contact-requisite-row > button:hover { border-color:#e4e5f5;background:#f8f7ff; }
.contact-iban-list { margin-top:1rem;padding:1rem;border-radius:.8rem;background:#f8f9fc; }
.contact-iban-heading { display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.3rem; }
.contact-iban-heading h3 { margin:0;color:#27334a;font:700 .9rem 'Poppins',sans-serif; }
.contact-iban-heading > span { color:#8993a5;font-size:.7rem; }
.contact-iban-list .contact-requisite-row:last-child { border-bottom:0; }
.contact-copy-feedback { min-height:1.1rem;margin:.75rem 0 0;color:#16835e;font-size:.76rem; }
.contact-faq { padding:4.6rem 0; }
.contact-final-cta { padding:4.5rem 0 6rem; }
.contact-final-cta .hosting-final-cta-inner { background:radial-gradient(ellipse at 90% 8%,rgba(116,28,211,.16),transparent 36%),linear-gradient(120deg,#f1f8ff,#f6f2ff); }
@media(max-width:1050px) {
 .contact-channel-layout { grid-template-columns:minmax(0,.75fr) minmax(0,1fr);gap:1.5rem; }
 .contact-illustration { min-height:500px; }
 .contact-help-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:850px) {
 .contact-channel-layout { grid-template-columns:1fr; }
 .contact-illustration { min-height:380px; }
 .contact-card-stack { grid-template-columns:repeat(2,minmax(0,1fr));align-items:start; }
 .contact-social-card { grid-column:1/-1; }
 .contact-form-shell { grid-template-columns:1fr;gap:1.5rem; }
 .contact-form-intro { position:static; }
}
@media(max-width:600px) {
 .contacts-page .contacts-hero { padding:3rem 0 1.7rem; }
 .contacts-hero h1 { font-size:clamp(2.35rem,11vw,3.2rem); }
 .contacts-hero .hero-description { font-size:.92rem; }
 .contacts-hero .hero-actions { align-items:stretch;flex-direction:column;gap:.9rem; }
 .contacts-hero .hero-actions .btn { width:100%;justify-content:center; }
 .contact-channels-section { padding:1.8rem 0 3.4rem; }
 .contact-illustration { min-height:325px;border-radius:1.05rem; }
 .contact-illustration .orbit-a { width:285px;height:285px; }.contact-illustration .orbit-b { width:220px;height:220px; }
 .contact-chat-card { width:82%;padding:1rem; }
 .float-phone { top:10%;right:8%; }.float-mail { bottom:10%;left:7%; }
 .contact-card-stack { grid-template-columns:1fr; }
 .contact-social-card { grid-column:auto; }
 .contact-info-card { padding:.95rem; }
 .contact-social-list { grid-template-columns:1fr 1fr; }
 .contact-social-list > a { gap:.42rem;padding:.55rem .45rem; }
 .contact-social-list small { font-size:.56rem; }
 .contact-form-section,.contact-help-section,.contact-requisites-section,.contact-faq { padding:3.4rem 0; }
 .contact-form-shell { gap:1.2rem;padding:1.1rem;border-radius:1rem; }
 .contact-form-grid { grid-template-columns:1fr;gap:.75rem; }
 .contact-message-field { grid-column:auto; }
 .contact-submit { width:100%; }
 .contact-help-grid { grid-template-columns:1fr; }
 .contact-help-card { min-height:0;padding:1rem; }
 .contact-requisites-head { align-items:flex-start;flex-direction:column; }
 .contact-copy-all { width:100%;justify-content:center; }
 .contact-requisites-card { padding:.8rem; }
 .contact-requisite-row { grid-template-columns:minmax(82px,.38fr) minmax(0,1fr);gap:.4rem .6rem;padding:.65rem 0; }
 .contact-requisite-row > span { font-size:.7rem; }
 .contact-requisite-row > b { font-size:.76rem; }
 .contact-requisite-row > button { grid-column:2;justify-self:start;padding:.28rem 0;font-size:.65rem; }
 .contact-iban-list { padding:.8rem; }
 .contact-iban-heading { align-items:flex-start;flex-direction:column;gap:.3rem; }
 .contact-final-cta { padding:3.4rem 0 4rem; }
 .contact-final-cta .hosting-final-cta-inner { gap:1rem;padding:1.15rem; }
 .contact-final-cta .hero-actions { width:100%; }
 .contact-final-cta .hero-actions .btn { width:100%;justify-content:center; }
}
@media(prefers-reduced-motion:reduce) {
 .contact-chat-card,.contact-social-list > a,.contact-submit span,.contact-help-card,.contact-help-card > span:last-child b { animation:none;transition:none; }
 .contact-help-card:hover,.contact-social-list > a:hover { transform:none; }
}
