/* --- Lead form (site style) --- */
:root{
    --brand-blue: #6F86D6;      /* site light blue bg tone */
    --brand-navy: #0B1140;      /* deep navy for buttons/text */
    --brand-accent: #AAE1A0;    /* accent green already used */
    --text-primary: #0E1B2A;
    --text-secondary: rgba(14,27,42,0.7);
    --field-bg: #F7F9FC;
    --field-border: #E5E9F0;
}
.form-block {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 28px 0;
}
.lead-form {
    width: 100%;
    max-width: 560px;
    background: #ffffff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 10px 34px rgba(11,17,64,0.15);
    border: 1px solid rgba(11,17,64,0.06);
    box-sizing: border-box;
    overflow: hidden;
}
.lead-form-title {
    display: block;
    font-weight: 800;
    font-size: 28px;
    line-height: 1.2;
    margin: 0 0 6px 0;
    background: linear-gradient(90deg, var(--brand-navy), #0E1B6A);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    text-align: center;
    letter-spacing: 0.2px;
    text-transform: uppercase;
}
.lead-form-subtitle {
    display: block;
    font-size: 17px;
    line-height: 1.55;
    margin: 0 0 22px 0;
    color: #5A6782;
    text-align: center;
}
.form-grid {
    display: grid;
    grid-template-columns: 1fr; /* single column */
    gap: 14px;
    margin-bottom: 16px;
}
.input-group {
    position: relative;
}
.input-group input[type="text"],
.input-group input[type="tel"],
.input-group input[type="email"] {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    height: 52px;
    padding: 0 16px;
    border: 1px solid var(--field-border);
    border-radius: 14px;
    background: var(--field-bg);
    font-size: 16px;
    color: var(--text-primary);
    outline: none;
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.input-group input::placeholder {
    color: #9BA9B8;
}
.input-group input:focus {
    border-color: var(--brand-blue);
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(111,134,214,0.22);
}
.request-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 220px;
    height: 52px;
    padding: 0 22px;
    border-radius: 12px;
    border: none;
    cursor: pointer;
}
.lead-form .request-button {
    width: 100%;
    margin-top: 4px;
    background: linear-gradient(90deg, var(--brand-navy), #0E1B6A);
    color: #fff;
    font-weight: 800;
    font-size: 20px;
    letter-spacing: .6px;
    text-transform: uppercase;
    border: none;
    transition: transform .06s ease, box-shadow .2s ease, opacity .2s ease;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(11,17,64,0.25);
}
.lead-form .request-button:hover {
    box-shadow: 0 8px 22px rgba(11,17,64,0.28);
    opacity: .98;
}
.lead-form .request-button:active {
    transform: translateY(1px);
    box-shadow: 0 4px 10px rgba(11,17,64,0.3);
}
.form-consent {
    display: block;
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.45;
    color: var(--text-secondary);
    text-align: center;
}
.form-consent a{
    color: var(--brand-navy);
    text-decoration: underline;
}
@media (max-width: 768px) {
    .lead-form { padding: 22px; border-radius: 14px; }
    .form-grid { grid-template-columns: 1fr; }
    .lead-form-title { font-size: 22px; }
    .lead-form-subtitle { font-size: 14px; margin-bottom: 18px; }
}
/* --- HERO (первый экран): читаемость текста на фото --- */
.title-background { position: relative; }
.title-background::before {
content: "";
position: absolute;
inset: 0;
/* затемняющий градиент поверх фото */
background: linear-gradient(180deg, rgba(11,17,64,.66) 0%, rgba(11,17,64,.38) 40%, rgba(11,17,64,.66) 100%), rgba(0,0,0,.28);
z-index: 0;
pointer-events: none;
}

/* Контент геро-блока поверх оверлея */
.title-block { position: relative; z-index: 1000; }

/* Светлый текст и иконки на затемнённом фоне */
.title-block .title { color: #fff; text-shadow: 0 2px 10px rgba(0,0,0,.35); }
.title-block .check-block { color: #E9EDF5; }
.title-block .check-item { color: #E9EDF5; }
.title-block .check-item img { filter: brightness(0) invert(1); }

/* Кнопка на первом экране в фирменном градиенте */
.title-block .request-button {
background: linear-gradient(90deg, #6F86D6, #0B1140);
color: #fff;
font-weight: 800;
letter-spacing: .4px;
text-transform: uppercase;
box-shadow: 0 6px 18px rgba(11,17,64,.35);
border: none;
}
.title-block .request-button:hover {
box-shadow: 0 10px 26px rgba(11,17,64,.4);
opacity: .98;
}
.title-block .request-button:active {
transform: translateY(1px);
box-shadow: 0 6px 16px rgba(11,17,64,.45);
}

.title-block .request-button { position: relative; z-index: 1001; pointer-events: auto; }
.rectangle-bottom { pointer-events: none; }

/* Мобильная версия: чуть сильнее затемнение */
@media (max-width: 768px) {
.title-background::before {
background: linear-gradient(180deg, rgba(11,17,64,.75) 0%, rgba(11,17,64,.48) 40%, rgba(11,17,64,.75) 100%), rgba(0,0,0,.32);
}
}