/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/
/* ===========================
   Отступы (Bootstrap 5)
   =========================== */
.m-0  { margin: 0; }
.m-1  { margin: 0.25rem; }
.m-2  { margin: 0.5rem; }
.m-3  { margin: 1rem; }
.m-4  { margin: 1.5rem; }
.m-5  { margin: 3rem; }
.m-auto { margin: auto; }

.p-0  { padding: 0; }
.p-1  { padding: 0.25rem; }
.p-2  { padding: 0.5rem; }
.p-3  { padding: 1rem; }
.p-4  { padding: 1.5rem; }
.p-5  { padding: 3rem; }

/* Верх (top) */
.mt-0  { margin-top: 0; }
.mt-1  { margin-top: 0.25rem; }
.mt-2  { margin-top: 0.5rem; }
.mt-3  { margin-top: 1rem; }
.mt-4  { margin-top: 1.5rem; }
.mt-5  { margin-top: 3rem; }
.mt-auto { margin-top: auto; }

.pt-0  { padding-top: 0; }
.pt-1  { padding-top: 0.25rem; }
.pt-2  { padding-top: 0.5rem; }
.pt-3  { padding-top: 1rem; }
.pt-4  { padding-top: 1.5rem; }
.pt-5  { padding-top: 3rem; }

/* Низ (bottom) */
.mb-0  { margin-bottom: 0; }
.mb-1  { margin-bottom: 0.25rem; }
.mb-2  { margin-bottom: 0.5rem; }
.mb-3  { margin-bottom: 1rem; }
.mb-4  { margin-bottom: 1.5rem; }
.mb-5  { margin-bottom: 3rem; }
.mb-auto { margin-bottom: auto; }

.pb-0  { padding-bottom: 0; }
.pb-1  { padding-bottom: 0.25rem; }
.pb-2  { padding-bottom: 0.5rem; }
.pb-3  { padding-bottom: 1rem; }
.pb-4  { padding-bottom: 1.5rem; }
.pb-5  { padding-bottom: 3rem; }

/* Слева (start / left) */
.ml-0  { margin-left: 0; }
.ml-1  { margin-left: 0.25rem; }
.ml-2  { margin-left: 0.5rem; }
.ml-3  { margin-left: 1rem; }
.ml-4  { margin-left: 1.5rem; }
.ml-5  { margin-left: 3rem; }
.ml-auto { margin-left: auto; }

.pl-0  { padding-left: 0; }
.pl-1  { padding-left: 0.25rem; }
.pl-2  { padding-left: 0.5rem; }
.pl-3  { padding-left: 1rem; }
.pl-4  { padding-left: 1.5rem; }
.pl-5  { padding-left: 3rem; }

/* Справа (end / right) */
.mr-0  { margin-right: 0; }
.mr-1  { margin-right: 0.25rem; }
.mr-2  { margin-right: 0.5rem; }
.mr-3  { margin-right: 1rem; }
.mr-4  { margin-right: 1.5rem; }
.mr-5  { margin-right: 3rem; }
.mr-auto { margin-right: auto; }

.pr-0  { padding-right: 0; }
.pr-1  { padding-right: 0.25rem; }
.pr-2  { padding-right: 0.5rem; }
.pr-3  { padding-right: 1rem; }
.pr-4  { padding-right: 1.5rem; }
.pr-5  { padding-right: 3rem; }

/* По горизонтали (ось X) */
.mx-0  { margin-left: 0; margin-right: 0; }
.mx-1  { margin-left: 0.25rem; margin-right: 0.25rem; }
.mx-2  { margin-left: 0.5rem; margin-right: 0.5rem; }
.mx-3  { margin-left: 1rem; margin-right: 1rem; }
.mx-4  { margin-left: 1.5rem; margin-right: 1.5rem; }
.mx-5  { margin-left: 3rem; margin-right: 3rem; }
.mx-auto { margin-left: auto; margin-right: auto; }

