@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

* {
    box-sizing: border-box;
}

html, body {
    width: 100%;
    min-height: 100%;
    margin: 0;
}

body {
    font-family: Arial, Roboto, sans-serif;
    background: #07152b;
}

.site {
    position: relative;
    min-height: 100vh;
    min-height: 100dvh;
    width: 100%;
    overflow: hidden;
    background:
        url("assets/bg.jpg") center center / cover no-repeat fixed;
}

/* Лёгкое затемнение, как на исходной странице */
.shade {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: rgba(4, 15, 39, 0.10);
}

.header,
.main {
    position: relative;
    z-index: 1;
}

.header {
    display: flex;
    justify-content: center;
    padding-top: clamp(28px, 5vh, 55px);
}

.brand {
    color: rgba(11, 31, 75, 0.88);
    font-size: clamp(58px, 7.1vw, 116px);
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: 1px;
    white-space: nowrap;
    text-shadow:
        0 0 2px rgba(255,255,255,0.95),
        0 0 5px rgba(167,184,219,0.80),
        0 3px 8px rgba(0,0,0,0.45);
    -webkit-text-stroke: 1px rgba(167,184,219,0.40);
}

.main {
    display: flex;
    justify-content: center;
    padding-top: clamp(62px, 10vh, 125px);
    padding-bottom: 40px;
}

.contacts {
    width: 100%;
    max-width: 280px;
    text-align: center;
}

.contacts h1 {
    margin: 0 0 28px;
    color: #ffffff;
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 2px 5px rgba(0,0,0,0.45);
}

.buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.buttons a {
    width: 188px;
    min-height: 48px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 12px;

    color: #f7f7f7;
    background: rgba(29, 38, 59, 0.96);
    text-decoration: none;
    font-size: 15px;
    font-weight: 400;

    border-radius: 3px;
    box-shadow:
        0 3px 7px rgba(0,0,0,0.28),
        inset 0 1px 0 rgba(255,255,255,0.03);

    transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}

.buttons a:hover {
    transform: translateY(-2px);
    background: rgba(45, 57, 83, 0.98);
    box-shadow:
        0 7px 14px rgba(0,0,0,0.32),
        0 0 0 1px rgba(255,255,255,0.05);
}

.buttons a:active {
    transform: translateY(0);
}

@media (max-width: 700px) {
    .site {
        background-attachment: scroll;
        background-position: center center;
    }

    .header {
        padding-top: 32px;
    }

    .brand {
        font-size: clamp(45px, 13vw, 80px);
        letter-spacing: 0;
        white-space: normal;
        text-align: center;
    }

    .main {
        padding-top: 75px;
    }

    .contacts {
        max-width: 100%;
        padding: 0 20px;
    }

    .contacts h1 {
        font-size: 27px;
    }

    .buttons a {
        width: min(100%, 230px);
        min-height: 50px;
    }
}
