/* Адаптив «Сообщество 1024» — подключается после responsive-1200.css */

@media (max-width: 1024px) {
  :root {
    --header-height: 60px;
    --container-padding: 40px;
    /* главная и блоки как на 1200 */
    --layout-inner-width: 1128px;
  }

  /* —— Intro: колонка, текст 944px —— */
  .community-intro {
    padding-top: 120px;
  }

  .community-intro__inner,
  .community-intro__row {
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
    width: 100%;
    max-width: 944px;
    margin-inline: auto;
  }

  .community-intro .microheading {
    flex-shrink: 0;
    width: auto;
    height: auto;
    padding: 0;
  }

  .community-intro__text,
  .community-intro__text--wide,
  .community-intro__text--768,
  .community-intro__text--375 {
    display: none;
  }

  .community-intro__text--1024 {
    display: block;
    flex: none;
    width: 944px;
    max-width: 100%;
    min-height: 176px;
    margin: 0;
    font-family: var(--font-heading);
    font-size: 40px;
    font-weight: 400;
    font-style: normal;
    line-height: 110%;
    letter-spacing: -0.02em;
    color: #212123;
  }

  /* —— Subscribe: колонка 944px, кнопки в ряд —— */
  .community-subscribe {
    padding: 120px var(--container-padding);
  }

  .community-subscribe__inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    width: 944px;
    max-width: 100%;
    margin-inline: auto;
  }

  .community-subscribe .microheading {
    flex-shrink: 0;
    width: auto;
    height: auto;
    min-height: 0;
    padding: 0;
  }

  .community-subscribe__content {
    width: 100%;
    max-width: 944px;
  }

  .community-subscribe__title {
    max-width: 944px;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: -0.02em;
  }

  .community-subscribe__desc {
    margin-top: 20px;
    max-width: 944px;
    font-size: 18px;
    line-height: 23px;
  }

  .community-subscribe__actions {
    flex-direction: row;
    flex-wrap: nowrap;
    margin-top: 32px;
    gap: 16px;
  }

  .subscribe-btn--max {
    width: 198px;
  }

  .subscribe-btn--vk,
  .subscribe-btn--telegram {
    width: 228px;
  }

  .subscribe-btn--email {
    width: 182px;
  }

  /* —— Join: колонка 944px —— */
  .community-join {
    padding: 120px var(--container-padding) 40px;
  }

  .community-join__inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    width: 944px;
    max-width: 100%;
    margin-inline: auto;
    min-height: 0;
  }

  .community-join .microheading--two-lines {
    align-items: center;
    width: auto;
    height: auto;
    padding: 0;
  }

  .community-join .microheading--two-lines .microheading__icon {
    margin-top: 0;
  }

  .community-join .microheading--two-lines .microheading__text {
    display: block;
    font-size: 16px;
    line-height: 19px;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .community-join .microheading--two-lines .microheading__line {
    display: inline;
  }

  .community-join .microheading--two-lines .microheading__line:not(:last-child)::after {
    content: " ";
  }

  .community-join__title {
    width: 100%;
    max-width: 944px;
    margin: 0;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: -0.02em;
  }

  /* —— Header 1024: Ru + «Меню» / «Закрыть» + иконка —— */
  .site-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 0;
  }

  .site-header__actions {
    gap: 48px;
  }

  .site-header__lang {
    order: 1;
  }

  .site-header__actions .btn--header-cta {
    display: none;
    order: 2;
  }

  .site-header__menu-toggle {
    order: 3;
    gap: 5px;
    margin: 0;
    padding: 2px 0;
    min-height: 30px;
    color: #ffffff;
  }

  .site-header__menu-toggle-text {
    position: relative;
    display: inline-block;
    flex: none;
    width: 39px;
    height: 16px;
    transition: width 0.25s ease;
  }

  .site-header.is-menu-open .site-header__menu-toggle-text {
    width: 55px;
  }

  .site-header__menu-toggle-label {
    position: absolute;
    top: 0;
    left: 0;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0;
    color: #ffffff;
    white-space: nowrap;
    transition: opacity 0.2s ease, transform 0.25s ease;
  }

  .site-header__menu-toggle-open {
    opacity: 1;
    transform: translateY(0);
  }

  .site-header__menu-toggle-close {
    opacity: 0;
    transform: translateY(3px);
  }

  .site-header__menu-toggle-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 16px;
    height: 14px;
  }

  .site-header__menu-toggle-icon-glyph {
    position: absolute;
    inset: 0;
    background-color: currentColor;
    transition: opacity 0.2s ease, transform 0.25s ease;
    transform-origin: center;
  }

  .site-header__menu-toggle-icon-glyph--burger {
    -webkit-mask: url("../img/icon-burger.svg") no-repeat center / contain;
    mask: url("../img/icon-burger.svg") no-repeat center / contain;
    opacity: 1;
    transform: scale(1);
  }

  .site-header__menu-toggle-icon-glyph--close {
    -webkit-mask: url("../img/icon-close.svg") no-repeat center / 12.5px 12.5px;
    mask: url("../img/icon-close.svg") no-repeat center / 12.5px 12.5px;
    opacity: 0;
    transform: scale(0.85);
  }

  .site-header.is-menu-open .site-header__menu-toggle-open {
    opacity: 0;
    transform: translateY(-3px);
  }

  .site-header.is-menu-open .site-header__menu-toggle-close {
    opacity: 1;
    transform: translateY(0);
  }

  .site-header.is-menu-open .site-header__menu-toggle-icon-glyph--burger {
    opacity: 0;
    transform: scale(0.85);
  }

  .site-header.is-menu-open .site-header__menu-toggle-icon-glyph--close {
    opacity: 1;
    transform: scale(1);
  }

  .site-header.is-menu-open .site-header__bar {
    background: var(--header-bg);
    color: #ffffff;
    border-bottom-color: transparent;
  }

  .site-header.is-menu-open.is-scrolled .site-header__logo-img--light { opacity: 1; }
  .site-header.is-menu-open.is-scrolled .site-header__logo-img--dark  { opacity: 0; }
  .site-header.is-menu-open.is-scrolled .site-header__lang-text { color: #b2b9ce; }

  .site-header.is-scrolled:not(:hover):not(.is-menu-open) .site-header__menu-toggle,
  .site-header.is-scrolled:not(:hover):not(.is-menu-open) .site-header__menu-toggle-open,
  .site-header.is-scrolled:not(:hover):not(.is-menu-open) .site-header__menu-toggle-close,
  .site-header.site-header--always-light:not(:hover):not(.is-menu-open) .site-header__menu-toggle,
  .site-header.site-header--always-light:not(:hover):not(.is-menu-open) .site-header__menu-toggle-open,
  .site-header.site-header--always-light:not(:hover):not(.is-menu-open) .site-header__menu-toggle-close,
  .site-header.site-header--always-light:not(:hover):not(.is-menu-open) .site-header__menu-toggle-label {
    color: var(--Primary-text, #212123);
  }

  .site-header.is-scrolled:not(:hover):not(.is-menu-open) .site-header__menu-toggle-icon-glyph,
  .site-header.site-header--always-light:not(:hover):not(.is-menu-open) .site-header__menu-toggle-icon-glyph {
    background: var(--Primary-text, #212123);
  }

}

/* —— Header tablet 688–1024: mega-меню —— */
@media (min-width: 688px) and (max-width: 1024px) {
  .site-header__nav {
    display: none !important;
  }

  .site-header__mega {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: calc(var(--header-z-index) + 1);
    display: none;
    overflow: visible;
    background: var(--header-bg);
    color: #ffffff;
    border-top: 1px solid rgb(255 255 255 / 12%);
  }

  .site-header.is-menu-open .site-header__mega {
    display: block;
  }

  .site-header__mega-inner {
    box-sizing: border-box;
    width: 100%;
    max-width: 1024px;
    margin-inline: auto;
    padding: 27px var(--container-padding) 40px;
  }

  .site-header__mega-grid {
    display: grid;
    align-items: flex-start;
    padding-left: 0;
  }

  .site-header__mega-col {
    display: block !important;
    box-sizing: border-box;
    width: auto !important;
    margin-left: 0 !important;
    padding-left: 0;
    border-left: none;
  }

  .site-header__mega-title {
    display: block;
    margin: 0 0 20px;
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    line-height: 110%;
    letter-spacing: 0;
    color: #ffffff;
  }

  .site-header__mega-list {
    gap: 20px;
  }

  .site-header__mega-link {
    display: inline-block;
    width: fit-content;
    max-width: 100%;
    font-family: var(--font-body);
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    line-height: 120%;
    letter-spacing: 0;
    color: rgb(255 255 255 / 70%);
  }

  .site-header__mega-list li:first-child .site-header__mega-link {
    line-height: 100%;
  }

  .site-header__mega-link:hover,
  .site-header__mega-link:focus-visible {
    color: #ffffff;
  }

  .site-header__mega-link--featured {
    display: block;
    box-sizing: border-box;
    max-width: 100%;
    margin-top: 32px;
    font-family: var(--font-heading);
    font-size: 18px;
    line-height: 110%;
    letter-spacing: 0;
    color: #ffffff;
    opacity: 1;
  }
}

/* —— Header tablet 768: 3×2 как в Figma —— */
@media (min-width: 688px) and (max-width: 768px) {
  .site-header__mega-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: auto auto;
    column-gap: 24px;
    row-gap: 32px;
  }

  .site-header__mega-col[data-mega-col="euler"] {
    grid-column: 1;
    grid-row: 1;
    position: relative;
    align-self: stretch;
  }

  .site-header__mega-col[data-mega-col="community"] {
    grid-column: 2;
    grid-row: 1;
    position: relative;
    align-self: stretch;
  }

  .site-header__mega-col[data-mega-col="partners"] {
    grid-column: 3;
    grid-row: 1;
    align-self: stretch;
  }

  .site-header__mega-col[data-mega-col="company"] {
    grid-column: 1;
    grid-row: 2;
  }

  .site-header__mega-col[data-mega-col="euler"] > .site-header__mega-link--featured,
  .site-header__mega-col[data-mega-col="community"] > .site-header__mega-link--featured {
    position: absolute;
    top: calc(100% + 32px);
    left: calc(100% + 24px);
    display: inline-block;
    width: fit-content;
    max-width: none;
    margin-top: 0;
    white-space: nowrap;
  }
}

/* —— Header tablet 769–1024: 4 колонки —— */
@media (min-width: 769px) and (max-width: 1024px) {
  .site-header__mega-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
  }

  .site-header__mega-col[data-mega-col="euler"],
  .site-header__mega-col[data-mega-col="community"],
  .site-header__mega-col[data-mega-col="partners"],
  .site-header__mega-col[data-mega-col="company"] {
    grid-column: auto;
    grid-row: auto;
    position: static;
  }

  .site-header__mega-col[data-mega-col="euler"] > .site-header__mega-link--featured,
  .site-header__mega-col[data-mega-col="community"] > .site-header__mega-link--featured {
    position: static;
    top: auto;
    left: auto;
    display: block;
    width: auto;
    max-width: 100%;
    margin-top: 32px;
    white-space: normal;
  }
}

