
/* Start Global */

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: var(--main-white);
}

::-webkit-scrollbar-thumb {
    background: var(--main-red);
    transition: all .5s linear;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--main-dark-red);
}

::selection {
	background: var(--main-black); /* WebKit/Blink Browsers */
	color: var(--main-white);
}
::-moz-selection {
	background: var(--main-black); /* Gecko Browsers */
	color: var(--main-white);
}

/* Fonts */

h1, h2, h3, h4, h5, h6 {
    color: var(--main-text-color);
}
p, li, span, div, a, .goth-book {
    font-family: var(--main-text-fam);
    color: var(--main-text-color);
}
.program-wrap a,
.entry-content a,
.text-area-inner a {
    font-weight: 700;
    color: var(--main-red);
    text-decoration: underline;
}
p, li {margin: 0 0 15px;}
h1 {
    margin: 0 0 15px;
    font-weight: 500;
    font-family: var(--main-title-fam);
}
h2, h3 {
    font-family: var(--main-title-fam);
    margin: 0 0 15px;
    font-weight: 500;
}
.big-title {
    font-family: var(--main-title-fam);
    font-weight: 800;
    font-size: 122px;
    line-height: 110px;
}
h1 {
    font-size: 80px;
    line-height: 82px;
}
h2 {
    font-size: 64px;
    line-height: 64px;
    font-weight: 500;
}
h3 {
    font-size: 40px;
    line-height: 46px;
    font-weight: 200;
}
h4 {
    font-size: 32px;
    line-height: 1.2;
    margin: 0 0 15px;
}

p, li, div, a {font-size: 20px;line-height: 1.4;}

.fs-12 {font-size: 12px;}
.fs-14 {font-size: 14px;}
.fs-16 {font-size: 16px;}
.fs-18 {font-size: 18px;}
.fs-20 {font-size: 20px;}
.fs-24 {font-size: 24px;}
.fs-32 {font-size: 32px;}
.fs-48 {font-size: 48px;}
.fs-64 {font-size: 64px;}
.fs-200 {font-size: 200px;}

.fw-400 {font-weight: 400;}
.fw-500 {font-weight: 500;}
.fw-700 {font-weight: 700;}
strong, b, .fw-800 {
    font-weight: 800;
}

.lh-1 {line-height: 1;}
.lh-12 {line-height: 1.2;}
.lh-15 {line-height: 1.5;}
.lh-16 {line-height: 1.6;}
.lh-28 {line-height: 28px;}

.indent {
    padding-left: 150px;
    text-indent:-150px;
}
.indent-big {
    padding-left: 40%;
    text-indent: -60%;
}
.ta-left {text-align: left;}
.ta-center {text-align: center;}
.ta-right {text-align: right;}

.italic {font-style: italic;}

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin: 20px 0;
}

/* Colors */

.color-white,
.color-white-all * {
    color: var(--main-white);
}
.main-color, p, li, div, a, button {
    color: var(--main-text-color)
}
.black-bg {
    background: var(--main-text-color);
}
.white-bg {
    background: var(--main-white);
}
.red-bg {
    background: var(--main-red);
}
.red-grad-bg {
    background: var(--red-gradient);
}

/* Grid */

.grid {
    max-width: 1740px;
    display: block;
    margin: 0 auto;
}
.sm-grid {
    max-width: 1200px;
    display: block;
    margin: 0 auto;
}
.xsm-grid {
    max-width: 860px;
    display: block;
    margin: 0 auto;
}
.gutter {
    margin: 0 20px;
}


/* Positioning */

.rel {position: relative;}
.abs {position: absolute;}
.fixed {position: fixed;}

.abs-center {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.go-right {margin-left: auto;}
.go-center {margin: 0 auto;}

.z-1 {z-index: 1;}
.z-2 {z-index: 2;}
.z-5 {z-index: 5;}
.z-10 {z-index: 10;}
.z-999 {z-index: 999;}
.z-1000 {z-index: 1000;}

.display-none {display: none;}
.display--inline-top {
    display: inline-block;
    vertical-align: top;
}
.display--inline-mid {
    display: inline-block;
    vertical-align: middle;
}
.display--inline-bot {
    display: inline-block;
    vertical-align: bottom;
}
.display-block {display: block;}
.display--grid {display: grid;}
.display--flex {display: flex;}

.gap-8 {gap: 8px;}

.jc-sb {justify-content: space-between;}

.top-left {top: 0; left: 0}
.top-right {top: 0; right: 0}

/* Sizing */

.full-width {width: 100%;}
.full-height {height: 100%;}
.max-content {width: max-content;}
.fill-dimentions {width: 100%; height: 100%;}

.va-mid {vertical-align: middle;}
.align-center {align-items: center;}

.block-20 {width: 20%;}
.block-25 {width: 25%;}
.block-30 {width: 30%;}
.block-33 {width: 33.3333%;}
.block-40 {width: 40%;}
.block-50 {width: 50%;}
.block-60 {width: 60%;}
.block-66 {width: 66.6667%;}
.block-70 {width: 70%;}
.block-80 {width: 80%;}

.pad-20 {padding: 20px;}
.pad-top-150 {padding-top: 150px;}
.content-pad,
.pad-tb-50 {padding: 50px 0;}
.pad-tb-100 {padding: 100px 0 0;}
.marg-bot-100 {padding-top: 150px;}

/* Style Classes */

.overflow {overflow: hidden;}
.pe-none {pointer-events: none;}
.main-trans {transition: var(--main-ease);}
.mh-screen {min-height: 100vh;}
.no-margin {margin: 0;}
.no-padding {padding: 0;}

/* Theme Basic Declarations */

.top-pad {padding-top: var(--top-pad);}

.red-bold strong {font-weight: 900; color: var(--main-red);}

@media (max-width: 1440px) {
    p, li, div, a {font-size: 18px;line-height: 1.4;}
}

@media (max-width: 1024px) {
    p, li, div, a {font-size: 16px;line-height: 1.4;}
    h4 {font-size: 28px;}
    h2 {font-size: 55px;line-height: 55px;}
}
@media (max-width: 768px) {
    h4 {font-size: 24px;}
    h2 {font-size: 40px;line-height: 40px;}
}
@media (max-width: 425px) {
    h4 {font-size: 20px;}
    h2 {font-size: 33px;line-height: 33px;}
}