/* AURUM ESTATE: главная страница, мобильная версия.
   Подключается ПОСЛЕ aurum-split.css. Всё, что меняет внешний вид, живёт внутри @media (max-width:768px),
   поэтому десктоп остаётся как был. */

/* элементы, которые существуют только на телефоне */
.qk, .dots, .mbar{ display:none; }

@media (max-width:768px){
    :root{ --hh:60px; --ease:cubic-bezier(.22,1,.36,1); }
    html{ scroll-padding-top:72px; }
    body{ padding-bottom:calc(74px + env(safe-area-inset-bottom, 0px)); }

    @keyframes mRise{ from{ opacity:0; transform:translateY(14px); } }

    /* =================================================================
       ПЕРВЫЙ ЭКРАН: кто вы → куда идти. Без пустот и лишнего текста
       ================================================================= */
    .hero{ height:auto; min-height:0; justify-content:flex-start; padding:calc(var(--hh) + 30px) 5% 26px; }
    .hero-content{ margin-top:0; }
    .hero-title{ font-size:clamp(2.4rem,13.5vw,3.6rem); line-height:.92; letter-spacing:-.02em; margin-bottom:14px; }
    .hero-subtitle{ font-size:.98rem; line-height:1.5; max-width:none; }
    .d-only{ display:none; }

    .hero-doors{ grid-template-columns:1fr; gap:10px; margin-top:22px; }
    .door{ padding:15px 16px; gap:6px; border-radius:16px; background:rgba(14,14,17,.84); -webkit-backdrop-filter:none; backdrop-filter:none; transition:transform .25s var(--ease), border-color .3s ease, background .3s ease; }
    .door:active{ transform:scale(.985); }
    .door b{ font-size:.98rem; }
    .door span{ font-size:.84rem; line-height:1.4; }

    /* быстрые входы в каталог: лента чипов */
    .qk{
        display:flex; gap:8px; margin:16px -5% 0; padding:2px 5% 4px; overflow-x:auto;
        scroll-snap-type:x proximity; scroll-padding-left:5%; scrollbar-width:none; -webkit-overflow-scrolling:touch;
        -webkit-mask-image:linear-gradient(90deg,#000 88%,transparent); mask-image:linear-gradient(90deg,#000 88%,transparent);
    }
    .qk::-webkit-scrollbar{ display:none; }
    .qk a{
        flex:none; display:inline-flex; align-items:center; min-height:42px; padding:0 16px; scroll-snap-align:start;
        border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(10,10,12,.5);
        font:600 .86rem 'Inter',sans-serif; color:#fff; white-space:nowrap; transition:border-color .25s ease, background .25s ease;
    }
    .qk a:active{ background:rgba(212,175,55,.15); border-color:var(--gold); }
    .qk a.promo{ color:#ffd23f; border-color:rgba(255,210,63,.45); background:rgba(255,210,63,.1); }

    .hero-stats{ margin-top:20px; padding-top:14px; gap:28px; }
    .stat-item h4{ font-size:1.5rem; margin-bottom:2px; }

    /* =================================================================
       КАТАЛОГ: сначала лоты, потом пояснение про закрытые
       ================================================================= */
    #catalog{ display:flex; flex-direction:column; padding:44px 4% 36px; }
    #catalog > .section-header{ order:0; margin-bottom:18px; }
    #catalog .cat-head{ order:1; display:block; margin-bottom:18px; }
    #catalog .cat-head h2{ font-size:1.7rem; line-height:1.08; }
    #catalog .cat-head p{ margin-top:10px; font-size:.9rem; max-width:none; }
    #catGrid{ order:2; }
    #catalog .dots{ order:3; }
    #catalog .cat-all{ order:4; margin-top:16px; }
    #catalog .cat-note{ order:5; margin:24px 0 0; padding:18px 16px; flex-direction:column; align-items:stretch; gap:14px; border-radius:var(--r-md); }
    #catalog .cat-note p{ font-size:.9rem; }
    #catalog .cat-note .header-btn{ justify-content:center; min-height:50px; border-radius:12px; }

    #catGrid.top3{
        display:flex; gap:12px; margin:0 -4%; padding:2px 4% 10px; overflow-x:auto;
        scroll-snap-type:x mandatory; scroll-padding-left:4%; scrollbar-width:none; -webkit-overflow-scrolling:touch;
    }
    #catGrid.top3::-webkit-scrollbar{ display:none; }
    #catGrid.top3 > .cat-card{ flex:0 0 82%; max-width:340px; scroll-snap-align:start; }
    #catGrid.top3 > .cat-empty{ flex:0 0 100%; }
    #catGrid .cat-card:hover{ transform:none; }
    #catGrid .cat-card.topc .cat-excerpt{ display:none; }
    #catGrid .cat-body{ padding:16px 16px 18px; }

    /* точки под каруселями */
    .dots{ display:flex; justify-content:center; gap:8px; margin-top:6px; min-height:7px; }
    .dots[hidden]{ display:none; }
    .dots i{ width:7px; height:7px; border-radius:50%; background:#3a3a40; transition:width .3s var(--ease), background .3s ease; }
    .dots i.on{ width:22px; border-radius:6px; background:var(--gold); }

    /* плашка «Новая квартира за вами» */
    .teaser-wrap{ padding:0; }
    #terms .cta-band{ margin:28px 4% 0 !important; padding:24px 18px; }
    #terms .cta-band h2{ font-size:1.45rem; }
    #terms .cta-chips{ flex-wrap:nowrap; margin:16px -18px 0; padding:0 18px; overflow-x:auto; scrollbar-width:none; }
    #terms .cta-chips::-webkit-scrollbar{ display:none; }
    #terms .chip{ flex:none; }

    /* =================================================================
       ПРОЕКТЫ
       ================================================================= */
    .projects{ padding:44px 0 36px; }
    .projects-title{ font-size:1.7rem; margin-bottom:18px; }
    .projects-grid{ padding-bottom:6px; }
    .proj-card{ --desc-lines:3; flex-basis:min(80vw,340px); }
    .projects .dots{ margin-top:12px; }

    /* =================================================================
       О КОМПАНИИ: тезисы раскрываются по тапу, а не стоят стеной текста
       ================================================================= */
    .sticky-curtain{ padding:44px 5% 36px; }
    .phil-main-title{ font-size:1.55rem; line-height:1.15; }
    .philosophy-content{ gap:22px; }
    .phil-acc .phil-card{ cursor:pointer; -webkit-tap-highlight-color:transparent; padding:18px 0; }
    .phil-acc .phil-card .phil-lead{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:0; font-size:1.05rem; }
    .phil-acc .phil-card .phil-lead::after{ content:""; flex:none; width:9px; height:9px; margin-right:4px; border-right:2px solid var(--gold); border-bottom:2px solid var(--gold); transform:rotate(45deg); transition:transform .3s var(--ease); }
    .phil-acc .phil-card.open .phil-lead::after{ transform:rotate(-135deg); }
    .phil-acc .phil-card .phil-sub{ max-height:0; margin:0; overflow:hidden; opacity:0; transition:max-height .45s var(--ease), opacity .3s ease, margin .3s ease; }
    .phil-acc .phil-card.open .phil-sub{ max-height:260px; margin-top:8px; opacity:1; }

    /* сравнение и калькулятор уже адаптированы, подтягиваем отступы */
    .compare-wrap{ margin:28px 4% 36px; }

    /* =================================================================
       КОМАНДА, ПАРТНЁРЫ, КОНТАКТЫ
       ================================================================= */
    #team{ padding:44px 0 36px; }
    .team-member img{ height:310px; }
    .team-dots{ margin-top:4px; }
    #partners{ padding-top:36px; padding-bottom:36px; }
    #contacts{ padding:44px 5% 36px; }
    .contact-info h2{ font-size:1.7rem; }
    .office-map{ min-height:220px; height:220px; }

    /* =================================================================
       НИЖНЯЯ ПАНЕЛЬ ДЕЙСТВИЙ
       ================================================================= */
    .mbar{
        position:fixed; left:0; right:0; bottom:0; z-index:900; display:grid; grid-template-columns:1fr 1fr 1.4fr; gap:8px;
        padding:10px 4% calc(10px + env(safe-area-inset-bottom, 0px));
        background:rgba(10,10,12,.97); border-top:1px solid var(--border);
        transform:translateY(110%); transition:transform .4s var(--ease), bottom .3s ease;
    }
    .mbar.show{ transform:none; }
    .mbar a{
        display:flex; align-items:center; justify-content:center; gap:6px; min-height:48px; padding:0 6px;
        border:1px solid rgba(255,255,255,.22); border-radius:12px; color:#fff;
        font:800 .72rem 'Montserrat',sans-serif; text-transform:uppercase; letter-spacing:.2px; white-space:nowrap;
    }
    .mbar a:hover{ color:#fff; }
    .mbar a svg{ width:17px; height:17px; flex:none; fill:none; stroke:var(--gold); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
    .mbar .m-req{ background:var(--gold); border-color:var(--gold); color:#000; box-shadow:0 4px 15px rgba(212,175,55,.3); }
    .mbar .m-req:hover{ color:#000; }
    html.menu-lock .mbar{ visibility:hidden; }
}

@media (max-width:360px){
    .hero-title{ font-size:2.3rem; }
    .mbar a{ font-size:.66rem; gap:4px; }
    .mbar a svg{ display:none; }
}