@media (min-width: 944px) and (max-width: 1024px) {
  .site-header__mega {
    left: 50%;
    right: auto;
    width: 1024px;
    max-width: 100%;
    height: 485px;
    transform: translateX(-50%);
  }

  .site-header__mega-inner {
    position: relative;
    width: 100%;
    max-width: none;
    height: 100%;
    padding: 27px var(--container-padding) 32px;
  }

  .site-header__mega-grid {
    gap: 24px;
  }

  .site-header__mega-col {
    flex: none;
    padding-left: 0;
    border-left: none;
    margin-left: 0 !important;
  }

  .site-header__mega-col[data-mega-col="euler"],
  .site-header__mega-col[data-mega-col="community"] {
    position: relative;
  }

  .site-header__mega-col[data-mega-col="euler"] {
    width: auto;
  }

  .site-header__mega-col[data-mega-col="euler"] .site-header__mega-title {
    width: 188px;
    min-height: 20px;
  }

  .site-header__mega-col[data-mega-col="euler"] .site-header__mega-link {
    max-width: 188px;
  }

  .site-header__mega-col[data-mega-col="community"] {
    width: auto;
  }

  .site-header__mega-col[data-mega-col="community"] .site-header__mega-title {
    width: 219px;
    min-height: 20px;
  }

  .site-header__mega-col[data-mega-col="community"] .site-header__mega-link {
    max-width: 219px;
  }

  .site-header__mega-col[data-mega-col="partners"] {
    width: auto;
  }

  .site-header__mega-col[data-mega-col="partners"] .site-header__mega-title {
    width: 188px;
    min-height: 20px;
  }

  .site-header__mega-col[data-mega-col="partners"] .site-header__mega-list .site-header__mega-link {
    max-width: 188px;
    line-height: 120%;
  }

  .site-header__mega-col[data-mega-col="company"] {
    width: auto;
  }

  .site-header__mega-col[data-mega-col="company"] .site-header__mega-title {
    width: 188px;
    min-height: 20px;
  }

  .site-header__mega-col[data-mega-col="company"] .site-header__mega-list .site-header__mega-link {
    max-width: 188px;
    line-height: 120%;
  }

  /* Featured-ссылки — ниже списка, в своей колонке */
  .site-header__mega-link--featured {
    position: absolute;
    top: 300px;
    left: 0;
    display: inline-block;
    width: fit-content;
    max-width: 379px;
    margin-top: 0;
    padding-bottom: 16px;
    white-space: nowrap;
  }
}

