/* Главная: laptop 992–1439 (как fluid-меню в header-2026).
   Absolute-сцены (хиро-slogan + vector) — scale от колонки 1440.
   Остальное — fluid от десктопных размеров × --home-scene-scale.
   Откат: отключить в header.php → см. _rollback/home-laptop-2026/README.md */

@media (min-width: 992px) and (max-width: 1439px) {
    html:has(body.page-home) {
        overflow-x: clip;
    }

    body.page-home {
        /* Доля от колонки 1440. Важно: scale() ждёт число → 100vw/1440px
           (деление длины на длину). 100vw/1440 (unitless) даёт длину и отбрасывается. */
        --home-scene-scale: calc(100vw / 1440px);
        --home-scene-w: 100vw;
        /* Секционные H2 чуть меньше макетных 66 */
        --home-h2: calc(56px * 100vw / 1440px);
        overflow-x: clip; /* layout-box сцен 1440 шире viewport после scale */
    }

    /* Mint под шапкой — пропорционально ужатой сцене */
    body.page-home.page-home-chrome {
        background-size: 100% calc(556px * 100vw / 1440px);
    }

    /* ——— HERO (section-slogan): сцена 1440 + scale ———
       margin-left calc: при width>viewport auto не центрирует
       (липнет влево → справа обрезается после scale). */
    body.page-home .section-slogan {
        width: 1440px;
        max-width: none;
        margin-left: calc((100vw - 1440px) / 2);
        margin-right: 0;
        padding: 60px 0 20px;
        row-gap: 36px;
        box-sizing: border-box;
        transform: scale(calc(100vw / 1440px));
        transform-origin: top center;
        /* ~360px натуральная высота: pad + logo 180 + gap + текст */
        margin-bottom: calc(360px * (100vw / 1440px - 1));
    }

    body.page-home .section-slogan-logo.font-life-full {
        font-size: 180px !important;
        letter-spacing: 5.2px !important;
        max-width: none !important;
        white-space: nowrap !important;
    }

    body.page-home .section-slogan .section-slogan__text > div {
        max-width: 480px;
    }

    /* ——— VECTOR: absolute как ≥1401 + scale ——— */
    body.page-home .section-setting-vector {
        background: #fff;
        padding: calc(80px * 100vw / 1440px) 0 0;
        overflow-x: clip;
    }

    body.page-home .vector-2026 {
        position: relative;
        display: block !important;
        flex-direction: unset;
        align-items: unset;
        gap: unset;
        width: 1440px !important;
        max-width: none !important;
        height: 1520px !important;
        margin-left: calc((100vw - 1440px) / 2);
        margin-right: 0;
        padding: 0 !important;
        box-sizing: border-box;
        overflow: visible;
        transform: scale(calc(100vw / 1440px));
        transform-origin: top center;
        margin-bottom: calc(1520px * (100vw / 1440px - 1));
        scroll-margin-top: 80px;
    }

    body.page-home .vector-2026__title,
    body.page-home .vector-2026__lead,
    body.page-home .vector-2026__line,
    body.page-home .vector-2026__card,
    body.page-home .vector-2026__polaroid,
    body.page-home .vector-2026__icon,
    body.page-home .vector-2026__name,
    body.page-home .vector-2026__text {
        position: absolute;
        margin: 0;
    }

    body.page-home .vector-2026__line,
    body.page-home .vector-2026__polaroid {
        display: block !important;
    }

    body.page-home .vector-2026__title {
        z-index: 5;
        left: 163px;
        top: 0;
        width: 1114px;
        height: 66px;
        font-size: 66px;
        font-weight: 400;
        line-height: 1;
        letter-spacing: -1.32px;
        text-align: center;
        color: #4D4D4D;
        max-width: none;
        overflow-wrap: normal;
    }

    body.page-home .vector-2026__title span {
        color: #3EA74F;
    }

    body.page-home .vector-2026__lead {
        z-index: 5;
        left: 285px;
        top: 128px;
        width: 870px;
        font-size: 28px;
        font-weight: 400;
        line-height: 1.1;
        letter-spacing: -0.56px;
        text-align: center;
        color: #4D4D4D;
    }

    body.page-home .vector-2026__line {
        left: 59.5px;
        top: 68.5px;
        width: 792px;
        height: 1037px;
        z-index: 2;
        pointer-events: none;
    }

    body.page-home .vector-2026__card {
        display: block;
        background: #fff;
        border-radius: 20px;
        box-shadow: 0 6px 44px rgba(94, 176, 226, 0.22);
        z-index: 1;
        padding: 0;
        min-height: 0;
        box-sizing: border-box;
        text-decoration: none;
        color: inherit;
        cursor: pointer;
    }

    body.page-home .vector-2026__card--med { left: 843px; top: 237px; width: 490px; height: 334px; }
    body.page-home .vector-2026__card--help { left: 54px; top: 396px; width: 514px; height: 346px; }
    body.page-home .vector-2026__card--hospital { left: 791px; top: 660px; width: 538px; height: 339px; }
    body.page-home .vector-2026__card--social { left: 32px; top: 828px; width: 510px; height: 317px; }
    body.page-home .vector-2026__card--school { left: 742px; top: 1077px; width: 558px; height: 352px; }

    body.page-home .vector-2026__polaroid {
        object-fit: contain;
        z-index: 3;
        pointer-events: none;
    }

    body.page-home .vector-2026__polaroid--3 { left: -34px; top: 313px; width: 220px; height: 220px; }
    body.page-home .vector-2026__polaroid--4 { left: 701px; top: 486px; width: 180px; height: 180px; }
    body.page-home .vector-2026__polaroid--5 { left: 488px; top: 1064px; width: 236px; height: 236px; }
    body.page-home .vector-2026__polaroid--2 { left: 1134px; top: 1279px; width: 201px; height: 201px; }

    body.page-home .vector-2026__icon {
        z-index: 4;
        pointer-events: none;
        display: block;
    }

    body.page-home .vector-2026__icon--med { left: 267px; top: 22px; width: 179px; height: 169px; }
    body.page-home .vector-2026__icon--help { left: 258px; top: 29px; width: 222px; height: 158px; }
    body.page-home .vector-2026__icon--hospital { left: 335px; top: 17px; width: 166px; height: 150px; }
    body.page-home .vector-2026__icon--social { left: 314px; top: 22px; width: 165px; height: 143px; }
    body.page-home .vector-2026__icon--school { left: 358px; top: 38px; width: 150px; height: 131px; }

    body.page-home .vector-2026__name {
        z-index: 5;
        font-size: 36px;
        font-weight: 600;
        line-height: 32px;
        letter-spacing: 0;
        text-align: left;
        color: #0C8AE0;
    }

    body.page-home .vector-2026__text {
        z-index: 5;
        font-size: 22px;
        font-weight: 400;
        line-height: 24px;
        letter-spacing: -0.22px;
        text-align: left;
        color: #4D4D4D;
    }

    body.page-home .vector-2026__name--med { left: 55px; top: 127px; width: 275px; }
    body.page-home .vector-2026__text--med { left: 56px; top: 207px; width: 383px; }
    body.page-home .vector-2026__name--help { left: 39px; top: 137px; width: 269px; }
    body.page-home .vector-2026__text--help { left: 39px; top: 216px; width: 441px; }
    body.page-home .vector-2026__name--hospital { left: 44px; top: 95px; width: 275px; }
    body.page-home .vector-2026__text--hospital { left: 45px; top: 181px; width: 430px; }
    body.page-home .vector-2026__name--social { left: 48px; top: 91px; width: 275px; }
    body.page-home .vector-2026__text--social { left: 49px; top: 177px; width: 430px; }
    body.page-home .vector-2026__name--school { left: 56px; top: 103px; width: 424px; }
    body.page-home .vector-2026__text--school { left: 58px; top: 190px; width: 314px; }

    /* ——— FLUID: guardians (кликабельные кнопки — без transform) ——— */
    body.page-home .section-future-guardians {
        background: #fff;
        padding-top: calc(128px * 100vw / 1440px);
        padding-bottom: calc(183px * 100vw / 1440px);
    }

    body.page-home .section-future-guardians > .container {
        display: grid !important;
        grid-template-columns:
            calc(26px * 100vw / 1440px)
            calc(490px * 100vw / 1440px)
            calc(165px * 100vw / 1440px)
            calc(674px * 100vw / 1440px)
            calc(85px * 100vw / 1440px);
        justify-content: start !important;
        column-gap: 0 !important;
        max-width: var(--home-scene-w);
        width: 100%;
        margin: 0 auto;
        padding: 0 !important;
        box-sizing: border-box;
    }

    body.page-home .section-future-guardians__left {
        display: contents;
        max-width: none !important;
    }

    body.page-home .section-future-guardians__left h2,
    body.page-home .section-future-guardians__left > h2 {
        grid-column: 1 / -1;
        margin: 0 0 calc(64px * 100vw / 1440px) !important;
        text-align: center !important;
        font-size: var(--home-h2) !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        letter-spacing: -0.02em;
        color: #4D4D4D !important;
    }

    body.page-home .section-future-guardians__left h2 span,
    body.page-home .section-future-guardians__left > h2 span {
        color: #3EA74F !important;
    }

    body.page-home .section-future-guardians__photo {
        grid-column: 2;
        grid-row: 2;
        position: relative;
        left: 0 !important;
        width: calc(490px * 100vw / 1440px);
        height: calc(575px * 100vw / 1440px);
        margin-top: calc(-5px * 100vw / 1440px);
        overflow: visible;
    }

    body.page-home .section-future-guardians__photo::before,
    body.page-home .section-future-guardians__photo::after {
        display: none !important;
    }

    body.page-home .section-future-guardians__photo img {
        display: block;
        width: calc(518px * 100vw / 1440px) !important;
        height: calc(575px * 100vw / 1440px) !important;
        max-width: none;
        object-fit: fill;
        border-radius: 0;
    }

    body.page-home .section-future-guardians__right {
        grid-column: 4;
        grid-row: 2;
        align-self: start;
        width: calc(674px * 100vw / 1440px) !important;
        max-width: calc(674px * 100vw / 1440px) !important;
        row-gap: calc(26px * 100vw / 1440px) !important;
    }

    body.page-home .section-future-guardians__item--yellow,
    body.page-home .section-future-guardians__item--green {
        position: relative;
        width: calc(674px * 100vw / 1440px) !important;
        max-width: calc(674px * 100vw / 1440px) !important;
        padding: 0 !important;
        row-gap: 0 !important;
        border-radius: calc(20px * 100vw / 1440px) !important;
        overflow: hidden;
        box-sizing: border-box;
    }

    body.page-home .section-future-guardians__item--yellow {
        order: -1;
        height: calc(270px * 100vw / 1440px);
    }

    body.page-home .section-future-guardians__item--green {
        height: calc(286px * 100vw / 1440px);
    }

    body.page-home .section-future-guardians__item--yellow .section-future-guardians__title,
    body.page-home .section-future-guardians__item--green .section-future-guardians__title {
        position: absolute;
        z-index: 2;
        margin: 0;
        font-size: calc(36px * 100vw / 1440px);
        font-weight: 600;
        line-height: 0.9;
        letter-spacing: 0;
        text-align: left;
    }

    body.page-home .section-future-guardians__item--yellow .section-future-guardians__title {
        left: calc(49px * 100vw / 1440px);
        top: calc(39px * 100vw / 1440px);
        width: calc(275px * 100vw / 1440px);
        max-width: calc(275px * 100vw / 1440px);
        color: #fff;
    }

    body.page-home .section-future-guardians__item--green .section-future-guardians__title {
        left: calc(49px * 100vw / 1440px);
        top: calc(42px * 100vw / 1440px);
        width: calc(355px * 100vw / 1440px);
        max-width: calc(355px * 100vw / 1440px);
        color: #4D4D4D;
    }

    body.page-home .section-future-guardians__item--yellow .section-future-guardians__text,
    body.page-home .section-future-guardians__item--green .section-future-guardians__text {
        position: absolute;
        z-index: 2;
        margin: 0;
        font-size: calc(22px * 100vw / 1440px);
        font-weight: 400;
        line-height: 1.1;
        letter-spacing: -0.01em;
    }

    body.page-home .section-future-guardians__item--yellow .section-future-guardians__text {
        left: calc(49px * 100vw / 1440px);
        top: calc(92px * 100vw / 1440px);
        width: calc(298px * 100vw / 1440px);
        max-width: calc(298px * 100vw / 1440px);
        color: #fff;
    }

    body.page-home .section-future-guardians__item--green .section-future-guardians__text {
        left: calc(49px * 100vw / 1440px);
        top: calc(129px * 100vw / 1440px);
        width: calc(367px * 100vw / 1440px);
        max-width: calc(367px * 100vw / 1440px);
        color: #4D4D4D;
    }

    body.page-home .section-future-guardians__item--yellow .section-future-guardians__btn,
    body.page-home .section-future-guardians__item--green .section-future-guardians__btn {
        position: absolute;
        z-index: 3;
        left: calc(44px * 100vw / 1440px);
        margin: 0;
        padding: 0;
        height: calc(38px * 100vw / 1440px);
        border-radius: 60px;
        font-size: calc(16px * 100vw / 1440px);
        font-weight: 700;
        line-height: calc(20px * 100vw / 1440px);
        letter-spacing: -0.02em;
        text-transform: uppercase;
        color: #4D4D4D;
    }

    body.page-home .section-future-guardians__item--yellow .section-future-guardians__btn,
    body.page-home .section-future-guardians__item--yellow:hover .section-future-guardians__btn,
    body.page-home .section-future-guardians__item--yellow:focus-visible .section-future-guardians__btn {
        bottom: calc(28px * 100vw / 1440px);
        width: calc(147px * 100vw / 1440px);
        background: #fff;
        color: #4D4D4D;
    }

    body.page-home .section-future-guardians__item--green .section-future-guardians__btn,
    body.page-home .section-future-guardians__item--green .section-future-guardians__btn--disabled,
    body.page-home .section-future-guardians__item--green:hover .section-future-guardians__btn,
    body.page-home .section-future-guardians__item--green:hover .section-future-guardians__btn--disabled,
    body.page-home .section-future-guardians__item--green:focus-visible .section-future-guardians__btn--disabled {
        bottom: calc(31px * 100vw / 1440px);
        width: calc(253px * 100vw / 1440px);
        background: #FFF7C3;
        color: #4D4D4D;
        cursor: default;
    }

    body.page-home .section-future-guardians__icon--family {
        width: calc(267px * 100vw / 1440px);
        height: calc(187px * 100vw / 1440px);
        right: calc(29px * 100vw / 1440px);
        bottom: calc(28px * 100vw / 1440px);
        top: auto;
        left: auto;
    }

    body.page-home .section-future-guardians__icon--special {
        width: calc(229px * 100vw / 1440px);
        height: calc(162px * 100vw / 1440px);
        right: calc(41px * 100vw / 1440px);
        bottom: calc(62px * 100vw / 1440px);
        top: auto;
        left: auto;
    }

    /* ——— FLUID: report — раскладка list в report-2026.css (992–1400 / tablet / mobile).
       Здесь только фон/отступы секции на 992–1439. ——— */
    body.page-home .home-geo {
        background-color: #fff;
        background-image: linear-gradient(180deg, #fff 0%, #E2FFE7 50%, #fff 100%);
        background-repeat: no-repeat;
        background-size: 100% calc(1110px * 100vw / 1440px);
        background-position: center calc(854px * 100vw / 1440px);
        overflow-x: clip;
    }

    body.page-home .home-geo > .section-geography,
    body.page-home .section-report {
        background: transparent;
    }

    /* ——— FLUID: geography (десктопные пропорции, % уже были — усиливаем колонку) ——— */
    body.page-home .section-geography > .container {
        max-width: var(--home-scene-w);
        margin-left: auto;
        margin-right: auto;
        padding: 0 calc(16px * 100vw / 1440px);
        box-sizing: border-box;
    }

    body.page-home .section-geography > .container > h2 {
        margin: 0 0 calc(32px * 100vw / 1440px);
        font-size: var(--home-h2) !important;
        font-weight: 400 !important;
        line-height: 1 !important;
        letter-spacing: -0.02em;
        text-align: center;
        color: #4D4D4D !important;
    }

    body.page-home .section-geography > .container > h2 span {
        color: #3EA74F !important;
    }

    body.page-home .section-geography__stage {
        max-width: calc(1188px * 100vw / 1440px);
        margin-left: auto;
        margin-right: auto;
        padding: 0;
    }

    body.page-home .section-geography__band {
        max-width: calc(413px * 100vw / 1440px);
        margin-top: calc(49px * 100vw / 1440px);
    }

    body.page-home .section-geography__count {
        font-size: calc(139px * 100vw / 1440px);
        letter-spacing: calc(1.2px * 100vw / 1440px);
    }

    body.page-home .section-geography__caption {
        width: calc(360px * 100vw / 1440px);
        margin-top: calc(36px * 100vw / 1440px);
        font-size: calc(32px * 100vw / 1440px);
        letter-spacing: calc(-0.32px * 100vw / 1440px);
    }

    /* ——— FLUID: campaign / stories / partners / news / donate / faq — колонка ——— */
    body.page-home .section-campaign {
        max-width: var(--home-scene-w);
        margin: calc(80px * 100vw / 1440px) auto calc(126px * 100vw / 1440px);
        padding: 0;
    }

    body.page-home .section-stories-wards h2,
    body.page-home .section-partners-slider h2,
    body.page-home .section-news h2,
    body.page-home .section-form-donate .form-donate--inline > h2 {
        font-size: var(--home-h2) !important;
        line-height: 1 !important;
        letter-spacing: -0.02em;
        max-width: calc(1100px * 100vw / 1440px);
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.page-home .section-form-donate .form-donate--inline > h2 {
        max-width: none;
        margin-left: 0 !important;
        margin-right: 0 !important;
        text-align: left;
    }

    body.page-home .section-stories-wards .section-slogan__text,
    body.page-home .section-stories-wards .section-slogan__text span {
        font-size: calc(28px * 100vw / 1440px) !important;
        line-height: 1.1 !important;
    }

    body.page-home .section-stories-wards.section-page {
        padding-top: calc(80px * 100vw / 1440px) !important;
        padding-bottom: calc(80px * 100vw / 1440px) !important;
    }

    body.page-home .section-stories-wards > .container,
    body.page-home .section-partners-slider > .container,
    body.page-home .section-news > .container,
    body.page-home .section-form-donate > .container,
    body.page-home .section-form-faq > .container {
        max-width: var(--home-scene-w);
        margin-left: auto;
        margin-right: auto;
        padding-left: calc(16px * 100vw / 1440px) !important;
        padding-right: calc(16px * 100vw / 1440px) !important;
        box-sizing: border-box;
    }

    body.page-home .section-form-donate .form-donate--inline,
    body.page-home .section-form-donate .form-donate__form.form-donate--inline {
        max-width: var(--home-scene-w);
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    body.page-home .section-form-faq .faq-2026,
    body.page-home .faq-2026 {
        max-width: var(--home-scene-w);
        margin-left: auto;
        margin-right: auto;
    }

    /* Wards: чуть ближе к десктопным пропорциям карточек */
    body.page-home .wards-item.swiper-slide {
        max-width: calc(344px * 100vw / 1440px);
        height: calc(401px * 100vw / 1440px);
    }

    body.page-home .wards-item.swiper-slide-active {
        max-width: calc(344px * 100vw / 1440px);
    }
}