.px-0  { padding-left: 0; padding-right: 0; }
.px-1  { padding-left: 0.25rem; padding-right: 0.25rem; }
.px-2  { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-3  { padding-left: 1rem; padding-right: 1rem; }
.px-4  { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-5  { padding-left: 3rem; padding-right: 3rem; }

/* По вертикали (ось Y) */
.my-0  { margin-top: 0; margin-bottom: 0; }
.my-1  { margin-top: 0.25rem; margin-bottom: 0.25rem; }
.my-2  { margin-top: 0.5rem; margin-bottom: 0.5rem; }
.my-3  { margin-top: 1rem; margin-bottom: 1rem; }
.my-4  { margin-top: 1.5rem; margin-bottom: 1.5rem; }
.my-5  { margin-top: 3rem; margin-bottom: 3rem; }
.my-auto { margin-top: auto; margin-bottom: auto; }

.py-0  { padding-top: 0; padding-bottom: 0; }
.py-1  { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-2  { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-3  { padding-top: 1rem; padding-bottom: 1rem; }
.py-4  { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-5  { padding-top: 3rem; padding-bottom: 3rem; }

/* ===========================
   Шрифт Tektur SemiCondensed
   =========================== */

h1.tektur , h2.tektur, h3.tektur, h4.tektur, h5.tektur, h6.tektur {
    font-family: var(--gp-font--tektur-semicondensed);
    font-weight: 600;
    line-height: 1em;
}

h1.tektur {
    font-size: calc(50px + 15 * ((100vw - 320px) / (1400 - 320)));
}
h2.tektur {
    font-size: calc(40px + 13 * ((100vw - 320px) / (1400 - 320)));
}
h3.tektur {
    font-size: calc(30px + 10 * ((100vw - 320px) / (1400 - 320)));
}
h4.tektur {
    font-size: calc(25px + 7 * ((100vw - 320px) / (1400 - 320)));
}
h5.tektur {
    font-size: calc(22px + 5 * ((100vw - 320px) / (1400 - 320)));
}
h6.tektur {
    font-size: calc(20px + 3 * ((100vw - 320px) / (1400 - 320)));
}

.gradient-red-flow {
    background: linear-gradient(
        90deg,
        #ff0000,
        #ff4d4d,
        #ff1a1a,
        #cc0000,
        #ff3333,
        #ff4d4d,
        #ff0000
    );
    background-size: 300% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    animation: gradientFlow 8s ease infinite;
}

@keyframes gradientFlow {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* ===========================
   Шрифт Geologica
   =========================== */

h1 {
    font-size: calc(27px + 15 * ((100vw - 320px) / (1400 - 320)));
}
h2 {
    font-size: calc(25px + 13 * ((100vw - 320px) / (1400 - 320)));
}
h3 {
    font-size: calc(23px + 10 * ((100vw - 320px) / (1400 - 320)));
}
h4 {
    font-size: calc(22px + 7 * ((100vw - 320px) / (1400 - 320)));
}
h5 {
    font-size: calc(22px + 5 * ((100vw - 320px) / (1400 - 320)));
}
h6 {
    font-size: calc(20px + 3 * ((100vw - 320px) / (1400 - 320)));
}

/* ===========================
   Header на сторінці 64
   =========================== */
@media (min-width: 1475px) {
	body.page-id-64 .site-logo {
		margin-top: 1rem
	}
	.gb-element-dbfddf70 {
		border-radius: 16px;
	}
}

.both-sticky-menu .main-navigation:not(#mobile-header).toggled .main-nav > ul, .mobile-sticky-menu .main-navigation:not(#mobile-header).toggled .main-nav > ul, .mobile-header-sticky #mobile-header.toggled .main-nav > ul {
    position: absolute;
    left: auto;
    right: .5rem;
    box-shadow: 0px -1px 0px 0px rgba(47, 43, 67, 0.10) inset, 0px 1px 3px 0px rgba(47, 43, 67, 0.50);
}

/* === Сторінка "Зупинка масивних кровотеч" === */
body.page-id-64 .site-header,
body.page-id-64 .site-header .inside-header {
    /* background-color: var(--contrast); */
	background-color: transparent;
    color: var(--base-3);
}

/* === Сторінка ID 64: стилізуємо тільки основне меню (#site-navigation) === */
body.page-id-64 #site-navigation {
    /* background-color: var(--contrast); */
	background-color: transparent;
    color: var(--base-3);
}

/* Посилання меню, бургер і додаткові елементи — білі */
body.page-id-64 #site-navigation .main-nav ul li a,
body.page-id-64 #site-navigation .menu-toggle,
body.page-id-64 #site-navigation .menu-bar-items {
    color: var(--base-3);
}

/* Активний пункт меню і hover — базовий колір */
body.page-id-64 #site-navigation .main-nav ul li[class*="current-menu-"] > a,
body.page-id-64 #site-navigation .main-nav ul li a:hover {
    color: var(--contrast-3);
}

/* Іконка бургер-меню — біла */
body.page-id-64 #site-navigation .menu-toggle svg path {
    fill: var(--base-3);
}

/* При наведенні — базовий колір */
body.page-id-64 #site-navigation .menu-toggle:hover svg path {
    fill: var(--contrast-3);
}
/* === Сторінка ID 64: Мобільне меню === */

/* 1. Фон навігації та вкладених списків — прозорий */
body.page-id-64 #mobile-menu-control-wrapper.main-navigation,
body.page-id-64 #mobile-menu-control-wrapper.main-navigation ul ul {
    background-color: transparent;
}

