/* Shared final contact form: readable contacts, icon-only messengers and a full photo. */
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts,
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts > .vc-container {
 height:auto !important; min-height:0 !important; max-height:none !important; overflow:visible !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__grid {
 display:grid !important; grid-template-columns:minmax(0,1.2fr) minmax(0,1.15fr) minmax(0,.7fr) !important;
 align-items:center !important; gap:24px !important; padding:24px !important;
 height:auto !important; min-height:0 !important; max-height:none !important; overflow:visible !important;
 background:#fff !important; border:1px solid #e0edf2 !important; border-radius:16px !important; box-sizing:border-box;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__grid > * {
 min-width:0 !important; max-width:100%; height:auto !important; max-height:none !important; overflow:visible !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-socials--contacts {
 display:flex; flex-wrap:wrap; align-items:center; gap:8px !important; margin:0 0 18px !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-socials--contacts .vc-social {
 display:inline-flex !important; align-items:center; justify-content:center; width:44px !important; height:44px !important;
 min-width:44px !important; min-height:44px !important; padding:6px !important;
 border:0 !important; background:transparent !important; background-image:none !important; box-shadow:none !important; border-radius:0 !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-socials--contacts .vc-social img {
 width:30px !important; height:30px !important; flex:0 0 30px !important; object-fit:contain;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-socials--contacts .vc-social > span { display:none !important; }
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-socials--contacts .vc-social:focus-visible { outline:2px solid #078fc3; outline-offset:2px; }
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list {
 display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:16px 20px !important; margin:0 !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list .vc-contact-card {
 display:block !important; min-height:0 !important; margin:0 !important; padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important; border-radius:0 !important;
 min-width:0 !important; height:auto !important; overflow:visible !important; white-space:normal !important;
 font-size:16px !important; line-height:1.5 !important; overflow-wrap:anywhere;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list .vc-contact-card::before { display:none !important; }
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list .vc-contact-card:nth-child(n+3) { grid-column:1/-1; }
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list .vc-contact-card > span {
 display:block; margin:0 0 4px !important; font-size:14px !important; line-height:1.4 !important; font-weight:600; color:#647c88;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list a {
 font-size:16px !important; line-height:1.5 !important; white-space:normal !important; overflow-wrap:anywhere;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__grid > .vc-contact-card {
 padding:0 !important; border:0 !important; background:transparent !important; box-shadow:none !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form {
 display:flex !important; flex-direction:column !important; gap:16px !important;
 width:100% !important; height:auto !important; min-height:0 !important; max-height:none !important; overflow:visible !important;
 margin:0 !important; padding:20px !important; box-sizing:border-box; border:1px solid #dfeaf0 !important; border-radius:14px !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form label:not(.vc-form__check) {
 display:grid !important; grid-template-columns:minmax(0,1fr); gap:8px !important; margin:0 !important; min-width:0;
 font-size:16px !important; line-height:1.5 !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form input[type=tel] {
 width:100%; min-width:0; max-width:100%; height:50px !important; min-height:50px !important; padding:12px !important;
 box-sizing:border-box; font-size:16px !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form__check {
 display:grid !important; grid-template-columns:18px minmax(0,1fr); align-items:start; gap:9px !important; margin:0 !important;
 white-space:normal !important; font-size:14px !important; line-height:1.5 !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form__check input {
 width:18px !important; height:18px !important; margin:2px 0 0 !important; padding:0 !important; flex:0 0 18px;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form__check span {
 font-size:14px !important; line-height:1.5 !important; min-width:0; overflow-wrap:anywhere;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form button[type=submit] {
 width:100%; min-height:48px !important; height:auto !important; padding:12px !important; font-size:16px !important;
 line-height:1.4 !important; white-space:normal !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__media {
 grid-column:auto !important; display:flex !important; align-items:center; justify-content:center; padding:0 !important;
 border-radius:12px !important; background:transparent !important;
}
html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__media img {
 display:block; width:100% !important; height:auto !important; min-height:0 !important; max-height:none !important;
 aspect-ratio:auto !important; object-fit:contain !important; border-radius:12px !important;
}
@media(max-width:1100px) {
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__grid { grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) !important; }
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__media { grid-column:1/-1 !important; }
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__media img { width:auto !important; max-width:100%; max-height:240px !important; }
}
@media(max-width:700px) {
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts > .vc-container { padding:16px !important; }
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contacts__grid { grid-template-columns:minmax(0,1fr) !important; padding:18px !important; gap:24px !important; }
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-contact-list { grid-template-columns:minmax(0,1fr) !important; }
 html:root body:is(.vc-reference-home,.vc-unified-inner) section.vc-contacts#contacts .vc-form { padding:16px !important; }
}
