/* ====== ШРИФТЫ ====== */

@font-face {
    font-family: 'OpiumNew';
    src: url('/fonts/OpiumNew.woff2') format('woff2'),
         url('/fonts/OpiumNew.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'OpiumNew';
    src: url('/fonts/OpiumNew-Bold.woff2') format('woff2'),
         url('/fonts/OpiumNew-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Sverdlovsk';
    src: url('/fonts/SverdlovskRegular.woff2') format('woff2'),
         url('/fonts/SverdlovskRegular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* ====== ПРОЗРАЧНАЯ ШАПКА С ПЕРЕХОДОМ ====== */

/* Начальное состояние: прозрачная, поверх первого блока */
body #masthead,
body .site-header {
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    z-index: 9000;
    transition: background 0.35s ease, box-shadow 0.35s ease;
}

/* Высота шапки — перебиваем Astra Customizer inline-стили */
body #masthead .ast-primary-header-bar,
body #masthead .main-header-bar,
body .site-header .ast-primary-header-bar,
body .site-header .main-header-bar {
    min-height: 115px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
}

/* Убрать белую полосу сверху и отступ под шапку */
html, body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
body .hfeed.site,
body #page {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Белые пункты меню и логотип на прозрачном фоне */
body .site-header .main-navigation a,
body .site-header .ast-builder-menu .menu-link,
body .site-header .ast-masthead-custom-menu-items a,
body .site-header .site-title a {
    color: #fff !important;
}

/* Состояние после скролла: белый фон, фиксированная */
body #masthead.pnkr-solid,
body .site-header.pnkr-solid {
    position: fixed !important;
    background: #fff !important;
    background-color: #fff !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.12) !important;
}

body #masthead.pnkr-solid .ast-primary-header-bar,
body .site-header.pnkr-solid .ast-primary-header-bar {
    background: transparent !important;
    background-color: transparent !important;
}

/* Восстановить цвет меню на белом фоне */
body .site-header.pnkr-solid .main-navigation a,
body .site-header.pnkr-solid .ast-builder-menu .menu-link,
body .site-header.pnkr-solid .ast-masthead-custom-menu-items a,
body .site-header.pnkr-solid .site-title a {
    color: #333 !important;
}

/* ====== БОРДЕР СО ЗВЁЗДАМИ ====== */

/* overflow visible чтобы ::after выходил за пределы шапки */
body #masthead,
body .site-header {
    overflow: visible !important;
}

body #masthead::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    top: 115px;
    height: 16px;
    pointer-events: none;
    /* левая линия, правая линия, левая звезда, правая звезда */
    background-image:
        linear-gradient(rgba(255,255,255,0.4), rgba(255,255,255,0.4)),
        linear-gradient(rgba(255,255,255,0.4), rgba(255,255,255,0.4)),
        url('/img/star.svg'),
        url('/img/star.svg');
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-size:
        calc(40% - 8px) 2px,
        calc(40% - 8px) 2px,
        16px 16px,
        16px 16px;
    background-position:
        0 7px,
        right 7px,
        calc(40% - 8px) 0,
        calc(60% - 8px) 0;
}

/* Скрыть декор когда шапка стала белой */
body #masthead.pnkr-solid::after {
    display: none;
}

#ast-hf-menu-1{
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    height: 30px;
    margin-left: -287px;
    margin-top: -250px;
}

.logo{
    margin-top: 27px;
}

/* Иконка телефона перед номером */
.site-header a[href^="tel"]::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 6px;
    vertical-align: middle;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M17.4 22A15.42 15.42 0 0 1 2 6.6 4.6 4.6 0 0 1 6.6 2a1.52 1.52 0 0 1 .4.05 1.49 1.49 0 0 1 1 .93l1.37 3.48a1.5 1.5 0 0 1-.1 1.37l-.96 1.32a9.13 9.13 0 0 0 4.54 4.54l1.32-.96a1.5 1.5 0 0 1 1.37-.1l3.48 1.37a1.49 1.49 0 0 1 .93 1 1.52 1.52 0 0 1 .05.4A4.6 4.6 0 0 1 17.4 22z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}

.tel{
    color: white !important;
}
.tel:hover{
    text-decoration: underline;
}

/* Кнопка "Связаться с нами" */
.ast-header-button-1 .ast-custom-button {
    background: transparent !important;
    border: 1px solid #fff !important;
    border-radius: 0 !important;
    color: #fff !important;
    transition: background 0.25s, color 0.25s;
}
.ast-header-button-1 .ast-custom-button:hover,
.ast-header-button-1 .ast-custom-button-link:hover .ast-custom-button {
    background: #fff !important;
    color: #333 !important;
}

.ast-header-html-1{
    margin-right: 26px;
    margin-top: -86px;
}

.ast-header-button-1{
    margin-right: -272px;
    margin-top: -83px;
}

/* ====== ШРИФТЫ ШАПКИ ====== */

/* Пункты меню */
body .site-header .ast-builder-menu .menu-link,
body .site-header .main-navigation a {
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em;
}

/* Телефон */
body .site-header a[href^="tel"],
body .site-header .tel {
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

/* Кнопка */
body .site-header .ast-custom-button {
    font-family: 'Montserrat', Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em;
}