/* ============================================================
   fcc-footer.css — десктопный подвал (этап 1: сетка разделов).
   Среда: staging. Скоуп: только десктоп (min-width: 851px).
   Брейкпоинт 851/850 взят из темы (совпадает с существующими
   media-запросами подвала), чтобы не было ширины, где видны
   оба подвала сразу.

   Логика этапа A (согласовано с заказчиком 05.08.2026):
   - На десктопе (min-width:851) показывается НОВАЯ сетка .footer__grid,
     а старые десктопные блоки .footer__coinfo > ul.footer-menu и
     .footer__nav СКРЫТЫ (display:none). Старый блок остаётся в DOM,
     потому что он же обслуживает МОБИЛЬНЫЙ подвал (разметка общая,
     аккордеон на .dropdown-toggle/.footer-submenu). Он будет удалён
     на этапе мобильной версии — тогда исчезнет и дубль ссылок.
   - Селекторы строго точечные: .footer-menu используется в шаблоне
     дважды (второе вхождение — Terms & Conditions в блоке контактов),
     поэтому целимся ТОЛЬКО в .footer__coinfo > ul.footer-menu.
   - Ширина 640px переопределена точечно (footer .footer__container),
     не глобально. Текст выравнен по левому краю явно.
   - Наезд формы .main-help__box НЕ компенсируется числом: сетка идёт
     естественным потоком ниже блока контактов, который и занимает
     левую зону под формой (§2.1 ТЗ).

   Для прода: файл лежит в public_html/css/ (вне git). Завести копию
   в resources/css/ и подключить через сборку либо прописать
   копирование в деплой (см. передаточную записку).

   Подключение (в head, после стилей темы):
   <link rel="stylesheet" href="{{ asset('css/fcc-footer.css') }}?v=1">
   ============================================================ */

/* Theme duplicate blocks: our own NLA/IATA + cards now render at all widths, so kill the theme copies everywhere (was desktop-only). */
footer .footer__box--index { display: none !important; }
footer .cards { display: none !important; }

/* --- footer repair v12: hide theme dup logo & copy at all widths --- */
footer .footer__logo { display: none !important; }
footer .copy-row .copy { display: none !important; }
/* P2: hide floating WhatsApp while footer is on screen (class set by fcc-footer-acc.js) */
body.fcc-footer-inview #fcc-wa-float { display: none !important; }
/* P5: address note (24/7) on its own line at all widths */
footer .fcc-topinfo__addr .fcc-addr-note { display: block; }

