blockquote,body,button,code,dd,dl,dt,fieldset,form,h1,h2,h3,h4,h5,h6,html,input,legend,li,ol,p,pre,td,textarea,th,ul{padding:0;margin:0;font-weight:400}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}button,input,select,textarea{border:none;font-family:inherit;color:inherit;background:0 0;-webkit-appearance:none;appearance:none;outline:0}body,html{position:relative;width:100%;min-width:300px;height:100%;font-size:15px;font-weight:400;line-height:1.333;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-ms-text-size-adjust:100%;-webkit-text-size-adjust:none;-webkit-overflow-scrolling:touch;word-wrap:break-word;word-break:break-word}html{-webkit-perspective:none!important}b,strong{font-weight:700!important}a{color:inherit}.sb-body_overflow{height:100%;overflow:hidden}.sb-body_overflow:after{content:"";position:fixed;top:0;left:0;z-index:98;width:100vw;height:100vh;background-color:rgba(51,51,51,.8)}.sb-body_with-footer .site-wrapper{box-sizing:border-box}.sb-body_hide-messenger{overflow:hidden}.sb-body_hide-messenger .messenger-button{display:none}.sb-padding-top_l{padding-top:72px}.sb-padding-top_m{padding-top:36px}.sb-padding-top_s{padding-top:20px}.sb-padding-bottom_l{padding-bottom:72px}.sb-padding-bottom_m{padding-bottom:36px}.sb-padding-bottom_s{padding-bottom:20px}.sb-hidden{display:none!important}@media screen and (max-width:639px){.sb-hidden-mobile{display:none!important}}@media screen and (min-width:300px){.sb-hidden-mobile-min{display:none!important}}@media (min-width:480px) and (max-width:639px){.sb-hidden-mobile-interval{display:none!important}}@media screen and (max-width:959px){.sb-body_with-footer .sb-block_fullscreen:only-child,.sb-body_with-footer .site-wrapper{min-height:calc(100vh - 44px)}.sb-hidden-tablet{display:none!important}}@media screen and (min-width:640px){.sb-hidden-tablet-min{display:none!important}}@media (min-width:640px) and (max-width:959px){.sb-hidden-tablet-interval{display:none!important}}@media screen and (max-width:1359px){.sb-hidden-desktop{display:none!important}}@media screen and (min-width:960px){.sb-body_with-footer .sb-block_fullscreen:only-child,.sb-body_with-footer .site-wrapper{min-height:calc(100vh - 60px)}.sb-hidden-desktop-min{display:none!important}}@media (min-width:960px) and (max-width:1359px){.sb-hidden-desktop-interval{display:none!important}}@media screen and (min-width:1360px){.sb-hidden-desktop-lg-min{display:none!important}}.sb-opacity{opacity:.4}.sb-align-center{text-align:center}.sb-align-left{text-align:left}.sb-pre-wrap{white-space:pre-wrap}.sb-text-ellipsis-focus:focus{text-overflow:clip!important}
/* ===== БАЗОВЫЕ СТИЛИ (ФОРМА) ===== */ 

/* Убираем фон и отступы у самой секции, если они есть */
#form-block { 
  background: #f3f5f7; /* Цвет фона */
  font-family: Inter, Arial, sans-serif; 
  color: #222;
}

/* Контейнер формы */ 
.form-container { 
    width: 100%; 
    max-width: 520px; 
    background: #fff; 
    margin: 0 auto;  /* Центрируем */
    padding: 28px; 
    border-radius: 12px; 
    box-shadow: 0 10px 30px rgba(20,30,40,0.06); 
    box-sizing: border-box; 
    transition: transform .12s ease, box-shadow .12s ease; 
} 

/* Заголовок */ 
.form-container h2 { 
    margin: 0 0 12px; 
    font-size: 20px; 
    color: #0f1720; 
} 

/* Ряды полей */ 
.form-row { 
    margin-bottom: 14px; 
} 

/* Поля ввода и textarea */ 
input[type="text"], input[type="email"], textarea { 
    width: 100%; 
    padding: 12px 14px; 
    border: 1px solid #e1e6ea; 
    border-radius: 10px; 
    font-size: 15px; 
    transition: box-shadow .12s, border-color .12s; 
    outline: none; 
    background: #fff; 
    box-sizing: border-box; 
    font-family: Inter, Arial, sans-serif; /* Наследуем шрифт */
} 

/* Фокусные состояния */ 
input:focus, textarea:focus { 
    border-color: #2b7fff; 
    box-shadow: 0 6px 18px rgba(43,127,255,0.12); 
} 

/* Ошибка под полем (по умолчанию скрыта) */ 
.field-error { 
    color: #b91c1c; 
    font-size: 13px; 
    margin-top: 6px; 
    display: none; 
} 