/* 2. Кнопка меню (бургер) — біла */
body.page-id-64 #mobile-menu-control-wrapper .menu-toggle {
    color: var(--base-3);
}

/* Також фарбуємо svg-іконку бургер-меню */
body.page-id-64 #mobile-menu-control-wrapper .menu-toggle svg path {
    fill: var(--base-3);
}

/* При наведенні — колір змінюється на базовий */
body.page-id-64 #mobile-menu-control-wrapper .menu-toggle:hover,
body.page-id-64 #mobile-menu-control-wrapper .menu-toggle:hover svg path {
    color: var(--base);
    fill: var(--base);
}

/* 3. Коли меню розкрите (.toggled) — фон чорний */
@media (max-width: 1024px) {
	body.page-id-64 #site-navigation .main-nav ul li {
		background-color: var(--contrast);
	}
}

/* 4. Посилання всередині меню — білі */
body.page-id-64 #mobile-menu-control-wrapper.main-navigation.toggled .main-nav ul li a {
    color: var(--base-3);
}

/* 5. Hover або активний пункт — базовий колір */
body.page-id-64 #mobile-menu-control-wrapper.main-navigation.toggled .main-nav ul li a:hover,
body.page-id-64 #mobile-menu-control-wrapper.main-navigation.toggled .main-nav ul li[class*="current-menu-"] > a {
    color: var(--base);
	background-color: var(--contrast-2);
}

/* === Сторінка ID 64: Стилизация === */

.gb-element-89c08d19 {
    background-color: var(--contrast);
    background: radial-gradient(circle, #071036 1px, #020617 1px);
    background-size: 20px 20px;
    min-height: 100vh;
    background-attachment: fixed;
}
.gb-element-91ae7a46 div:is(:hover,:focus) {
    background-color: var(--contrast-2);
	border-radius: 8px;
}

/* липкий хедер */
.sticky-enabled .main-navigation.is_stuck {
	backdrop-filter: blur(14px) saturate(184%);
	box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, .2);
	background-color: rgb(255 255 255 / 85%);
}
.gp-icon.icon-menu-bars svg {
    height: 1.2em;
    width: 1.2em;
    top: .125em;
    position: relative;
    fill: currentColor;
}
/* Футер */
#block-19.widget_text p {
	line-height: 1.9;
}
.social-media-icons {
	gap: 1em;
}
.footer-widgets small {
	display: block;
    font-size: 80%;
    line-height: 1.5;
}