
/* fx-wide-css */
/* прячем старую шапку внутри hero-блока Tilda */
#rec1547728371 .tn-elem[data-elem-id="1762804137358"],
#rec1547728371 .tn-elem[data-elem-id="1762805181958"],
#rec1547728371 .tn-elem[data-elem-id="176280494909995040"],
#rec1547728371 .tn-elem[data-elem-id="176280495098225140"],
#rec1547728371 .tn-elem[data-elem-id="1762804939343"],
#rec1547728371 .tn-elem[data-elem-id="1762805537906"],
#rec1547728371 .tn-elem[data-elem-id="176280557571955280"],
#rec1547728371 .tn-elem[data-elem-id="1762804968461"],
#rec1547728371 .tn-elem[data-elem-id="176280500506377470"]{display:none !important}

/* галерея проектов листается стрелками и перетаскиванием — своя полоса не нужна */
#rec1549075831 .t396__artboard{scrollbar-width:none;-ms-overflow-style:none}
#rec1549075831 .t396__artboard::-webkit-scrollbar{display:none;width:0;height:0}
/* скроллбар в палитре сайта; элементы, которые прячут его сами
   (.fx-hd__links и попапы), специфичнее и остаются без полосы */
/* Firefox понимает только стандартные свойства; в Chrome они отключают
   ::-webkit-scrollbar, поэтому там оставляем вебкитовские — со скруглением и ховером */