/* ==== ЧЕКБОКС И ТЕКСТ СОГЛАСИЯ ==== */ 
.consent-wrapper { 
    display: flex; 
    gap: 10px; 
    align-items: flex-start; 
    margin-top: 8px; 
    font-size: 14px; 
    color: #334155; 
    line-height: 1.35; 
} 

.consent-wrapper input[type="checkbox"] { 
    width: 18px; 
    height: 18px; 
    min-width: 18px; 
    min-height: 18px; 
    border: 2px solid #cbd5e1; 
    border-radius: 6px; 
    appearance: none; 
    -webkit-appearance: none; 
    display: inline-grid; 
    place-items: center; 
    cursor: pointer; 
    background: #fff; 
    transition: all .12s ease; 
    flex: 0 0 18px; 
} 

.consent-wrapper input[type="checkbox"]:hover { 
    border-color: #9fb8f8; 
    transform: translateY(-1px); 
} 

.consent-wrapper input[type="checkbox"]:checked { 
    border-color: #2b7fff; 
    background: linear-gradient(180deg,#2b7fff,#2366e6); 
    box-shadow: 0 2px 6px rgba(43,127,255,0.12) inset; 
} 

.consent-wrapper input[type="checkbox"]:checked::after { 
    content: "✓"; 
    color: #fff; 
    font-size: 12px; 
    font-weight: 700; 
    line-height: 1; 
} 

.consent-wrapper .consent-text, .consent-wrapper label { 
    display: inline-block; 
    color: #334155; 
    font-size: 14px; 
    line-height: 1.35; 
    cursor: pointer; 
    user-select: none; 
} 

.consent-wrapper a { 
    color: #2b7fff; 
    text-decoration: underline; 
} 
.consent-wrapper a:hover { 
    color: #1a68e8; 
} 

/* ==== КНОПКА ОТПРАВИТЬ ==== */ 
button[type="submit"] { 
    width: 100%; 
    padding: 14px; 
    background: linear-gradient(180deg,#2b7fff,#2366e6); 
    color: #fff; 
    border: none; 
    border-radius: 10px; 
    font-size: 15px; 
    font-weight: 700; 
    cursor: pointer; 
    transition: transform .12s, opacity .12s; 
    margin-top: 12px; 
    box-shadow: 0 6px 18px rgba(43,127,255,0.12); 
    font-family: Inter, Arial, sans-serif; /* Наследуем шрифт */
} 

button[type="submit"]:disabled { 
    opacity: 0.55; 
    transform: none; 
    cursor: not-allowed; 
    background: linear-gradient(180deg,#c8d9ff,#b6cfff); 
    box-shadow: none; 
} 

/* ==== Всплывающее окно успешной отправки ==== */ 
#successPopup { 
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background: rgba(0,0,0,0.4); 
    display: none; 
    align-items: center; 
    justify-content: center; 
    z-index: 9999; 
} 
#successPopup > div { 
    background: #fff; 
    padding: 18px 26px; 
    border-radius: 10px; 
    font-size: 16px; 
    font-weight: 600; 
    box-shadow: 0 10px 30px rgba(20,30,40,0.08); 
} 

/* ==== Адаптив ==== */ 
@media (max-width: 480px) { 
    .form-container { 
        padding: 18px; 
        margin: 20px 0; /* Убираем боковые отступы на мобильных */
    } 
    input[type="text"], input[type="email"], textarea { 
        padding: 10px 12px; 
    } 
    button[type="submit"] { 
        padding: 12px; 
        font-size: 14px; 
    } 
}


/* --- Стили для иконок в контактах --- */
.contact-item {
    display: flex; /* Ставит иконку и текст в ряд */
    align-items: flex-start; /* Выравнивает по верху, если текст в 2+ строки */
    gap: 10px; /* Пробел между иконкой и текстом */
}
.contact-item-icon {
    font-size: 1.2em; /* Чуть крупнее иконка */
    line-height: 1.5; /* Выравниваем по высоте строки текста */
}
/* --- Зеленая иконка телефона --- */
.icon-phone-green {
    color: #28a745; /* Красивый "телефонный" зеленый */
}
/* --- Социальные сети в контактах (Обновлено: меньше на 20%) --- */
.social-buttons-wrapper {
    display: flex;
    gap: 12px;          /* Чуть уменьшили отступ */
    margin-top: 15px;   /* Чуть уменьшили отступ сверху */
    padding-top: 12px;
    border-top: 1px solid rgba(0,0,0,0.05);
}

.social-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;        /* Было 42px */
    height: 34px;       /* Было 42px */
    border-radius: 50%;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    text-decoration: none !important;
}

.social-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

.social-btn svg {
    width: 18px;        /* Было 22px */
    height: 18px;       /* Было 22px */
    fill: white;
}

.btn-tg { background-color: #229ED9; }
.btn-vk { background-color: #0077FF; }