/* —— Header mobile ≤687: видимость оверлея (отступы/типографика — responsive-375.css) —— */
@media (max-width: 687px) {
  .site-header__nav {
    position: fixed;
    z-index: calc(var(--header-z-index) - 1);
    top: var(--header-height);
    right: 0;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    max-width: 100vw;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    overflow-y: auto;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }

  .site-header.is-menu-open .site-header__nav {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
}

/* Карточки и футер 1024 — только 769–1024, чтобы на 768 не перебивать макет */
@media (min-width: 769px) and (max-width: 1024px) {
  /* —— Footer 1024 —— */
  .site-footer__br--1024 {
    display: inline;
  }

  .site-footer__bottom-bar--wide {
    display: none;
  }

  .site-footer__bottom-bar--1024 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
  }

  .site-footer__legal--1024 {
    display: flex;
    align-items: center;
    gap: 40px;
    flex: 1;
    justify-content: center;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .site-footer__legal-col--policies {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .site-footer__legal-link--dev {
    flex-shrink: 0;
  }

  .site-footer__bottom-bar--1024 .site-footer__registry {
    align-items: flex-start;
  }

  .site-footer__nav {
    max-width: 100%;
  }

  .site-footer__col {
    gap: 20px;
    min-height: 0;
    padding: 40px 20px;
  }

  .site-footer__col-title,
  .site-footer__link--featured {
    font-size: 14px;
    line-height: 110%;
    letter-spacing: -0.02em;
  }

  .site-footer__link {
    font-size: 12px;
    line-height: 1;
  }

  .site-footer__col--featured .site-footer__links {
    gap: 20px;
  }

  .site-footer__bottom {
    padding: 20px 0 28px;
  }

  .site-footer__bottom-bar--1024 .site-footer__copyright,
  .site-footer__bottom-bar--1024 .site-footer__legal-link {
    font-size: 12px;
    line-height: 130%;
  }

  .site-footer__registry {
    max-width: 200px;
    gap: 8px;
  }

  .site-footer__registry-icon {
    width: 36px;
    height: 40px;
  }

  .site-footer__registry-text {
    max-width: 150px;
    font-size: 10px;
    line-height: 110%;
  }
}

/* Карточки + Contribute Figma 1024 — только 944–1024 (ровно под iPad / макет) */
@media (min-width: 944px) and (max-width: 1024px) {
  .community-contribute {
    padding: 0 var(--container-padding) 120px;
  }

  .community-contribute__grid {
    display: grid;
    grid-template-columns: repeat(2, 462px);
    column-gap: 20px;
    row-gap: 24px;
    width: 944px;
    max-width: 100%;
    margin-inline: auto;
  }

  .contrib-card {
    box-sizing: border-box;
    width: 462px;
    max-width: 100%;
    height: 250px;
    min-height: 250px;
    max-height: 250px;
    padding: 30px;
  }

  .contrib-card--gray {
    padding: 30px;
  }

  .contrib-card__content,
  .contrib-card__title,
  .contrib-card__desc {
    max-width: 402px;
  }

  .contrib-card__title {
    font-family: var(--font-heading);
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.02em;
    color: #212123;
  }

  .contrib-card__desc {
    margin-top: 16px;
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 19px;
    letter-spacing: 0;
    color: #212123;
  }

  .contrib-card--light .contrib-card__desc br {
    display: none;
  }

  .contrib-card__btn-text--long {
    display: none;
  }

  .contrib-card__btn-text--short {
    display: block;
  }

  .contrib-card__btn,
  .contrib-card__btn--wide,
  .contrib-card__btn--narrow,
  .contrib-card__btn--medium {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 20px;
    box-sizing: border-box;
    height: 50px;
    min-height: 50px;
    padding: 0 4px 0 30px;
    border: 1px solid #0c3eb3;
    background-color: transparent;
    text-decoration: none;
  }

  .contrib-card__btn-text {
    flex: none;
    margin: 0;
    font-family: "Roboto Flex", var(--font-body);
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    color: #0c3eb3;
  }

  .contrib-card__btn-icon,
  .contrib-card__btn--wide .contrib-card__btn-icon,
  .contrib-card__btn--narrow .contrib-card__btn-icon,
  .contrib-card__btn--medium .contrib-card__btn-icon {
    position: static;
    top: auto;
    right: auto;
    left: auto;
    flex: none;
    width: 8px;
    height: 8px;
    min-width: 8px;
    min-height: 8px;
    margin: 0;
    padding: 0;
    background-color: #0c3eb3;
    transform: none;
  }

  .contrib-card__btn--wide {
    width: 260px;
    max-width: 100%;
  }

  .contrib-card__btn--narrow {
    width: 173px;
    max-width: 100%;
  }

  .contrib-card__btn--medium {
    width: 284px;
    max-width: 100%;
  }

  .community-cards {
    padding: 40px var(--container-padding) 120px;
  }

  .community-cards__grid {
    display: grid;
    grid-template-columns: repeat(2, 462px);
    column-gap: 20px;
    row-gap: 24px;
    width: 944px;
    max-width: 100%;
    margin-inline: auto;
  }

  .community-card {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    width: 462px;
    max-width: 100%;
    height: 300px;
    min-height: 300px;
    max-height: 300px;
    padding: 30px;
    gap: 20px;
  }

  .community-card__top {
    flex: none;
    width: 100%;
  }

  .community-card__title {
    flex: none;
    max-width: 257px;
    margin: 0;
    font-family: var(--font-heading);
    font-size: 30px;
    font-weight: 400;
    font-style: normal;
    line-height: 110%;
    letter-spacing: -0.02em;
    color: #212123;
  }

  .community-card__desc {
    flex: none;
    margin: 0;
    font-family: var(--font-body);
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    line-height: 19px;
    letter-spacing: 0;
    color: #5f6062;
  }

  .community-card__desc:not(.community-card__desc--1024) {
    display: none;
  }

  .community-card__desc--1024 {
    display: block;
    margin-top: auto;
    white-space: normal;
  }

  .community-cards__grid > .community-card:nth-child(1) .community-card__desc--1024 {
    width: 364px;
    max-width: 364px;
    min-height: 57px;
  }

  .community-cards__grid > .community-card:nth-child(2) .community-card__desc--1024 {
    width: 402px;
    max-width: 402px;
    min-height: 57px;
  }

  .community-cards__grid > .community-card:nth-child(3) .community-card__desc--1024 {
    width: 402px;
    max-width: 402px;
    min-height: 38px;
  }

  .community-cards__grid > .community-card:nth-child(4) .community-card__desc--1024 {
    width: 402px;
    max-width: 402px;
    min-height: 38px;
  }

  .community-cards__grid > .community-card:nth-child(5) .community-card__desc--1024 {
    width: 402px;
    max-width: 402px;
    min-height: 57px;
  }

  .community-cards__grid > .community-card:nth-child(6) .community-card__desc--1024 {
    width: 361px;
    max-width: 361px;
    min-height: 76px;
  }
}