@media (min-width: 1200px) {

  /* --- расширяем подвал (точечно, только контейнер подвала) --- */
  footer .footer__top .m_inb { max-width: 1230px; }
  footer .footer__container {
    max-width: 1230px;
    width: 100%;
    text-align: left;
  }
  footer .footer__box--index { text-align: left; }

  /* --- прячем СТАРЫЕ десктопные блоки (остаются для мобильного) --- */
  /* строго: только меню внутри .footer__coinfo, НЕ Terms&Conditions */
  footer .footer__coinfo > ul.footer-menu { display: none; }
  footer .footer__nav { display: none; }

  /* --- §2.1: прячем старый лого и старый блок контактов на десктопе (остаются для мобильного) --- */
  footer .footer__container > a.footer__logo { display: none; }
  footer .footer__contacts { display: none; }

  /* --- §2.1: новый верхний блок (контакты и доверие) --- */
  footer .fcc-topinfo { display: block; text-align: left; max-width: 320px; }
  footer .fcc-topinfo__logo {
    height: 58px; width: auto; display: block; margin: 0 0 22px;
    filter: brightness(0) invert(1);
  }
  footer .fcc-topinfo__gt {
    color: #c9a961; font-size: 10px; font-weight: 600;
    text-transform: uppercase; letter-spacing: .16em; margin: 0 0 10px;
  }
  footer .fcc-topinfo__contacts { list-style: none; padding: 0; margin: 0 0 16px; }
  footer .fcc-topinfo__contacts li { margin: 0 0 6px; }
  footer .fcc-topinfo__contacts a { color: #e6e3dc; font-size: 14px; text-decoration: none; }
  footer .fcc-topinfo__contacts a:hover { color: #c9a961; }
  footer .fcc-topinfo__addr { color: #8b8880; font-size: 12.5px; line-height: 1.55; margin: 0 0 20px; }
  footer .fcc-topinfo__quote {
    display: inline-block; border: 1px solid #a8863a; color: #c9a961;
    font-size: 12px; letter-spacing: .06em; text-transform: uppercase;
    padding: 11px 20px; text-decoration: none; margin: 0 0 26px;
    transition: background-color .2s, color .2s;
  }
  footer .fcc-topinfo__quote:hover { background-color: #a8863a; color: #fff; }
  footer .fcc-topinfo__partners { display: flex; gap: 16px; align-items: center; }
  footer .fcc-topinfo__pbox {
    width: 130px; height: 48px; display: flex;
    align-items: center; justify-content: flex-start;
  }
  footer .fcc-topinfo__pbox img {
    max-width: 130px; max-height: 48px; width: auto; height: auto;
    object-fit: contain; filter: none;
  }

  /* --- новая сетка 4 колонок --- */
  footer .footer__grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr;
    gap: 34px 40px;
    margin-top: 52px;
    clear: both;
    text-align: left;
  }
  footer .footer__grid .footer__col { min-width: 0; }

  footer .footer__grid .footer__colh {
    display: block;
    color: #c9a961;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .14em;
    margin: 0 0 15px;
    text-decoration: none;
  }
  footer .footer__grid .footer__colh:hover { color: #e0c584; }

  footer .footer__grid .footer__collist {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  footer .footer__grid .footer__collist li { margin: 0 0 9px; }
  footer .footer__grid .footer__collist a {
    color: #cfccc4;
    font-size: 13.5px;
    line-height: 1.35;
    text-decoration: none;
  }
  footer .footer__grid .footer__collist a:hover { color: #fff; }

  /* колонка услуг — две подколонки */
  footer .footer__grid .footer__collist--two {
    column-count: 2;
    column-gap: 26px;
  }
  footer .footer__grid .footer__collist--two li { break-inside: avoid; }

  /* подгруппы Airports с серыми подзаголовками (обычный текст, не ссылка) */
  footer .footer__grid .footer__subgroup { margin-bottom: 18px; }
  footer .footer__grid .footer__sublabel {
    display: block;
    color: #8b8880;
    font-size: 10.5px;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin: 0 0 9px;
  }

  /* --- §2.3–§2.5: строки под сеткой (десктоп) --- */
  footer .fcc-footrow { border-top: 1px solid rgba(255,255,255,.08); padding: 16px 0; font-size: 13px; line-height: 1.9; color: #8b8880; }
  footer .fcc-footrow--cities { margin-top: 22px; }
  footer .fcc-footrow__title { display: inline-block; color: #c9a961; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .16em; margin-right: 14px; text-decoration: none; }
  footer a.fcc-footrow__title:hover { color: #e0c079; }
  footer .fcc-footrow > a:not(.fcc-footrow__title), footer .fcc-footrow .fcc-legal__terms a { color: #c9c6bf; text-decoration: none; }
  footer .fcc-footrow > a:not(.fcc-footrow__title):hover, footer .fcc-footrow .fcc-legal__terms a:hover { color: #fff; }
  footer .fcc-sep { color: #5a5852; margin: 0 8px; }

  footer .fcc-footrow__payments { display: flex; justify-content: space-between; align-items: center; padding: 16px 0; border-top: 1px solid rgba(255,255,255,.08); }
  footer .fcc-footrow__cards { display: flex; align-items: center; gap: 14px; }
  footer .fcc-footrow__cardslabel { color: #8b8880; font-size: 12px; }
  footer .fcc-footcards { display: inline-flex; align-items: center; gap: 8px; }
  footer .fcc-footcards svg { height: 20px; width: auto; filter: none; color: #e6e3dc; }
  footer .fcc-footrow__social { display: flex; gap: 10px; }
  footer .fcc-social { width: 31px; height: 31px; border: 1px solid rgba(255,255,255,.32); border-radius: 50%; display: flex; align-items: center; justify-content: center; text-decoration: none; transition: border-color .2s; }
  footer .fcc-social:hover { border-color: #c9a961; }
  footer .fcc-social .social__item { width: 15px; height: 15px; display: block; background-color: #e6e3dc; -webkit-mask-size: 15px 15px; mask-size: 15px 15px; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; transition: background-color .2s; }
  footer .fcc-social:hover .social__item { background-color: #c9a961; }

  footer .fcc-footrow--legal { display: flex; justify-content: space-between; align-items: flex-start; gap: 30px; font-size: 12px; margin-top: 4px; }
  footer .fcc-legal__company { margin-bottom: 6px; }
  footer .fcc-legal__right { white-space: nowrap; color: #8b8880; }

  /* Дефект 1: тема гасит клик на .footer__top через pointer-events none
     и возвращает auto только своим контейнерам. Наши блоки в это
     исключение не попали — возвращаем клик явно. */
  footer .fcc-topinfo,
  footer .fcc-topinfo *,
  footer .footer__grid,
  footer .footer__grid *,
  footer .fcc-footrow,
  footer .fcc-footrow *,
  footer .fcc-legal__left,
  footer .fcc-legal__left *,
  footer .fcc-footrow__payments,
  footer .fcc-footrow__payments *,
  footer .fcc-legal__right,
  footer .fcc-legal__right * {
    pointer-events: auto;
  }

  /* Дефект 2: старый блок темы с NLA/IATA дублирует наш .fcc-topinfo__pbox */

}

/* --- мобильный/планшетный: новая сетка скрыта, работает старый блок --- */
footer .fcc-acc-hub { display: none; }

@media (max-width: 1199px) {
  /* --- Mobile footer: single column, accordion. Dark theme preserved. --- */
  footer .footer__top .m_inb { display: block; }

  /* Everything that the old rule hid is now shown and stacked. */
  footer .footer__grid {
    display: block;
    grid-template-columns: none;
    gap: 0;
  }
  footer .fcc-topinfo,
  footer .fcc-footrow--cities,
  footer .fcc-footrow--more,
  footer .fcc-footrow--legal,
  footer .fcc-footrow__payments { display: block; }

  footer .footer__col,
  footer .fcc-footrow--cities,
  footer .fcc-footrow--more {
    width: 100%;
    border-top: 1px solid rgba(255,255,255,.10);
    padding: 0;
  }

  /* Section header = full-row tap target. */
  footer .footer__colh,
  footer .fcc-footrow--cities .fcc-footrow__title,
  footer .fcc-footrow--more .fcc-footrow__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 44px;
    padding: 11px 4px;
    margin: 0;
    font-size: 15.5px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(255,255,255,.06);
  }

  /* Caret — pure CSS border chevron, points down when open, right when collapsed. */
  body.fcc-acc-on footer .footer__colh::after,
  body.fcc-acc-on footer .fcc-footrow--cities .fcc-footrow__title::after,
  body.fcc-acc-on footer .fcc-footrow--more .fcc-footrow__title::after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid rgba(255,255,255,.55);
    border-bottom: 2px solid rgba(255,255,255,.55);
    transform: rotate(45deg);
    margin-left: 12px;
    flex: 0 0 auto;
  }
  body.fcc-acc-on footer .fcc-acc-collapsed .footer__colh::after,
  body.fcc-acc-on footer .fcc-acc-collapsed .fcc-footrow__title::after {
    transform: rotate(-45deg);
  }

  /* Accordion body wrapper (created by JS). */
  footer .fcc-acc-body { display: block; }
  footer .fcc-acc-body > .fcc-sep { display: none; }
  footer .fcc-acc-body > a {
    display: block;
    min-height: 44px;
    line-height: 44px;
    padding: 0 4px;
  }
  footer .fcc-acc-body .footer__collist { margin: 0; padding: 0; list-style: none; }
  footer .fcc-acc-body .footer__collist li { min-height: 44px; line-height: 44px; }

  /* Hub link injected as first body row. */
  footer .fcc-acc-hub {
    display: block;
    min-height: 44px;
    line-height: 44px;
    padding: 0 4px;
    font-weight: 600;
    color: #B08D48 !important;
  }

  /* Collapsed state (only when JS active). Without JS, no .fcc-acc-on -> stays open. */
  body.fcc-acc-on footer .fcc-acc-collapsed .fcc-acc-body { display: none; }

  /* Keep always-open blocks laid out cleanly in one column. */
  footer .footer__container { display: block; width: 100%; }
  footer .fcc-footrow--legal,
  footer .fcc-footrow__payments { border-top: 1px solid rgba(255,255,255,.10); }

  /* ---- Mobile footer visual repair (was raw/unstyled below 1200) ---- */

  /* Cards: theme delivers huge 366x325 SVGs; constrain to a badge row. */
  footer .fcc-footcards { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 8px 0; }
  footer .fcc-footcards svg,
  footer .fcc-footcards img { width: 44px; height: 28px; flex: 0 0 auto; }

  /* Top info: logo, contacts, address, quote, partners. */
  footer .fcc-topinfo__logo { max-width: 180px; height: auto; }
  footer .fcc-topinfo__gt { margin: 6px 0 2px; }
  footer .fcc-topinfo__contacts { list-style: none; margin: 0; padding: 0; }
  footer .fcc-topinfo__contacts li { min-height: 44px; line-height: 1.25; display: flex; align-items: center; }
  footer .fcc-topinfo__addr { margin: 4px 0; line-height: 1.35; }

  /* Quote: same outline button as desktop (was a bare underlined link). */
  footer .fcc-topinfo__quote {
    display: block; border: 1px solid #a8863a; color: #c9a961;
    font-size: 13px; letter-spacing: .06em; text-decoration: none;
    text-align: center; padding: 12px 20px; border-radius: 4px; margin: 8px 0 2px;
  }
  footer .fcc-topinfo__quote:hover { background-color: #a8863a; color: #fff; }

  /* Partner badges (NLA, IATA): theme ships them full-size; scale to a badge row. */
  footer .fcc-topinfo__partners { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin: 6px 0; }
  footer .fcc-topinfo__pbox { display: inline-flex; }
  footer .fcc-topinfo__partners img,
  footer .fcc-topinfo__pbox img { height: 44px; width: auto; max-width: 46%; }

  /* Section headers: plain menu-style rows, not underlined blue/gold links. */
  footer .footer__colh,
  footer .fcc-footrow--cities .fcc-footrow__title,
  footer .fcc-footrow--more .fcc-footrow__title {
    text-decoration: none; color: #ffffff; font-size: 15.5px; font-weight: 600;
  }

  /* --- footer repair v12 (mobile <=1199) --- */
  /* iOS: ensure headers generate click */
  footer .footer__colh, footer .fcc-footrow__title { cursor: pointer; }
  /* P3: white logo on dark footer */
  footer .fcc-topinfo__logo { filter: brightness(0) invert(1); max-width: 180px; height: auto; }
  /* P4: contacts white, no underline */
  footer .fcc-topinfo__contacts { list-style: none; margin: 0; padding: 0; }
  footer .fcc-topinfo__contacts li { margin: 0 0 2px; }
  footer .fcc-topinfo__contacts a { color: #ffffff; text-decoration: none; }
  /* P5: address (line break added in markup), spacing before 24/7 note */
  footer .fcc-topinfo__addr { line-height: 1.5; }
  footer .fcc-topinfo__addr .fcc-addr-note { display: block; margin-top: 10px; }
  /* P6: gap above Get a fixed quote */
  footer .fcc-topinfo__quote { margin-top: 18px; }
  /* P7: company details each on own line (fcc-sep as line break) */
  footer .fcc-legal__company .fcc-sep { display: block; width: 0; height: 0; overflow: hidden; font-size: 0; line-height: 0; }
  footer .fcc-legal__company { line-height: 1.6; }
  /* P8: spacing before cards / terms / copyright */
  footer .fcc-footrow__cards, footer .fcc-footrow__payments { margin-top: 14px; }
  footer .fcc-legal__terms { margin-top: 14px; }
  footer .fcc-legal__right { margin-top: 14px; }
  /* P9: NLA + IATA equal height, natural width */
  footer .fcc-topinfo__partners { display: flex; gap: 16px; align-items: center; }
  footer .fcc-topinfo__pbox img {
    height: 36px; width: auto !important; max-width: none;
    flex: 0 0 auto; object-fit: contain;
  }
}


/* ============================================================
   fcc-footer.css — mobile footer refinement (ТЗ C, 08.08.2026)
   Get in touch hidden; address note own line; company details
   4 lines; Terms links ≥44px; three top-block spacings.
   ============================================================ */
@media (max-width:1199px){
  /* item 3: remove "Get in touch" heading */
  footer .fcc-topinfo__gt{ display:none !important; }

  /* item 4: address note on its own line with a gap */
  footer .fcc-topinfo__addr .fcc-addr-note{
    display:block !important;
    margin-top:14px !important;
  }

  /* item 7: three spacings in the top block */
  footer .fcc-topinfo__addr{ margin-bottom:20px !important; }
  footer .fcc-topinfo__quote{ margin-bottom:22px !important; }
  footer .fcc-topinfo__partners{ margin-bottom:22px !important; }

  /* item 5: company registration details, one per line, small */
  footer .fcc-legal__company{ font-size:12px !important; line-height:1.9 !important; }
  footer .fcc-legal__company .fcc-sep{ display:block !important; width:0 !important; height:0 !important; overflow:hidden !important; font-size:0 !important; }

  /* item 6: Terms & conditions readable, each link a comfortable touch target */
  footer .fcc-legal__terms{ font-size:13px !important; line-height:1.7 !important; }
  footer .fcc-legal__terms a{ display:block !important; line-height:44px !important; }
  footer .fcc-legal__terms .fcc-sep{ display:none !important; }
  footer .fcc-footrow--legal{ margin-bottom:20px !important; }

  /* item 8: footer spacing + terms row, 2026-08-09 */
  /* 3: contact rows — touch target >=32px, visible gap ~10px */
  footer .fcc-topinfo__contacts li{
    min-height:32px !important; /* overrides item-era min-height:44px */
    margin-bottom:10px;
  }
  footer .fcc-topinfo__contacts li:first-child{ margin-top:19px; }
  footer .fcc-topinfo__contacts li:last-child{ margin-bottom:0; }
  footer .fcc-topinfo__addr{ margin-top:19px; }

  /* 7: Terms & Conditions — one wrapping row instead of a stack */
  footer .fcc-legal__terms{ display:flex; flex-wrap:wrap; align-items:center; column-gap:10px; row-gap:4px; }
  footer .fcc-legal__terms a{
    line-height:1.4 !important; /* overrides item6 line-height:44px */
    padding:5px 0;
    font-size:13px;
  }
  footer .fcc-legal__terms .fcc-sep{
    /* restores separators hidden by item6 display:none !important; */
    /* flex blockifies this inline value to block, so each sep sits as a row item between links */
    display:inline !important;
    opacity:.5;
  }
  footer .fcc-legal__terms .fcc-sep:last-of-type{ display:none !important; }

  /* item 8 (2026-08-09): зеркало правила pointer-events из @media (min-width:1200px).
     Тема гасит клик по всей .footer__top через pointer-events:none и возвращает auto
     только .fcc-topinfo/.footer__container. Наш re-enable для сетки, footrow и legal
     жил ТОЛЬКО в desktop-ветке, поэтому на мобиле аккордеон и все ссылки Terms были
     некликабельны (клик проваливался сквозь них в footer). Дублируем тот же список
     селекторов здесь, аддитивно, чтобы клик работал и на <=1199px. Desktop-блок не тронут.
     TODO: консолидировать две копии (см. отложенную задачу вместе с разбором item 6). */
  footer .fcc-topinfo,
  footer .fcc-topinfo *,
  footer .footer__grid,
  footer .footer__grid *,
  footer .fcc-footrow,
  footer .fcc-footrow *,
  footer .fcc-legal__left,
  footer .fcc-legal__left *,
  footer .fcc-footrow__payments,
  footer .fcc-footrow__payments *,
  footer .fcc-legal__right,
  footer .fcc-legal__right * {
    pointer-events: auto;
  }
}

/* item 9: white links, gold underline, 2026-08-11 */
footer .fcc-footrow--cities a:not(.fcc-footrow__title),
footer .fcc-footrow--more a:not(.fcc-footrow__title) {
  color: #fff;
  text-decoration-color: #be9a63;
}
footer .fcc-footrow--cities a:not(.fcc-footrow__title):hover,
footer .fcc-footrow--cities a:not(.fcc-footrow__title):focus,
footer .fcc-footrow--more a:not(.fcc-footrow__title):hover,
footer .fcc-footrow--more a:not(.fcc-footrow__title):focus {
  color: #fff;
  text-decoration-color: #be9a63;
}
