/* Подвал (компоненты footer и footer-column). Токены: theme.css (--ee-*), кнопки — css/buttons.css. Класс .site-footer оставлен для совместимости (ask-bar, тесты). */
.ee-footer { max-width: var(--ee-container); margin: var(--ee-section-gap) auto 0; padding: 0 var(--ee-gutter) 1.5rem; }
.ee-footer__top { border-top: 1px solid var(--border); padding-block: 1.25rem .5rem; }
.ee-footer__cols { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; }
.ee-fcol { margin: 0; }
.ee-fcol__heading { margin: 0 !important; font-size: 1.0625rem !important; font-weight: 700 !important; line-height: 1.3 !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--foreground) !important; }
.ee-fcol__summary { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 3.25rem; cursor: pointer; list-style: none; }
.ee-fcol__summary::-webkit-details-marker { display: none; }
.ee-fcol__summary::after { content: ""; flex: none; width: .6rem; height: .6rem; margin-right: .25rem; border: solid var(--ee-btn-accent, var(--primary)); border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); transition: transform .15s; }
.ee-fcol[open] > .ee-fcol__summary::after { transform: rotate(-135deg); }
.ee-fcol__summary:focus-visible { outline: 3px solid var(--ee-focus); outline-offset: 2px; }
.ee-fcol:not(.ee-fcol--static) { border-bottom: 1px solid var(--border); }
.ee-fcol--static { padding-block: 1rem; border-bottom: 1px solid var(--border); }
.ee-fcol--static > .ee-fcol__heading { margin-bottom: .5rem !important; }
.ee-fcol__body { padding-bottom: .5rem; }
.ee-fcol--static > .ee-fcol__body { padding-bottom: 0; }
.ee-fcol__body p { margin: 0 0 .5rem; font-size: 1rem; line-height: 1.55; color: var(--muted-foreground); }
.ee-fcol__body ul { display: flex !important; flex-direction: column !important; gap: 0 !important; list-style: none; margin: 0 !important; padding: 0 !important; }
.ee-fcol__body li { margin: 0 !important; padding: 0 !important; }
.ee-fcol__body li a { display: flex; align-items: center; min-height: 2.75rem; padding: 0; color: var(--foreground); font-size: 1rem; line-height: 1.3; text-decoration: none; }
.ee-fcol__body li a:hover { color: var(--ee-btn-accent, var(--primary)); text-decoration: underline; text-underline-offset: .2em; }
.ee-fcol__body a:focus-visible { outline: 3px solid var(--ee-focus); outline-offset: 2px; border-radius: 4px; }

/* подписка */
.ee-footer__sub { margin: 1rem 0; padding: 1.1rem 1rem; border-radius: var(--ee-radius-card); background: var(--card, var(--muted)); border: 1px solid var(--border); }
.ee-footer__sub form.webform-submission-newsletter-subscribe-form { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "intro" "email" "consent" "submit"; gap: .6rem; align-items: start; margin: 0; width: 100%; }
.ee-footer__sub #edit-intro { grid-area: intro; margin: 0; }
.ee-footer__sub #edit-intro h3 { margin: 0; font-size: 1.0625rem; font-weight: 700; line-height: 1.3; color: var(--foreground); text-transform: none; letter-spacing: 0; }
.ee-footer__sub #edit-intro p { margin: .2rem 0 0; font-size: .9375rem; color: var(--muted-foreground); }
@media (max-width: 47.99rem) { .ee-footer__sub #edit-intro p { display: none; } .ee-footer__sub { padding: .9rem 1rem; } }   /* телефон: подзаголовок подписки убран, чтобы подвал не тянулся */
.ee-footer__sub .form-item-email { grid-area: email; margin: 0; }
.ee-footer__sub .form-item-email label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.ee-footer__sub .form-item-email input { width: 100%; }
.ee-footer__sub .form-item-consent { grid-area: consent; margin: 0; display: flex; align-items: flex-start; }
.ee-footer__sub .form-item-consent label { font-size: .875rem; line-height: 1.35; color: var(--muted-foreground); }
.ee-footer__sub .form-actions { grid-area: submit; margin: 0; }
.ee-footer__sub .form-actions input { width: 100%; }
@media (min-width: 48rem) {
  .ee-footer__sub { padding: 1.5rem; }
  .ee-footer__sub form.webform-submission-newsletter-subscribe-form { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) auto; grid-template-areas: "intro email submit" ". consent consent"; column-gap: 1rem; align-items: center; }
  .ee-footer__sub .form-actions input { width: auto; }
}

/* нижняя полоса: копирайт (документы — колонка сетки) */
.ee-footer__bottom { border-top: 1px solid var(--border); }
.ee-footer__copy { padding: .75rem 0 .25rem; }
.ee-footer__copy p { margin: 0; font-size: .9375rem; color: var(--muted-foreground); }
.ee-fcol--legal .ee-fcol__body li a { font-size: .9375rem; }
.ee-fcol--legal:not(:has(li)) { display: none; }   /* меню документов пусто: колонки нет */

/* планшет и компьютер: колонки раскрыты, заголовок не кнопка; сетка подстраивается под число колонок */
@media (min-width: 48rem) {
  .ee-footer__top { padding-block: 2rem 1rem; }
  .ee-footer__cols { grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr)); gap: 1.5rem 2rem; }
  .ee-fcol:not(.ee-fcol--static), .ee-fcol--static { padding: 0; border-bottom: 0; }
  .ee-fcol__summary { min-height: 0; cursor: default; margin-bottom: .5rem; }
  .ee-fcol__summary::after { display: none; }
  .ee-fcol__heading { font-size: 1.125rem !important; }
  .ee-fcol--static > .ee-fcol__heading { margin-bottom: .5rem !important; }
  .ee-fcol__body li a { min-height: 2.5rem; }
  .ee-fcol--legal { order: 1; }
  .ee-fcol--static:has(.view-social-links) { order: 2; }
  .ee-footer__copy { padding: .75rem 0 0; }
}
@media (min-width: 64rem) {
  .ee-footer__cols { grid-template-columns: repeat(auto-fit, minmax(11.5rem, 1fr)); }
  .ee-footer__cols:has(> :nth-child(5)) { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.3fr) minmax(0, 1.1fr); }
}
