@font-face{font-family:Manrope;src:url('/fonts/manrope-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-semibold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('/fonts/manrope-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{
    font-family:'CyrillicRound';
    src:url('/fonts/cyrillicround.woff2') format('woff2');
    font-weight:900;
    font-style:normal;
    font-display:swap;
}

:root{
    --blue:#1F5EFF;
    --blue-hover:#1847C7;
    --blue-light:#EAF1FF;
    --white:#FFFFFF;
    --text:#1E293B;
    --gray:#64748B;
    --border:#E2E8F0;
    --radius:25px;
    --radius-block:32px;
}

*{box-sizing:border-box}

body{
    margin:0;
    font-family:Manrope,Arial,sans-serif;
    background:#fff;
    color:var(--text);
}

a{
    text-decoration:none;
    color:inherit;
}

.container{
    width:min(1440px,calc(100% - 48px));
    margin:0 auto;
}

/* Header */

.site-header{
    padding:24px 0 18px;
    background:#fff;
}

.header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:32px;
}

.logo{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:13px 26px;
    border-radius:25px;
    background:var(--blue);
    color:#fff;
    font-family:'CyrillicRound', Manrope, Arial, sans-serif;
    font-weight:900;
    font-size:31px;
    line-height:1;
    letter-spacing:.4px;
    -webkit-text-stroke:.25px #fff;
    text-shadow:.25px 0 0 #fff,-.25px 0 0 #fff,0 .25px 0 #fff;
    box-shadow:0 10px 24px rgba(31,94,255,.22);
}

.main-menu{
    display:flex;
    align-items:center;
    gap:34px;
    font-size:16px;
    font-weight:600;
}

.main-menu a:hover{
    color:var(--blue);
}

.header-right{
    display:flex;
    align-items:center;
    gap:22px;
}

.header-phone{
    font-size:18px;
    font-weight:700;
    white-space:nowrap;
}

.header-btn,
.hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:25px;
    background:var(--blue);
    color:#fff;
    padding:15px 28px;
    font-family:Manrope,Arial,sans-serif;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(31,94,255,.2);
}

.header-btn:hover,
.hero-btn:hover{
    background:var(--blue-hover);
}

/* Hero */

.hero{
    margin-top:10px;
    border-radius:32px;
    background:
        radial-gradient(circle at 72% 46%,rgba(31,94,255,.12),transparent 34%),
        linear-gradient(135deg,#ffffff 0%,var(--blue-light) 100%);
    padding:56px;
    min-height:520px;
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:40px;
    align-items:center;
    overflow:hidden;
}

.hero-badge{
    display:inline-flex;
    padding:10px 18px;
    border-radius:25px;
    background:#fff;
    color:var(--blue);
    font-weight:700;
    margin-bottom:24px;
    box-shadow:0 8px 22px rgba(15,23,42,.06);
}

.hero h1{
    margin:0;
    font-size:58px;
    line-height:1.08;
    letter-spacing:-2px;
}

.hero h1 span{
    color:var(--blue);
}

.hero p{
    margin:24px 0 34px;
    max-width:620px;
    font-size:22px;
    line-height:1.45;
    color:var(--gray);
}

.hero-copy-card{
    margin:26px 0 26px;
    padding:22px 24px;
    border-radius:25px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.9);
    box-shadow:0 14px 34px rgba(15,23,42,.06);
    color:var(--gray);
    font-size:17px;
    line-height:1.65;
}

.hero-actions{
    margin-top:0;
    display:flex;
    gap:18px;
    align-items:center;
}

.hero-btn.secondary{
    background:#fff;
    color:var(--text);
}

