/* Кастомные стили поверх Pico */
.hero {
    /* background: linear-gradient(135deg, #1e3c72 0%, #2b3b4e 100%); */
    background: #2b3b4e;
    color: white;
    padding: 3rem 0;
    margin-bottom: 2rem;
    /* border-radius: 0 0 1rem 1rem; */
    border-radius: 0 0 0 0;
}

.hero h1, .hero p {
    color: white;
}

.hero img.logo {
    float:left; 
}

.service-card {
    transition: transform 0.2s;
    height: 100%;
}

.service-card:hover {
    transform: translateY(-5px);
}

.benefit-icon {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 1rem;
}

.contact-info {
    background: var(--pico-card-background-color);
    padding: 1.5rem;
    border-radius: var(--pico-border-radius);
    margin-bottom: 1rem;
}

.footer {
    background: var(--pico-card-background-color);
    padding: 2rem 0;
    margin-top: 3rem;
    text-align: center;
}

/* Адаптивные кнопки формы */
@media (max-width: 768px) {
    .hero {
        padding: 2rem 0;
    }

    button[type="submit"] {
        width: 100%;
    }

    .hero img.logo {
        display:none;
    }
    .benefits {
        display:none;
    }
    .footer {
        display:none;
    }
    div#mapcontainer {
        display:none;
    }
}

/* Карта */
#map {
    height: 400px;
    width: 100%;
    border-radius: var(--pico-border-radius);
    margin-top: 1rem;
}

/* Sticky кнопка на мобилках */
.sticky-button {
    display: none;
}

@media (max-width: 768px) {
    .sticky-button {
        display: block;
        position: fixed;
        bottom: 1rem;
        right: 1rem;
        z-index: 1000;
    }

    .sticky-button a {
        display: block;
        padding: 0.75rem 1.5rem;
        background: var(--pico-primary);
        color: white;
        border-radius: 3rem;
        text-decoration: none;
        box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        font-weight: bold;
    }
}

/* Яндекс.Карты поверх */
[class*="ymaps"] {
    border-radius: var(--pico-border-radius);
}
