/* ─── Section height system ─── */
/* Переопределяем/дополняем встроенные стили из style.css */

/* Hero — 1 полный экран (100svh - header) */
.hero {
    min-height: calc(100svh - 72px);
}

/* Protection — 1 полный экран, panel на всю высоту */
.protection {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
}

.protection-panel {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.protection-panel > .container {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Risks, Advantages, Process — 1 полный экран */
.risks,
.advantages,
.process-showcase {
    min-height: 100svh;
}

/* Solutions — 0.75 экрана (3 колонки, контента средне) */
.solutions {
    min-height: 75svh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: var(--section-padding-medium) 0;
}
.solutions > .container {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Stats (мало контента, 4 цифры) — 0.5 экрана */
section.stats {
    min-height: 50svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: var(--section-padding-small) 0 !important;
}
section.stats > .container {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* Materials (waf.html) — 0.5 экрана */
section.section--gray {
    min-height: 50svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: var(--section-padding-small) 0 !important;
}
section.section--gray > .container {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* FAQ (waf.html) — 0.5 экрана */
section.section--faq {
    min-height: 50svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: var(--section-padding-small) 0 !important;
}
section.section--faq > .container {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* Letters (мало контента, 4 карточки) — 0.75 экрана */
.letters {
    min-height: 75svh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: var(--section-padding-medium) 0;
}
.letters > .container {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Contact (средний контент — форма + текст) — 0.55 экрана */
section.contact {
    min-height: 55svh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: var(--section-padding-small) 0 !important;
}
section.contact > .container {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* Fallback для браузеров без svh */
@supports not (min-height: 100svh) {
    .hero {
        min-height: calc(100vh - 72px);
    }
    .protection {
        min-height: 100vh;
    }
    .risks,
    .advantages,
    .process-showcase {
        min-height: 100vh;
    }
    .solutions,
    section.stats,
    .letters,
    section.contact,
    section.section--gray,
    section.section--faq {
        min-height: 50vh;
    }
}