@supports not selector(::-webkit-scrollbar){
  html{scrollbar-width:thin;scrollbar-color:#2f2f3a #0d0d0f}
}
::-webkit-scrollbar{width:11px;height:11px}
::-webkit-scrollbar-track{background:#0d0d0f}
::-webkit-scrollbar-thumb{background:#2a2a33;border:2px solid #0d0d0f;border-radius:8px}
::-webkit-scrollbar-thumb:hover{background:#e9c46a}
::-webkit-scrollbar-corner{background:#0d0d0f}
.fx-hd{position:sticky;top:0;z-index:9990;background:#0d0d0f;font-family:'TildaSans',Arial,sans-serif;
  border-bottom:1px solid #1e1e24;box-shadow:0 2px 24px rgba(0,0,0,.45)}
.fx-hd__in{max-width:1680px;margin:0 auto;padding:10px 80px;box-sizing:border-box}
@media(max-width:1679px){.fx-hd__in{max-width:1200px;padding:8px 20px}}
@media(max-width:1199px){.fx-hd__in{max-width:960px}}

/* верхняя строка */
.fx-hd__top{display:flex;align-items:center;gap:28px;padding:14px 0;min-height:44px}
.fx-hd__logo{flex:0 0 auto;display:block}
.fx-hd__logo img{height:26px;width:auto;display:block}

.fx-city{position:relative;flex:0 0 auto}
.fx-city__btn{display:flex;align-items:center;gap:6px;background:none;border:0;cursor:pointer;padding:0;
  color:#fff;font:600 15px/1.2 'TildaSans',Arial,sans-serif}
.fx-city__btn svg{flex:0 0 auto}
.fx-city__cap{display:block;margin-top:3px;color:#8b8b96;font-size:12px;font-weight:400}
.fx-city__pop{position:absolute;top:calc(100% + 14px);left:-16px;display:none;background:#141418;
  border:1px solid #26262e;border-radius:14px;padding:16px;width:640px;max-width:78vw;
  box-shadow:0 18px 50px rgba(0,0,0,.6);z-index:20}
.fx-city__pop.is-open{display:block}
.fx-city__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px 14px;max-height:52vh;overflow:auto}
@media(max-width:959px){.fx-city__grid{grid-template-columns:repeat(2,1fr)}}
.fx-city__grid a{color:#c9c9d1 !important;text-decoration:none !important;font-size:14px;padding:4px 6px;border-radius:7px;display:block}
.fx-city__grid a:hover{color:#fff !important;background:#1f1f26}
.fx-city__grid a.is-cur{color:#111 !important;background:#e9c46a;font-weight:600}


.fx-hd__spacer{flex:1 1 auto}

/* поиск по сайту (в середине верхней строки) */
.fx-hd__search{flex:1 1 auto;max-width:440px;margin:0 10px;position:relative}
.fx-hd__search form{display:flex;align-items:center;background:#16161a;border:1px solid #26262e;border-radius:24px;padding:0 6px 0 14px;transition:.2s}
.fx-hd__search form:focus-within{border-color:#e9c46a}
.fx-hd__search input{flex:1 1 auto;min-width:0;background:none;border:0;outline:none;color:#fff;font:400 14px/1 'TildaSans',Arial,sans-serif;padding:11px 8px 11px 0}
.fx-hd__search input::placeholder{color:#7d7d88}
.fx-hd__search button{flex:0 0 auto;background:none;border:0;cursor:pointer;padding:6px;display:flex}
.fx-srch-pop{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#141418;border:1px solid #26262e;border-radius:12px;padding:6px;max-height:64vh;overflow:auto;display:none;box-shadow:0 18px 50px rgba(0,0,0,.6);z-index:30}
.fx-srch-pop.is-open{display:block}
.fx-srch-pop a{display:block;color:#d8d8dd !important;text-decoration:none !important;padding:9px 12px;border-radius:8px;font-size:13.5px;line-height:1.35}
.fx-srch-pop a:hover,.fx-srch-pop a.is-hl{background:#1f1f26;color:#fff !important}
.fx-srch-pop .fx-srch-g{color:#8b8b96;font-size:12px}
.fx-srch-pop .fx-srch-empty{color:#8b8b96;padding:10px 12px;font-size:13px}
@media(max-width:1279px){.fx-hd__search{max-width:300px}}
@media(max-width:959px){.fx-hd__search{display:none}}

.fx-hd__msg{display:flex;gap:8px;flex:0 0 auto}
.fx-hd__msg a{width:39px;height:39px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:#1b1b21;transition:.2s;overflow:hidden}
.fx-hd__msg a:hover{background:#26262e}
.fx-hd__msg img{width:39px;height:39px;display:block;object-fit:cover}

/* выпадающее меню «Услуги» (слева от категорий) */
.fx-svc{position:relative;flex:0 0 auto}
.fx-svc__btn{display:inline-flex;align-items:center;gap:9px;background:#1b1b21;color:#e9c46a;border:0;cursor:pointer;
  font:700 12.5px/1 'TildaSans',Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;padding:14px 20px}
.fx-svc__btn:hover{background:#24242c}
.fx-svc__pop{position:absolute;top:100%;left:0;display:none;background:#141418;border:1px solid #26262e;border-radius:12px;
  padding:8px;min-width:290px;box-shadow:0 18px 50px rgba(0,0,0,.6);z-index:25}
.fx-svc__pop.is-open{display:block}
.fx-svc__pop a{display:block;color:#d8d8dd !important;text-decoration:none !important;padding:10px 12px;border-radius:8px;font-size:13.5px;text-transform:none;letter-spacing:0;font-weight:600}
.fx-svc__pop a:hover{background:#1f1f26;color:#fff !important}
.fx-cat__pop{min-width:560px}
.fx-cat__pop.is-open{display:grid;grid-template-columns:1fr 1fr;gap:0 6px}
.fx-cat__pop .fx-cat__all{grid-column:1/-1;color:#e9c46a !important;border-bottom:1px solid #26262e;
  border-radius:8px 8px 0 0;margin-bottom:4px}

.fx-hd__tel{flex:0 0 auto;text-align:right;line-height:1.15}
.fx-hd__tel span{display:block;color:#8b8b96;font-size:12px;margin-bottom:2px}
.fx-hd__tel a{color:#fff !important;text-decoration:none !important;font-size:19px;font-weight:700;white-space:nowrap}

.fx-hd__cta{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(0.288turn,#d1b054 0%,#ffe5a6 50%,#d1b054 97%);
  color:#1d1d1d !important;text-decoration:none !important;font-size:13px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:13px 24px;border-radius:30px;transition:.2s;white-space:nowrap}
.fx-hd__cta:hover{box-shadow:0 0 26px rgba(255,243,131,.45)}

/* строка меню */
.fx-hd__nav{border-top:1px solid #1a1a20}
.fx-hd__navin{display:flex;align-items:center;gap:24px;padding:0}
.fx-nav__pill{display:inline-flex;align-items:center;gap:9px;background:#1b1b21;color:#e9c46a !important;
  text-decoration:none !important;font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;
  padding:14px 20px;border:0;cursor:pointer;font-family:inherit;border-radius:0}
.fx-nav__pill:hover{background:#24242c}
.fx-hd__links{display:flex;align-items:center;gap:22px;padding-left:0;overflow-x:auto;scrollbar-width:none}
.fx-hd__cats{gap:10px 20px;flex-wrap:wrap;padding:4px 0}
.fx-hd__cats a{font-size:11.5px;letter-spacing:.04em;padding:9px 0}
.fx-hd__links::-webkit-scrollbar{display:none}
.fx-hd__links a{color:#c2c2cb !important;text-decoration:none !important;font-size:12.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:14px 0;transition:.2s}
.fx-hd__links a:hover{color:#e9c46a !important}
/* шапка на десктопе тянется по окну до 1800px: базовые правила зажимали её
   в 1200px (до 1679px) и в 1680px выше */
/* 960-1199px: десктопная строка шапки не помещалась и уезжала за экран —
   прячем кнопку-CTA (телефон и мессенджеры остаются) и ужимаем поиск */
@media(min-width:960px) and (max-width:1199px){
  .fx-hd__cta{display:none}
  .fx-hd__top{gap:16px}
  .fx-hd__search{max-width:280px}
}
@media(min-width:1200px){
  /* содержимое шапки по краям плашки футера: та ограничена 1700px,
     поэтому здесь 1700 + боковые паддинги */
  .fx-hd__in{max-width:1780px !important;margin-left:auto;margin-right:auto;
    padding-left:40px !important;padding-right:40px !important}
  .fx-hd__navin{padding-left:0;padding-right:0}
  /* строка с логотипом и телефоном должна занимать всю ширину: свободное место
     забирает поиск, иначе кнопка «Рассчитать» упирается в старые 1360px */
  .fx-hd__search{max-width:none}
}
@media(min-width:1680px){
  .fx-hd__in{max-width:1820px !important;padding-left:60px !important;padding-right:60px !important}
}
/* Одна колонка на всю страницу. Блоки Tilda верстались зеркалом и держат свою
   ширину, которая масштабируется от окна, поэтому её вычисляет fx-col-js и кладёт
   в --fx-col, а наши секции просто наследуют это значение. */
/* Ступени сетки Tilda: колонка известна заранее, поэтому задаётся CSS —
   иначе до отработки fx-col-js страница рисуется широкой и «схлопывается».
   fx-col-js только уточняет значение, если блоки страницы отличаются. */
:root{--fx-col:742px}
@media(min-width:1200px){:root{--fx-col:1160px}}
@media(min-width:1680px){:root{--fx-col:1520px}}
@media(min-width:960px){
  .geo-seo__in,.fx-cont,.why__in,.wrap{max-width:var(--fx-col) !important;
    padding-left:0 !important;padding-right:0 !important;
    margin-left:auto !important;margin-right:auto !important}
  .cta-block{max-width:var(--fx-col) !important;margin-left:auto !important;margin-right:auto !important}
}
/* 960–1199: восемь пунктов с полной подписью «Вопросы и ответы» не влезают
   в колонку 742px — поджимаем кегль, межбуквенный интервал и отступы строки */
@media(min-width:960px) and (max-width:1199px){
  /* на планшетной ширине в верхней строке тесно: телефон убираем,
     звонок остаётся с мессенджеров и кнопки «Рассчитать» */
  .fx-hd__tel{display:none}
  .fx-hd__links a{font-size:11.5px;letter-spacing:.02em}
  .fx-hd__navin{gap:10px}
  .fx-svc__btn{font-size:11.5px;letter-spacing:.02em;padding-left:14px;padding-right:14px;gap:7px}
}
/* десктоп: пункты разделов занимают всю оставшуюся ширину строки,
   от кнопки «Услуги» до правого края контейнера */
@media(min-width:960px){
  .fx-hd__info{flex:1 1 auto;justify-content:space-between;gap:0;overflow:visible}
}

.fx-hd__burger{display:none;margin-left:auto;background:none;border:0;cursor:pointer;padding:8px}
.fx-hd__burger span{display:block;width:22px;height:2px;background:#fff;margin:4px 0;border-radius:2px}

@media(max-width:1199px){
  .fx-hd__tel a{font-size:17px}
}
/* блок, который на мобильном уезжает в бургер */
.fx-hd__mob{display:none}
.fx-mob-city summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;color:#fff;
  font-size:14px;padding:14px 0;border-top:1px solid #1d1d24}
.fx-mob-city summary::-webkit-details-marker{display:none}
.fx-mob-city summary b{color:#e9c46a;font-weight:700}
.fx-mob-city__grid{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;padding:0 0 12px}
.fx-mob-city__grid a{color:#c2c2cb !important;text-decoration:none !important;font-size:13.5px;padding:7px 0}
.fx-mob-city__grid a.is-cur{color:#e9c46a !important}
.fx-mob-tel{display:block;color:#fff !important;text-decoration:none !important;font-size:22px;font-weight:800;
  padding:14px 0 6px;border-top:1px solid #1d1d24}
.fx-mob-msg{display:flex;gap:10px;padding:6px 0 14px}
.fx-mob-msg a{display:inline-flex;align-items:center;gap:8px;background:#1b1b21;color:#e9c46a !important;
  text-decoration:none !important;border-radius:30px;padding:9px 16px;font-size:13px;font-weight:700}
.fx-mob-msg img{width:20px;height:20px;border-radius:50%;object-fit:cover}
.fx-mob-cta{display:block;text-align:center;background:linear-gradient(0.288turn,#d1b054 0%,#ffe5a6 50%,#d1b054 97%);
  color:#1d1d1d !important;text-decoration:none !important;font-size:13px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;padding:15px 20px;border-radius:30px;margin:0 0 16px}

@media(max-width:959px){
  .fx-hd__top{gap:14px;padding:10px 0}
  /* телефон и выбор города уезжают в бургер */
  .fx-hd__cta,.fx-hd__msg,.fx-hd__tel,.fx-city{display:none}
  .fx-hd__mob{display:block}
  .fx-hd__burger{display:block}
  .fx-hd__nav{display:none}
  /* меню выпадает поверх страницы: в потоке оно сдвигало контент вниз */
  .fx-hd__nav.is-open{display:block;position:absolute;top:100%;left:0;right:0;
    max-height:78vh;overflow-y:auto;overscroll-behavior:contain;background:#0d0d0f;
    border-bottom:1px solid #1e1e24;box-shadow:0 24px 44px rgba(0,0,0,.55)}
  .fx-hd__navin{flex-direction:column;align-items:stretch}
  .fx-hd__links{flex-direction:column;align-items:flex-start;gap:0;padding:0 0 10px}
  .fx-hd__links a{padding:11px 0}
  .fx-city__cap{display:none}
  /* «Каталог» и «Услуги» — сворачиваемые пункты, а не два развёрнутых списка:
     иначе меню начиналось с 15 ссылок, и до разделов надо было листать */
  .fx-svc{width:100%}
  .fx-svc__btn{display:flex;width:100%;align-items:center;justify-content:flex-start;
    background:none;padding:12px 0;font-size:12.5px;letter-spacing:.06em}
  .fx-svc__btn:hover{background:none}
  .fx-svc__btn::after{content:"";flex:0 0 auto;margin-left:auto;width:7px;height:7px;
    border-right:2px solid #e9c46a;border-bottom:2px solid #e9c46a;
    transform:rotate(45deg) translateY(-2px);transition:transform .2s}
  .fx-svc__btn[aria-expanded="true"]::after{transform:rotate(-135deg) translateY(-2px)}
  .fx-svc__pop{position:static;display:none;border:0;box-shadow:none;padding:0 0 6px 14px;min-width:0;background:none}
  .fx-svc__pop.is-open{display:block}
  .fx-svc__pop a{padding:11px 0;color:#e9c46a !important;text-transform:uppercase;letter-spacing:.06em;font-size:12.5px}
  .fx-cat__pop{min-width:0}
  .fx-cat__pop .fx-cat__all{border-bottom:0;margin:0}
}
