/*
 * Футер v2 — макет дизайнера «Parisclub — Футер V1» (30.09.2026),
 * разметка — parisclub/layouts/footer/footer_v2.blade.php.
 * Все классы с префиксом pcf; стили сайта не меняются. Шрифт — штатный
 * Gotham Pro из app.css. Где Bootstrap 3 задаёт свои значения
 * (h2/h3, address, small), они перекрыты явно.
 */
.pcf {
  --pcf-bg: #050505;
  --pcf-ink: #fff;
  --pcf-muted: #ababab;
  --pcf-line: #303030;
  color-scheme: dark;
  box-sizing: border-box;
  width: 100%;
  background: var(--pcf-bg);
  color: var(--pcf-ink);
  font: 400 14px/1.5 "Gotham Pro", Arial, sans-serif;
  text-align: left;
  -webkit-font-smoothing: antialiased;
}
.pcf *, .pcf *::before, .pcf *::after { box-sizing: border-box; }
.pcf :where(p, h2, h3, ul) { margin: 0; padding: 0; }
.pcf h2, .pcf h3 { font-family: inherit; color: inherit; }
.pcf ul { list-style: none; }
/* Равна по весу a:hover/a:focus Bootstrap и подключена позже — перекрывает их */
.pcf a { color: inherit; text-decoration: none; }
.pcf button, .pcf summary { font: inherit; color: inherit; }
.pcf button { cursor: pointer; }
.pcf a:focus-visible, .pcf button:focus-visible, .pcf summary:focus-visible {
  outline: 2px solid #fff; outline-offset: 5px;
}
.pcf :where(a, button) { -webkit-tap-highlight-color: transparent; }
.pcf__inner { max-width: 1440px; margin-inline: auto; padding: 0 64px; }
.pcf__masthead {
  display: grid; grid-template-columns: 1.15fr 1fr; align-items: center;
  gap: 90px; padding: 72px 0 58px;
}
.pcf__brand { min-width: 0; }
.pcf__logo { display: block; width: 100%; max-width: 580px; }
.pcf__logo svg { display: block; width: 100%; height: auto; overflow: visible; }
.pcf__tagline { color: #c6c6c6; max-width: 440px; margin-top: 28px !important; font-size: 14px; line-height: 1.8; }
.pcf__pitch h2 { font-size: 24px; font-weight: 700; line-height: 1.22; letter-spacing: -.6px; text-transform: uppercase; max-width: 450px; }
.pcf__pitch p { color: #c6c6c6; font-size: 13px; line-height: 1.75; margin-top: 15px; max-width: 425px; }
.pcf__actions { display: flex; gap: 24px; align-items: center; margin-top: 24px; flex-wrap: wrap; }
.pcf .pcf__button {
  display: inline-flex; min-height: 52px; padding: 16px 24px; gap: 30px;
  align-items: center; justify-content: space-between; background: #fff; color: #080808;
  border: 1px solid #fff; font-size: 12px; font-weight: 700; letter-spacing: .7px;
  text-transform: uppercase; transition: background .16s, color .16s;
}
.pcf .pcf__button:hover, .pcf .pcf__button:focus-visible { background: transparent; color: #fff; }
.pcf__icon { width: 18px; height: 18px; flex-shrink: 0; display: inline-block; }
.pcf__textlink { display: inline-flex; gap: 9px; align-items: center; min-height: 36px; font-size: 12px; }
.pcf__textlink span { text-decoration: underline; text-underline-offset: 4px; }
.pcf__grid { display: grid; grid-template-columns: repeat(3, 1fr) 1.3fr; gap: 48px; padding: 40px 0 42px; border-top: 1px solid var(--pcf-line); }
.pcf__group { min-width: 0; }
.pcf__group summary { display: block; list-style: none; pointer-events: none; }
.pcf__group summary::-webkit-details-marker { display: none; }
.pcf__group h2, .pcf__contact h2 { font-size: 12px; font-weight: 700; line-height: 1.5; letter-spacing: 1.1px; text-transform: uppercase; margin-bottom: 19px; }
.pcf__group summary .pcf__plus { display: none; }
.pcf__links a { display: flex; align-items: center; width: fit-content; min-height: 36px; text-align: left; font-size: 14px; line-height: 1.4; padding: 5px 0; }
.pcf .pcf__links a:hover, .pcf .pcf__legal a:hover { text-decoration: underline; text-underline-offset: 4px; }
.pcf__contact { min-width: 0; }
.pcf__contact a { width: fit-content; }
.pcf__phone { display: block; font-size: 22px; line-height: 1.4; letter-spacing: -.5px; font-weight: 500; white-space: nowrap; }
.pcf__mail { display: block; margin-top: 7px; font-size: 14px; }
.pcf__person { display: block; margin-top: 9px; color: var(--pcf-muted); font-size: 11px; }
.pcf__address { font-style: normal; font-size: 13px; line-height: 1.65; margin: 21px 0 6px; color: #c6c6c6; }
.pcf__ecosystem { display: grid; grid-template-columns: 1.15fr 1fr; gap: 90px; border-top: 1px solid var(--pcf-line); padding: 26px 0; align-items: center; }
.pcf__channels { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.pcf__channel { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 13px; }
.pcf__channel:hover, .pcf__project:hover { opacity: .75; }
.pcf__channel-icon { width: 34px; height: 34px; border: 1px solid #575757; display: grid; place-items: center; }
.pcf__channel-note { font-size: 11px; line-height: 1.5; color: var(--pcf-muted); max-width: 130px; padding-left: 2px; }
.pcf__projects { display: flex; align-items: center; gap: 32px; }
.pcf__projects-label { color: var(--pcf-muted); text-transform: uppercase; font-size: 10px; letter-spacing: 1px; max-width: 55px; line-height: 1.5; }
.pcf__project { display: grid; gap: 4px; min-height: 44px; align-content: center; }
.pcf__project-name { font-weight: 700; font-size: 16px; line-height: 1.1; letter-spacing: 1.5px; white-space: nowrap; }
.pcf__project-name b { margin-left: 3px; font-size: 9px; border: 1px solid #929292; padding: 3px; font-weight: 500; letter-spacing: 0; vertical-align: 2px; }
.pcf__project-caption { color: var(--pcf-muted); font-size: 10px; }
.pcf__legal { border-top: 1px solid var(--pcf-line); padding: 22px 0 25px; display: flex; justify-content: space-between; align-items: center; gap: 25px; color: #aaa; font-size: 10px; }
.pcf__legal-main { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 25px; row-gap: 6px; min-width: 0; }
.pcf__legal-main > p:first-child { white-space: nowrap; }
.pcf__legal-info { line-height: 1.6; }
.pcf__legal nav { display: flex; flex-wrap: wrap; column-gap: 25px; row-gap: 10px; }
.pcf__legal a { display: inline-flex; align-items: center; min-height: 28px; }
/* normalize.css в app.css задаёт dialog { display: block } — закрытый диалог прячем сами */
.pcf__dialog:not([open]) { display: none; }
.pcf__dialog { padding: 0; border: 1px solid #484848; width: min(600px, calc(100% - 32px)); max-height: calc(100dvh - 48px); background: #111; color: #fff; }
.pcf__dialog::backdrop { background: rgb(0 0 0 / .72); }
.pcf__dialog-inner { padding: 34px; }
.pcf__dialog-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 26px; }
.pcf__dialog-head h2 { font-size: 24px; font-weight: 700; line-height: 1.2; text-transform: uppercase; letter-spacing: -.5px; }
.pcf__close { background: none; border: 1px solid #555; min-width: 40px; height: 40px; padding: 0; display: grid; place-items: center; }
.pcf__dialog h3 { font-size: 15px; font-weight: 700; line-height: 1.4; margin: 24px 0 8px; }
.pcf__dialog p { color: #c6c6c6; font-size: 14px; line-height: 1.75; }
.pcf__dialog .pcf__button { margin-top: 26px; }
.pcf__documents li + li { border-top: 1px solid #333; }
.pcf__documents a { padding: 15px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.pcf .pcf__documents a:hover { text-decoration: underline; }
.pcf__documents small { color: #aaa; font-size: 10px; white-space: nowrap; }
@media (max-width: 1150px) {
  .pcf__inner { padding-inline: 40px; }
  .pcf__masthead, .pcf__ecosystem { gap: 48px; grid-template-columns: 1fr 1fr; }
  .pcf__grid { gap: 28px; }
  .pcf__phone { font-size: 19px; }
  .pcf__channels { gap: 16px; }
  .pcf__channel-note { display: none; }
  .pcf__projects { gap: 24px; }
}
@media (max-width: 850px) {
  .pcf__inner { padding-inline: 28px; }
  .pcf__masthead { gap: 40px; padding: 50px 0 40px; }
  .pcf__pitch h2 { font-size: 20px; }
  .pcf__tagline { margin-top: 20px !important; font-size: 12px; }
  .pcf__grid { grid-template-columns: repeat(2, 1fr); gap: 35px 50px; }
  .pcf__contact { grid-column: 2; grid-row: 1; }
  .pcf__ecosystem { grid-template-columns: 1fr; gap: 20px; }
  .pcf__projects { gap: 30px; }
  .pcf__channel-note { display: block; max-width: none; }
  .pcf__legal { align-items: flex-start; }
  .pcf__legal nav { column-gap: 20px; }
}
@media (max-width: 600px) {
  .pcf__inner { padding-inline: 24px; }
  .pcf__masthead { display: flex; flex-direction: column; align-items: stretch; gap: 36px; padding: 40px 0 30px; }
  .pcf__logo { max-width: 520px; }
  .pcf__tagline { font-size: 12px; line-height: 1.65; margin-top: 18px !important; max-width: 330px; }
  .pcf__pitch h2 { max-width: 330px; font-size: 23px; line-height: 1.2; }
  .pcf__pitch p { font-size: 12px; margin-top: 13px; }
  .pcf__actions { gap: 10px; margin-top: 21px; }
  .pcf .pcf__actions .pcf__button { width: 100%; min-height: 52px; }
  .pcf__textlink { min-height: 44px; }
  .pcf__grid { display: flex; flex-direction: column; padding: 0; gap: 0; border-top: 0; }
  .pcf__contact { order: -1; border-top: 1px solid var(--pcf-line); padding: 28px 0; }
  .pcf__contact h2 { margin-bottom: 14px; }
  .pcf__phone { font-size: 24px; min-height: 38px; }
  .pcf__mail { min-height: 34px; margin-top: 0; }
  .pcf__person { margin-top: 0; font-size: 11px; }
  .pcf__address { margin-top: 17px; margin-bottom: 0; }
  .pcf__group { border-top: 1px solid var(--pcf-line); }
  .pcf__group summary { pointer-events: auto; cursor: pointer; display: flex; align-items: center; justify-content: space-between; min-height: 64px; }
  .pcf__group h2 { margin: 0; }
  .pcf__group summary .pcf__plus { display: block; width: 16px; height: 16px; position: relative; }
  .pcf__plus::before, .pcf__plus::after { content: ""; position: absolute; background: currentColor; }
  .pcf__plus::before { left: 0; right: 0; top: 7px; height: 1px; }
  .pcf__plus::after { top: 0; bottom: 0; left: 7px; width: 1px; transition: transform .15s; }
  .pcf__group[open] .pcf__plus::after { transform: rotate(90deg); }
  .pcf__links { padding-bottom: 19px !important; }
  .pcf__links a { min-height: 44px; width: 100%; }
  .pcf__ecosystem { padding: 23px 0 27px; gap: 23px; }
  .pcf__channels { gap: 23px; }
  .pcf__channel-note { width: 100%; max-width: none; margin-top: -13px; font-size: 11px; }
  .pcf__projects { display: grid; grid-template-columns: 1fr 1fr; gap: 15px 25px; border-top: 1px solid var(--pcf-line); padding-top: 22px; }
  .pcf__projects-label { grid-column: 1 / -1; max-width: none; }
  .pcf__legal { flex-direction: column-reverse; gap: 20px; padding: 19px 0 25px; font-size: 10px; }
  .pcf__legal nav { display: grid; grid-template-columns: 1fr; gap: 0; }
  .pcf__legal a { min-height: 38px; }
  .pcf__dialog-inner { padding: 24px; }
  .pcf__dialog-head h2 { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) {
  .pcf *, .pcf *::before, .pcf *::after { transition: none !important; }
}