.hero-cards{
    margin-top:44px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.mini-card{
    background:#fff;
    border-radius:25px;
    padding:20px;
    box-shadow:0 10px 28px rgba(15,23,42,.06);
    font-weight:700;
}

.mini-card span{
    display:block;
    margin-top:6px;
    color:var(--gray);
    font-size:14px;
    font-weight:500;
}

/*
   Hero image.
   Здесь убран отдельный прямоугольный фон у картинки.
   Края изображения мягко растворяются в общем фоне hero-блока.
*/

.hero-visual{
    position:relative;
    min-height:430px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    overflow:visible;
    background:transparent;
    border-radius:32px;
}

.hero-visual::before{
    content:"";
    position:absolute;
    inset:4% -8% -2% -12%;
    background:
        radial-gradient(ellipse at 54% 48%,rgba(31,94,255,.18) 0%,rgba(31,94,255,.11) 34%,rgba(31,94,255,0) 68%);
    border-radius:50%;
    pointer-events:none;
}

.hero-car {
    position: relative;
    z-index: 1;
    display: block;
    width: 118%;
    max-width: 820px;
    height: auto;
    /* object-fit: contain; */
    /* transform: translateX(16px); */
    /* border-radius: 0; */
    /* box-shadow: none; */
    /* filter: drop-shadow(0 24px 28px rgba(15,23,42,.12)); */
    /* -webkit-mask-image: radial-gradient(ellipse 78% 74% at 54% 52%,#000 58%,rgba(0,0,0,.72) 76%,transparent 100%); */
    /* mask-image: radial-gradient(ellipse 78% 74% at 54% 52%,#000 58%,rgba(0,0,0,.72) 76%,transparent 100%); */
}

/* Common sections */

.section{
    padding:28px 0;
}

.section-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.info-card{
    border-radius:25px;
    background:#fff;
    border:1px solid var(--border);
    padding:28px;
    box-shadow:0 10px 28px rgba(15,23,42,.04);
}

.info-card h3{
    margin:0 0 12px;
    font-size:22px;
}

.info-card p{
    margin:0;
    color:var(--gray);
    line-height:1.5;
}

.av-section{
    padding:38px 0;
}

.av-title{
    max-width:820px;
    margin-bottom:24px;
}

.av-title span{
    display:inline-flex;
    padding:9px 16px;
    border-radius:25px;
    background:var(--blue-light);
    color:var(--blue);
    font-weight:700;
    margin-bottom:14px;
}

.av-title h2{
    margin:0 0 14px;
    font-size:42px;
    line-height:1.12;
    letter-spacing:-1px;
}

.av-title p{
    margin:0;
    color:var(--gray);
    font-size:18px;
    line-height:1.6;
}

.av-grid{
    display:grid;
    gap:24px;
}

.av-grid.two{
    grid-template-columns:repeat(2,1fr);
}

.av-grid.three{
    grid-template-columns:repeat(3,1fr);
}

.av-card{
    border-radius:25px;
    background:#fff;
    border:1px solid var(--border);
    padding:32px;
    box-shadow:0 14px 34px rgba(15,23,42,.05);
}

.av-card h3{
    margin:0 0 14px;
    font-size:24px;
}

.av-card p{
    margin:0;
    color:var(--gray);
    line-height:1.65;
}

.av-card strong,
.text-panel strong{
    color:var(--text);
}

.blue-card{
    background:var(--blue);
    color:#fff;
    border-color:var(--blue);
}

.blue-card p{
    color:rgba(255,255,255,.86);
}

.av-card.note-card{
    background:var(--blue-light);
    border-color:#d8e5ff;
}

.av-card.note-card h3{
    color:var(--blue);
}

.av-card.dark-blue-card{
    background:linear-gradient(135deg,var(--blue),var(--blue-hover));
    border-color:var(--blue);
    color:#fff;
}

.av-card.dark-blue-card p,
.av-card.dark-blue-card li{
    color:rgba(255,255,255,.88);
}

.text-panel{
    border-radius:32px;
    background:linear-gradient(135deg,#ffffff 0%,#f7faff 100%);
    border:1px solid var(--border);
    padding:36px;
    box-shadow:0 16px 44px rgba(15,23,42,.055);
}

.text-panel h3{
    margin:0 0 14px;
    font-size:30px;
    line-height:1.15;
    letter-spacing:-.8px;
}

.text-panel p{
    margin:0;
    font-size:18px;
    line-height:1.7;
    color:var(--gray);
}

.steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.step{
    display:flex;
    align-items:center;
    gap:16px;
    padding:22px;
    border-radius:25px;
    background:#fff;
    border:1px solid var(--border);
    box-shadow:0 10px 28px rgba(15,23,42,.04);
}

.step b{
    width:42px;
    height:42px;
    border-radius:16px;
    background:var(--blue);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.step span{
    font-weight:700;
    line-height:1.35;
}

.process-note{
    margin-top:18px;
    padding:24px 28px;
    border-radius:25px;
    background:var(--blue-light);
    color:var(--text);
    font-weight:700;
    line-height:1.5;
}

.av-card ul{
    margin:0;
    padding-left:20px;
    color:var(--gray);
    line-height:1.8;
}

.include-card{
    background:linear-gradient(135deg,#fff,var(--blue-light));
}

.exclude-card{
    background:#F8FAFC;
}

.faq{
    display:grid;
    gap:16px;
}

.faq-item{
    padding:26px 30px;
    border-radius:25px;
    background:#fff;
    border:1px solid var(--border);
}

.faq-item h3{
    margin:0 0 8px;
    font-size:21px;
}

.faq-item p{
    margin:0;
    color:var(--gray);
    line-height:1.6;
}

.compare-box{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
}

.compare-item{
    border-radius:25px;
    padding:30px;
    background:#fff;
    border:1px solid var(--border);
    box-shadow:0 12px 34px rgba(15,23,42,.045);
}

.compare-item h3{
    margin:0 0 12px;
    font-size:24px;
}

.compare-item p{
    margin:0;
    color:var(--gray);
    line-height:1.65;
}

.final-cta{
    margin-top:34px;
    margin-bottom:40px;
    padding:46px;
    border-radius:32px;
    background:var(--blue);
    color:#fff;
    text-align:center;
}

.final-cta h2{
    margin:0 0 14px;
    font-size:42px;
    letter-spacing:-1px;
}

.final-cta p{
    max-width:760px;
    margin:0 auto 26px;
    color:rgba(255,255,255,.86);
    font-size:18px;
    line-height:1.6;
}

.final-cta .hero-btn{
    background:#fff;
    color:var(--blue);
}



/* Icons — AutoVezu
   SVG лежат локально в /images/icons/
   Используем <img>, поэтому цвет задаём через filter.
*/

:root{
    --icon-blue-filter:brightness(0) saturate(100%) invert(38%) sepia(98%) saturate(3338%) hue-rotate(219deg) brightness(101%) contrast(101%);
    --icon-white-filter:brightness(0) invert(1);
    --icon-red-filter:brightness(0) saturate(100%) invert(33%) sepia(94%) saturate(2103%) hue-rotate(342deg) brightness(93%) contrast(92%);
    --icon-green-filter:brightness(0) saturate(100%) invert(41%) sepia(94%) saturate(519%) hue-rotate(101deg) brightness(91%) contrast(90%);
}

.hero-badge,
.av-title span{
    align-items:center;
    gap:9px;
}

.hero-badge img,
.av-title span img{
    width:18px;
    height:18px;
    display:block;
    object-fit:contain;
    filter:var(--icon-blue-filter);
}

.hero-btn{
    gap:10px;
}

.hero-btn img{
    width:18px;
    height:18px;
    display:block;
    filter:var(--icon-white-filter);
}

.final-cta .hero-btn img{
    filter:var(--icon-blue-filter);
}

.hero-copy-card{
    display:flex;
    align-items:flex-start;
    gap:16px;
}

.hero-copy-icon,
.panel-icon,
.card-icon,
.faq-icon,
.final-icon,
.mini-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    background:linear-gradient(135deg,var(--blue),var(--blue-hover));
    box-shadow:0 12px 26px rgba(31,94,255,.18);
}

.hero-copy-icon{
    width:46px;
    height:46px;
    border-radius:18px;
    margin-top:2px;
}

.hero-copy-icon img{
    width:22px;
    height:22px;
    filter:var(--icon-white-filter);
}

.hero-cards{
    align-items:stretch;
}

.mini-card{
    position:relative;
    min-height:118px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    gap:8px;
    overflow:hidden;
}

.mini-card::after{
    content:"";
    position:absolute;
    right:-24px;
    top:-28px;
    width:86px;
    height:86px;
    border-radius:50%;
    background:rgba(31,94,255,.075);
}

.mini-icon{
    width:42px;
    height:42px;
    border-radius:16px;
    margin-bottom:4px;
}

.mini-icon img{
    width:22px;
    height:22px;
    filter:var(--icon-white-filter);
}

.mini-card strong{
    position:relative;
    z-index:1;
    display:block;
    font-size:20px;
    line-height:1.1;
    color:var(--text);
}

.mini-card span{
    position:relative;
    z-index:1;
}

.icon-panel{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:22px;
    align-items:flex-start;
}

.panel-icon{
    width:64px;
    height:64px;
    border-radius:23px;
}

.panel-icon img{
    width:32px;
    height:32px;
    filter:var(--icon-white-filter);
}

.icon-card{
    position:relative;
    overflow:hidden;
}

.icon-card::after{
    content:"";
    position:absolute;
    right:-42px;
    top:-46px;
    width:132px;
    height:132px;
    border-radius:50%;
    background:rgba(31,94,255,.06);
    pointer-events:none;
}

.dark-blue-card.icon-card::after{
    background:rgba(255,255,255,.12);
}

.card-icon{
    width:56px;
    height:56px;
    border-radius:20px;
    margin-bottom:20px;
}

.card-icon img{
    width:28px;
    height:28px;
    filter:var(--icon-white-filter);
}

.note-card .card-icon,
.include-card .card-icon,
.exclude-card .card-icon,
.compare-item .card-icon,
.av-card:not(.dark-blue-card) .card-icon{
    background:var(--blue-light);
    box-shadow:none;
}

.note-card .card-icon img,
.include-card .card-icon img,
.exclude-card .card-icon img,
.compare-item .card-icon img,
.av-card:not(.dark-blue-card) .card-icon img{
    filter:var(--icon-blue-filter);
}

.card-icon.red-icon{
    background:#FFF1F2 !important;
}

.card-icon.red-icon img{
    filter:var(--icon-red-filter) !important;
}

.step{
    position:relative;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.step:hover{
    transform:translateY(-2px);
    border-color:#d8e5ff;
    box-shadow:0 16px 34px rgba(31,94,255,.08);
}

.step span{
    display:flex;
    align-items:center;
    gap:10px;
}

.step span img{
    width:20px;
    height:20px;
    display:block;
    flex-shrink:0;
    filter:var(--icon-blue-filter);
}

.process-note{
    display:flex;
    align-items:flex-start;
    gap:16px;
}

.process-note img{
    width:26px;
    height:26px;
    flex-shrink:0;
    filter:var(--icon-blue-filter);
}

.icon-list{
    list-style:none;
    padding-left:0 !important;
    display:grid;
    gap:12px;
}

.icon-list li{
    display:flex;
    align-items:flex-start;
    gap:10px;
    line-height:1.55;
}

.icon-list li img{
    width:19px;
    height:19px;
    display:block;
    flex-shrink:0;
    margin-top:3px;
}

.check-list li img{
    filter:var(--icon-green-filter);
}

.x-list li img{
    filter:var(--icon-red-filter);
}

.faq-item{
    display:flex;
    align-items:flex-start;
    gap:18px;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.faq-item:hover{
    transform:translateY(-2px);
    border-color:#d8e5ff;
    box-shadow:0 16px 34px rgba(31,94,255,.08);
}

.faq-icon{
    width:48px;
    height:48px;
    border-radius:18px;
}

.faq-icon img{
    width:24px;
    height:24px;
    filter:var(--icon-white-filter);
}

.final-icon{
    width:68px;
    height:68px;
    border-radius:24px;
    margin:0 auto 22px;
    background:#fff;
    box-shadow:none;
}

.final-icon img{
    width:32px;
    height:32px;
    filter:var(--icon-blue-filter);
}

/* Если какая-то SVG-иконка не загрузилась, блок не ломается */
img[src$=".svg"]{
    max-width:100%;
}

/* Mobile icons */

@media(max-width:980px){
    .icon-panel{
        grid-template-columns:1fr;
        gap:18px;
    }

    .panel-icon{
        width:58px;
        height:58px;
        border-radius:21px;
    }

    .card-icon{
        width:52px;
        height:52px;
        border-radius:19px;
    }

    .step span{
        align-items:flex-start;
    }
}

@media(max-width:560px){
    .hero-badge img,
    .av-title span img{
        width:16px;
        height:16px;
    }

    .hero-copy-card{
        gap:12px;
    }

    .hero-copy-icon{
        width:40px;
        height:40px;
        border-radius:15px;
    }

    .hero-copy-icon img{
        width:20px;
        height:20px;
    }

    .mini-card{
        min-height:auto;
    }

    .mini-icon{
        width:40px;
        height:40px;
        border-radius:15px;
    }

    .faq-item{
        gap:14px;
        padding:22px 20px;
    }

    .faq-icon{
        width:42px;
        height:42px;
        border-radius:16px;
    }

    .process-note{
        gap:12px;
        padding:20px;
    }
}

/* Footer */

.site-footer{
    margin-top:40px;
    padding:36px 0;
    background:#F8FAFC;
}

.footer-logo{
    display:inline-flex;
    padding:12px 22px;
    border-radius:25px;
    background:var(--blue);
    color:#fff;
    font-family:'CyrillicRound', Manrope, Arial, sans-serif;
    font-weight:900;
    letter-spacing:-.3px;
}

.footer-text{
    margin-top:16px;
    color:var(--gray);
}

/* Adaptive */

@media(max-width:980px){
    .header-inner{
        flex-wrap:wrap;
    }

    .main-menu{
        order:3;
        width:100%;
        gap:18px;
    }

    .hero{
        grid-template-columns:1fr;
        padding:34px 24px;
    }

    .hero h1{
        font-size:40px;
    }

    .hero-visual{
        min-height:auto;
        margin-top:10px;
        overflow:hidden;
    }

    .hero-car{
        width:100%;
        max-width:760px;
        transform:none;
        -webkit-mask-image:radial-gradient(ellipse 82% 76% at 50% 52%,#000 62%,rgba(0,0,0,.72) 78%,transparent 100%);
        mask-image:radial-gradient(ellipse 82% 76% at 50% 52%,#000 62%,rgba(0,0,0,.72) 78%,transparent 100%);
    }

    .hero-cards,
    .section-grid,
    .av-grid.two,
    .av-grid.three,
    .steps,
    .compare-box{
        grid-template-columns:1fr;
    }

    .av-title h2,
    .final-cta h2{
        font-size:32px;
    }

    .final-cta{
        padding:34px 22px;
    }

    .text-panel{
        padding:28px 22px;
    }

    .text-panel h3{
        font-size:26px;
    }
}

@media(max-width:560px){
    .container{
        width:min(100% - 28px,1440px);
    }

    .header-right{
        width:100%;
        justify-content:space-between;
    }

    .header-phone{
        font-size:15px;
    }

    .header-btn{
        padding:13px 18px;
    }

    .logo{
        font-size:23px;
    }

    .main-menu{
        font-size:15px;
    }

    .hero{
        padding:28px 20px;
        border-radius:25px;
    }

    .hero h1{
        font-size:34px;
    }

    .hero p{
        font-size:18px;
    }

    .hero-copy-card{
        padding:18px;
        font-size:15px;
    }

    .hero-car{
        max-width:420px;
        transform:none;
    }
}

/* Mobile header / drawer menu — AutoVezu v8
   Без home.svg и favicon.ico. Гамбургер и крестик нарисованы CSS-линиями.
*/

.mobile-menu-toggle,
.mobile-phone-btn,
.mobile-menu-backdrop,
.mobile-drawer{
    display:none;
}

.mobile-menu-toggle,
.mobile-menu-close,
.mobile-phone-btn{
    border:0;
    padding:0;
    margin:0;
    font-family:Manrope,Arial,sans-serif;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
}

.mobile-menu-toggle span,
.mobile-menu-close span{
    display:block;
    position:relative;
}

.mobile-phone-btn img,
.mobile-drawer-phone img{
    display:block;
    object-fit:contain;
}

@media(max-width:980px){
    body.mobile-menu-open{
        overflow:hidden;
    }

    .site-header{
        position:relative;
        z-index:1000;
        padding:14px 0;
        background:#fff;
    }

    .header-inner{
        display:grid;
        grid-template-columns:46px 1fr 46px;
        align-items:center;
        gap:10px;
        flex-wrap:nowrap;
        justify-content:initial;
    }

    .main-menu,
    .header-right{
        display:none !important;
    }

    .mobile-menu-toggle{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:46px;
        height:46px;
        border-radius:18px;
        background:var(--blue-light);
        justify-self:start;
        position:relative;
    }

    .mobile-menu-toggle span,
    .mobile-menu-toggle span::before,
    .mobile-menu-toggle span::after{
        width:22px;
        height:2px;
        border-radius:10px;
        background:var(--blue);
        content:"";
        position:absolute;
        left:50%;
        transform:translateX(-50%);
    }

    .mobile-menu-toggle span{
        top:50%;
        transform:translate(-50%,-50%);
        left:50%;
    }

    .mobile-menu-toggle span::before{
        top:-7px;
    }

    .mobile-menu-toggle span::after{
        top:7px;
    }

    .mobile-phone-btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:46px;
        height:46px;
        border-radius:18px;
        background:var(--blue);
        justify-self:end;
        box-shadow:0 10px 22px rgba(31,94,255,.18);
    }

    .mobile-phone-btn img{
        width:22px;
        height:22px;
        filter:var(--icon-white-filter);
    }

    .logo{
        justify-self:center;
        font-size:24px;
        padding:12px 20px;
        border-radius:22px;
        white-space:nowrap;
    }

    .mobile-menu-backdrop{
        display:block;
        position:fixed;
        inset:0;
        z-index:1100;
        background:rgba(15,23,42,.38);
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        transition:opacity .22s ease, visibility .22s ease;
        backdrop-filter:blur(6px);
        -webkit-backdrop-filter:blur(6px);
    }

    .mobile-drawer{
        display:flex;
        flex-direction:column;
        position:fixed;
        z-index:1110;
        left:0;
        top:0;
        bottom:0;
        width:min(370px,calc(100vw - 28px));
        padding:20px;
        background:#fff;
        border-radius:0 32px 32px 0;
        box-shadow:24px 0 70px rgba(15,23,42,.18);
        transform:translateX(-106%);
        transition:transform .26s ease;
        overflow:auto;
    }

    body.mobile-menu-open .mobile-menu-backdrop{
        opacity:1;
        visibility:visible;
        pointer-events:auto;
    }

    body.mobile-menu-open .mobile-drawer{
        transform:translateX(0);
    }

    .mobile-drawer-top{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:14px;
        margin-bottom:24px;
    }

    .mobile-drawer-logo{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:12px 20px;
        border-radius:22px;
        background:var(--blue);
        color:#fff;
        font-family:'CyrillicRound', Manrope, Arial, sans-serif;
        font-weight:900;
        font-size:23px;
        line-height:1;
        letter-spacing:.3px;
        box-shadow:0 10px 24px rgba(31,94,255,.2);
    }

    .mobile-menu-close{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:44px;
        height:44px;
        border-radius:17px;
        background:var(--blue-light);
        flex-shrink:0;
        position:relative;
    }

    .mobile-menu-close span::before,
    .mobile-menu-close span::after{
        content:"";
        position:absolute;
        left:50%;
        top:50%;
        width:22px;
        height:2px;
        border-radius:10px;
        background:var(--blue);
    }

    .mobile-menu-close span::before{
        transform:translate(-50%,-50%) rotate(45deg);
    }

    .mobile-menu-close span::after{
        transform:translate(-50%,-50%) rotate(-45deg);
    }

    .mobile-drawer-nav{
        display:grid;
        gap:10px;
    }

    .mobile-drawer-nav a{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:14px;
        padding:17px 18px;
        border-radius:22px;
        background:#F8FAFC;
        border:1px solid var(--border);
        color:var(--text);
        font-size:18px;
        font-weight:800;
    }

    .mobile-drawer-nav a::after{
        content:"›";
        color:var(--blue);
        font-size:28px;
        line-height:1;
        font-weight:700;
    }

    .mobile-drawer-nav a:active{
        background:var(--blue-light);
        color:var(--blue);
    }

    .mobile-drawer-contact{
        margin-top:auto;
        padding-top:26px;
        display:grid;
        gap:12px;
    }

    .mobile-drawer-phone{
        display:flex;
        align-items:center;
        justify-content:center;
        gap:10px;
        padding:15px 18px;
        border-radius:22px;
        background:var(--blue-light);
        color:var(--blue);
        font-size:17px;
        font-weight:900;
    }

    .mobile-drawer-phone img{
        width:20px;
        height:20px;
        filter:var(--icon-blue-filter);
    }

    .mobile-drawer-btn{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:100%;
        border:0;
        border-radius:22px;
        background:var(--blue);
        color:#fff;
        padding:16px 20px;
        font-family:Manrope,Arial,sans-serif;
        font-size:17px;
        font-weight:900;
        cursor:pointer;
        box-shadow:0 12px 26px rgba(31,94,255,.2);
    }
}

@media(max-width:560px){
    .site-header{
        padding:12px 0;
    }

    .header-inner{
        grid-template-columns:42px 1fr 42px;
        gap:8px;
    }

    .mobile-menu-toggle,
    .mobile-phone-btn{
        width:42px;
        height:42px;
        border-radius:16px;
    }

    .mobile-phone-btn img{
        width:20px;
        height:20px;
    }

    .logo{
        font-size:20px;
        padding:11px 16px;
        border-radius:20px;
        letter-spacing:.2px;
    }

    .mobile-drawer{
        width:min(350px,calc(100vw - 20px));
        padding:18px;
        border-radius:0 28px 28px 0;
    }

    .mobile-drawer-logo{
        font-size:21px;
        padding:11px 17px;
    }

    .mobile-drawer-nav a{
        padding:15px 16px;
        font-size:17px;
    }
}
