*, *::after, *::before {
    box-sizing: border-box;
}
html {
    font-size: 16px;
}
body {
    --color: #232323;
    --accent-color: #0D4DB1;
    --inline-margin: 405px;

    --page-color-h: 219;
	--page-color-h2: 219;
    --page-fg-color: hsl( 0, 0%, 0% );
	--page-fg2-color: hsl( 0, 0%, 31% );
	--page-bg-color: hsl( 0, 0%, 100% );
	--page-bg2-color: hsl(217, 86%, 37%);
	--page-bg3-color: hsl(0, 0%, 88%); 
	--page-fg3-color: hsl(0, 0%, 47%); 
	--page-fg4-color: hsl(0, 0%, 60%); 
	--page-border-color: hsl(0, 0%, 80%);
	--page-darkfg-color: hsl( 0, 0%, 100% );
	--page-darkfg2-color: hsl( 0, 0%, 100% );
	--page-darkbg-color: hsl( var(--page-color-h), 30%, 25% );
	--page-darkbg2-color: hsl( var(--page-color-h), 45%, 16% );
	--page-darkborder-color: hsla( var(--page-color-h), 0%, 100%, 0.3 );
	--page-darkfg3-color: hsl( 209, 38.67%, 66.81% );
	--page-darkbg3-color: hsl( 0, 0%, 94.12% );
    --page-main-kit-bg1: hsl( 0, 0%, 100% );

    background-image: url(../imgs/backgrounds/grey_pattern.jpg);
    background-repeat: repeat;

    --a-time: 4s;
    letter-spacing: -0.02em;
}
html,body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-family: 'montserrat', monospace;
	font-weight: normal;
    color: var(--color);
}
body.scroll-fix {
	overflow: hidden;
}
h1, h2, h3 {
    margin: 0;
}
h1, h2 {
    font-family: 'heuristica';
    font-weight: 700;
    font-size: 4em;
    line-height: 110%;
    text-align: center;
    text-transform: uppercase;
    color: var(--accent-color);
    margin: 0;
    padding: 0;
}
a {
    color: inherit;
}
button {
    outline: unset;
    border: unset;
    margin: 0;

    font-size: 1.5rem;
    padding-inline: 1em;
    padding-block: 0.5em;
    border-radius: 0.25em;
    width: fit-content;
    transition: all 0.3s;
}
button:hover {
    cursor: pointer;
}
.button {
    display: inline-block;
    outline: unset;
    border: unset;
    text-decoration: none;
    margin: 0;

    font-size: 1.5rem;
    padding-inline: 1em;
    padding-block: 0.5em;
    border-radius: 0.25em;
    width: fit-content;
    transition: all 0.3s;
}
button.blue, .button.blue {
    background-color: #408AFF;
    color: #fff;
}
button.blue:hover, .button.blue:hover {
    background-color: #609cfc;
}
button.golden, .button.golden {
    background: linear-gradient(85.18deg, #E2D99D -29.1%, #D0A56A 7.95%, #F7EEB2 42.15%, #D0A56A 100.34%, #F7EEB2 144.51%, #E2D99D 163.51%);
    color: #A3855C;
    background-size: 150%;
    background-position: 0 0;
}
button.golden:hover, .button.golden:hover {
    background-position: 50% 0;
}
.none {
    display: none;
}
.center {
    display: flex;
    flex-direction: column;
    align-items: center;
} 
.underline, .overline {
    position: relative;
    --border-width: 3px;
    --gap: 0.2em;
}
.underline.bigline, .overline.bigline {
    --gap: 1.25em;
}
.underline {
    margin-bottom: calc(var(--gap) + var(--border-width) * 2);
}
.overline {
    margin-top: calc(var(--gap) + var(--border-width) * 2);
}
.underline::after, .overline::before {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: calc(var(--gap) + var(--border-width) * 2);
    border: solid var(--accent-color);
    border-width: var(--border-width) 0 var(--border-width) 0;
}
.underline::after {
    bottom: calc(-1 * (var(--gap) + var(--border-width) * 2));
}
.overline::before {
    top: calc(-1 * (var(--gap) + var(--border-width) * 2));
}

.img-wrapper {
    object-fit: cover;
    overflow: hidden;
}
.img-wrapper img {
    display: block;
    width: 100%;
}
img.can-full {
    cursor: pointer;
}
.slider {
    background: none;
}
.slider .slider-arrow {
    filter: none;
    color: var(--slider-controls-color, --page-accent-color);
}
.slider .slider-item-marker {
    filter: none;
    color: var(--slider-controls-color, --page-accent-color);
}
.slider .slider-item {
    background: none;
    color: var(--color);
}
.slider.round-markers {
    /* --page-fg-color: #fff; */
}
.slider.round-markers .slider-markers {
    height: 40px;
    justify-content: center;
    bottom: 7%;
}
.slider.round-markers .slider-item-marker {
    max-width: 19px;
    height: 19px;
    color: var(--slider-controls-color);
}
.slider .slider-item-marker-active {
	max-width: 19px;
}

.slider.round-markers .slider-item-marker::after, .slider.round-markers .slider-item-marker::before {
	height: 100%;
    aspect-ratio: 1 / 1;
	border-radius: 51%;
    border: 1px solid var(--slider-controls-color);
    bottom: 0;
    background-color: unset;
}
.slider.round-markers .slider-item-marker::before {
	content: unset;
}
.slider.round-markers .slider-item-marker::after {
	right: 0;
	opacity: 1;
}
.slider.round-markers .slider-item-marker-active::after {
    background-color: var(--slider-controls-color);
}
.slider.round-markers .slider-item-marker-active:after {
	animation: unset;
}
body:has( .loader.loading ) {
    overflow: hidden;
}
body:has( .loader.animate ) {
    animation: a1 var(--a-time) none;
}
@keyframes a1 {
    0% {
        overflow: hidden;
    }
    100% {
        overflow: hidden;
    }
}
.loader {
    position: absolute;
    z-index: 10;
    inset: 0;
    background-color: #fff;
}
.loader:not(.animate, .loading) {
    display: none;
}
.loader.loading {
    
}
.loader.loading::after {
    position: absolute;
    z-index: 10;
    left: 50%;
    top: 50%;
    transform: translateX(-50%);
    content: "";
    width: 50px;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 8px solid;
    border-color: #000 #0000;
    animation: l1 1s infinite;
}
@keyframes l1 {to{transform: translateX(-50%) rotate(.5turn)}}

.loader.loading .years-outer {
    opacity: 0;
}

.loader.animate {
    display: flex;
    justify-content: center;
    animation: a var(--a-time) forwards;
    opacity: 1;
}
@keyframes a {
    90% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        display: none;
    }
}
.loader.animate::before {
    position: absolute;
    inset: 2em;
    content: "";
    background-image: url(../imgs/new_animation/logo.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    z-index: -1;
}
.loader.animate::after {
    position: absolute;
    inset: 0;
    content: "";
    background-image: url(../imgs/new_animation/new_animation_bg.jpg);
    background-repeat: no-repeat;
    animation: a2 var(--a-time) 1 forwards;
    z-index: -1;
}
@keyframes a2 {
    40% {
        opacity: 1;
    }
    60% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
.loader.animate .years-outer {
    line-height: 1em;
    position: absolute;
    /* z-index: 10; */
    font-size: clamp(6em, 13vw, 15em);
    left: 50%;
    transform: translateX(-50%);
    top: calc(50% - 0.5em);
    font-weight: 600;
    height: 1em;
    width: fit-content;
    overflow: hidden;
}
.loader.animate .years-inner {
    animation: a3 var(--a-time) 1 forwards;
}
@keyframes a3 {
    99% {
        transform: translateY(calc(-100% + 1em));
        opacity: 1;
    }
    100% {
        opacity: 0;
        display: none;
    }
}
section.main {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #F2F2F2;
}
.screen {
    height: 100vh;
}
section.main .first-screen {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-evenly;
}
section.main .first-screen > * {
    flex-grow: 0;
}
section.main .name {
    width: 50%;
    max-width: 920px;
    color: var(--accent-color);
    text-align: center;
    font-weight: 600;
    font-size: 2em;
    /* letter-spacing: -0.01em; */
    /* margin-top: 5em; */
}
/* section.main .animation-outer {
    --opacity-timing: 1s;

    position: relative;
    width: 100%;
    height: 1000vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    isolation: isolate;
}
section.main .animation-outer .animation-frame {
    --a-time: 0.3s;
    background-image: linear-gradient(to top, #fff, #fff);
    transition: background-image var(--a-time), opacity var(--opacity-timing);
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    
    background-image: url();
    background-size: cover;
    background-repeat: no-repeat;
}
section.main .animation-outer .animation-frame::after {
    position: absolute;
    content: "";
    inset: 0;
    background: #ffffff30;
}
section.main .animation-outer .animation-frame.first, section.main .animation-outer .animation-frame.second, section.main .animation-outer .animation-frame.third, section.main .animation-outer .animation-frame.fourth, section.main .animation-outer .animation-frame.fifth, section.main .animation-outer .animation-frame.sixth {

}
section.main .animation-outer .animation-frame.first {
    background-image: url(../imgs/main_animation/_1930.jpg);
}
section.main .animation-outer .animation-frame.second {
    background-image: url(../imgs/main_animation/_1940.jpg);
}
section.main .animation-outer .animation-frame.third {
    background-image: url(../imgs/main_animation/_1950.jpg);
}
section.main .animation-outer .animation-frame.fourth {
    background-image: url(../imgs/main_animation/_1960.jpg);
}
section.main .animation-outer .animation-frame.fifth {
    background-image: url(../imgs/main_animation/_1970.jpg);
}
section.main .animation-outer .animation-frame.sixth {
    background-image: url(../imgs/main_animation/_1980.jpg);
}
section.main .animation-outer .animation-frame.seventh {
    background-image: url(../imgs/main_animation/_1990.jpg);
}
section.main .animation-outer .animation-frame.eighth {
    background-image: url(../imgs/main_animation/_2000.jpg);
}
section.main .animation-outer .animation-frame.ninth {
    background-image: url(../imgs/main_animation/_2010_grey.jpg);
}
section.main .animation-outer .animation-frame.tenth {
    background-image: url(../imgs/main_animation/_2020_grey.jpg);
    opacity: 1;
}
section.main .animation-outer .animation-frame.final {
    background-image: url(../imgs/main_animation/_2020_grey.jpg);
}
section.main .animation-outer .animation-frame::before {
    position: absolute;
    content: "";
    inset: 0;
    z-index: 2;
    background-color: #ffffff00;
    transition: background-color var(--opacity-timing) linear;
}
section.main .animation-outer .animation-frame.final::before {
    background-color: #f2f2f2;
}

section.main .animation-outer .years-outer {
    line-height: 1em;
    position: absolute;
    z-index: 1;
    font-size: clamp(6em, 13vw, 15em);
    left: 50%;
    transform: translateX(-50%);
    top: calc(50% - 0.5em);
    font-weight: 600;
    height: 1em;
    width: fit-content;
    overflow: hidden;
}
section.main .animation-outer .years-inner {
    transform: translateY(calc( -1em * var(--scroll-year-value)));
    transition: all 0.5s ease-out;
    text-align: center;
}

section.main .animation-outer .animation-frame.final .years-inner {
    display: none; 
}*/
/* section.main .animation-outer .year-count-frame {
    position: absolute;
    left: calc(50% - 2em);
    top: calc(50% - 0.5em);
    width: 3em;
    height: 1em;
    overflow: hidden;
}
section.main .animation-outer .year-count-inner {
    display: flex;
    position: absolute;
    inset: 0;
    line-height: 1em;
    font-weight: 600;
    width: 3em;
    margin-inline: auto;
    z-index: -1;
}
section.main .animation-outer .year-count-inner .digits-hundreds {}
section.main .animation-outer .year-count-inner .digits-decade {
    display: flex;
    /* gap: 9em; */
    /* flex-direction: column; */
/* } */
/* section.main .animation-outer .year-count-inner .digits-decade > .year-count-digits-inner {
    height: 10em;
}
section.main .animation-outer .year-count-inner .year-count-digit {
    position: sticky;
    top: calc(50% - 0.5em);
}
section.main .animation-outer .year-count-inner .digits-year {} */
section.main .bg95 {
    width: 100%;
    background-image: url(../imgs/backgrounds/95_back_new3.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 3em;
    z-index: 0;
} 
/* section.main .animation-outer:has( .animation-frame.final ) .bg95{
    opacity: 1;
} */
section.main .bg95 .bg95-inner {
    width: 50%;
    max-width: 35em;
    min-width: 30em;
}
.bg95 p {
    font-weight: 500;
    font-size: 2em;
    line-height: 140%;
    text-align: center;
    letter-spacing: -0.04em;
}
section.main h2 {
    margin-bottom: 0.2em;
}
.slider.slider-main {
    --slider-controls-color: white;
    height: 800px;
    width: 100%;
    position: relative;
    background: linear-gradient(360deg, rgba(255, 255, 255, 0) 0%, #F2F2F2 100%),
    linear-gradient(180deg, rgba(31, 79, 165, 0), hsl(219, 68%, 38%));
}
.slider.slider-main::after {
    position: absolute;
    content: "";
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgb(126 140 166 / 0%) 70%, hsl(219, 68%, 38%));
}
.slider.slider-main .slider-item {
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider.slider-main .slider-item.first {
    background-image: url(../imgs/slider_main/1.jpg);
}
.slider.slider-main .slider-item.second {
    background-image: url(../imgs/slider_main/2.jpg);
    background-position-y: 80%;
}
.slider.slider-main .slider-item.third {
    background-image: url(../imgs/slider_main/3.jpg);
    background-position-y: 20%;
}
.slider.slider-main .slider-item.fourth {
    background-image: url(../imgs/slider_main/4.jpg);
}
.slider.slider-main .slider-item .caption {
    max-width: 80%;
    width: 500px;
    /* min-width: 20em; */
    border-radius: 1em;
    background-color: #F2F2F2;
    box-shadow: 0px 3.1px 23.24px 0px #00000040;
    padding: 3em;
    text-align: center;
    hyphens: manual;
}
.slider.slider-main .slider-item.second .caption {
    margin-top: 5em;
}
.slider.slider-main .slider-item.third .caption {
    margin-bottom: auto;
    margin-top: 3em;
}
.slider.slider-main .slider-item .caption b {
    font-size: 1.75em;
    font-weight: 700;
    line-height: 110%;
}
.slider.slider-main .slider-item .caption p {
    font-size: 1.13em;
    margin-bottom: 0;
}
section.history {
    position: relative;
    background: linear-gradient(180deg, rgb(255 255 255 / 0%) 90%, #F2F2F2 100%), url(../imgs/backgrounds/blue_pattern1.jpg);
    background-repeat: no-repeat, repeat;

    --color: #fff;
    --accent-color: #fff;
    color: var(--color);
}
/* section.history::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 20em;
} */
section.history .lines {
    margin-inline: 6em;
    position: relative;
    isolation: isolate;
    padding-bottom: 8em;
}
section.history .lines::after, section.history .lines::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    height: 100%;
    width: 1.5em;
    border-inline: 4px solid #fff;
}
section.history .lines::after {
    left: -1.5em;
}
section.history .lines::before {
    right: -1.5em;
}
section.history .logo-wrapper-95 {
    display: flex;
    justify-content: center;
    padding-block: 10em;
}
section.history .logo-wrapper-95 img {
    width: 50%;
}
section.history h2 {
    width: 70%;
    font-size: 5rem;
    margin-bottom: 6rem;
}
section.history .timeline {
    position: relative;
}
section.history .year-wrapper {
    display: flex;
    justify-content: right;
    position: relative;
}
section.history .year-wrapper .year {
    position: relative;
    margin-left: 1em;
    margin-top: auto;
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke: 2.5px #408AFF;
    font-size: clamp(5em, 9vw, 10em);
    font-weight: 700;
    font-family: Heuristica;
    line-height: 0.8em;
    text-transform: uppercase;
    padding-right: 0.05em;
    border: #408AFF solid;
    border-width: 0 2px 3px 0;
}
section.history .year-wrapper .year::after {
    content: "";
    position: absolute;
    bottom: -13.5px;
    right: -14px;
    width: 25px;
    height: 25px;
    border-radius: 51%;
    background-color: #408AFF;
    z-index: 2;
}
section.history .year-wrapper:last-of-type .year {
    -webkit-text-stroke: 2.5px #fff;
    border-color: #fff;
}
section.history .year-wrapper:last-of-type .year::after {
    background-color: #fff;
}
section.history .year-wrapper:last-of-type .year-img-wrapper {
    border-color: #fff;
}
section.history .year-img-wrapper {
    position: relative;
    border-bottom: #408AFF 3px solid;
}
section.history .year-img-wrapper::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 53.4%, rgba(43, 42, 41, 0.85) 91.52%),
linear-gradient(0deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1));
}
section.history .year-wrapper:first-of-type .year-img-wrapper::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 53.4%, rgba(43, 42, 41, 0.85) 91.52%),
    linear-gradient(180deg, #1F4FA5 0%, rgba(31, 79, 165, 0) 56.32%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.29), rgba(0, 0, 0, 0.29));
}

section.history .year-img-wrapper p {
    position: absolute;
    left: 1em;
    bottom: 1em;
    margin: 0;
    padding: 0;
    z-index: 2;

    font-size: 1.5em;
    font-weight: 500;
    line-height: 120%;
    width: 60%;
    min-width: 10em;
    max-width: 100%;
}

section.achievements {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #F2F2F2;
}
section.achievements h2 {
    margin-top: 8rem;
    width: 35%;
    max-width: 100%;
    min-width: 10em;
}
section.achievements .center p {
    width: 35%;
    max-width: 100%;
    min-width: 18em;

    text-align: center;
    font-weight: 500;
    font-size: 1.5em;
    line-height: 140%;
}

section.achievements .achieves-outer {
    /* width: 57%; */
    padding-inline: var(--inline-margin);
    margin-top: 3em;
    max-width: 100%;
}
section.achievements .achieve-outer:last-of-type .l-left {
    padding-bottom: 3em;
}
section.achievements .achieve-outer h3 {
    font-weight: 700;
    font-size: 2.5em;
    line-height: 110.00000000000001%;
    text-transform: uppercase;
    color: var(--accent-color);
    /* width: 40%;
    max-width: 100%;
    min-width: 10em; */
    padding-bottom: 0.2em;
    /* hyphens: auto; */
}
section.achievements .achieve-outer h3.right {
    /* margin-left: auto; */
    text-align: right;
    min-width: 15em;
}
section.achievements .achieve-inner, section.achievements .achieve-h-outer {
    display: flex;
}
section.achievements .achieve-outer:not(:first-of-type) h3 {
    padding-top: 10rem;
}
section.achievements .achieve-inner > *, section.achievements .achieve-h-outer > * {
    margin: -1.5px;
    width: 33%;
    max-width: 33%;
    padding-inline: 1rem;
    border: 3px solid #ffffff00;
}
section.achievements .achieve-h-outer > .two {
    width: calc(66% - 3px);
    max-width: calc(66% - 3px);
    padding-inline: 3rem;
    /* margin-inline: -3px; */
}
section.achievements .achieve-inner > *:last-child, section.achievements .achieve-h-outer > *:last-child {
    padding-right: 0;
}
section.achievements .achieve-inner > *:first-child, section.achievements .achieve-h-outer > *:first-child {
    padding-left: 0;
}
/* section.achievements .achieve-img-outer > img {
    display: block;
} */
section.achievements .achieve-text {
    font-weight: 400;
    font-size: 1.25em;
    line-height: 130%;
}

section.achievements .l-right {
    border-right: 3px solid #408AFF;
}
section.achievements .l-top {
    border-top: 3px solid #408AFF;
}
section.achievements .l-bottom {
    border-bottom: 3px solid #408AFF;
    padding-bottom: 1rem;
}
section.achievements .l-left {
    border-left: 3px solid #408AFF;
}
section.achievements .beginning-outer {
    /* display: flex;
    justify-content: center; */
    width: 100%;
    padding-inline: var(--inline-margin);
    padding-block: 2em;
    background-image: linear-gradient(180deg, rgba(13, 77, 177, 0) 55.76%, #0D4DB1 100%),
    url(../imgs/backgrounds/begin_back.jpg);
    color: #ffffff;
}
section.achievements .beginning-inner {
    /* max-width: 1200px;
    width: 80%;
    min-width: 20em; */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
section.achievements .beginning-inner p {
    font-size: 1.5em;
}
section.achievements .beginning-inner .huge {
    font-weight: 700;
    font-size: 8em;
    line-height: 99%;
    text-transform: uppercase;
}

section.events {
    --accent-color: #fff;
}
section.events .screen {
    background-image: url(../imgs/backgrounds/event_back.jpg);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
section.events .center {
    position: relative;
    justify-content: center;
    font-size: 6em;
    width: 100%;
    padding-block: 0.75em;
}
section.events .center h2 {
    font-weight: 700;
    font-size: 6rem;
    line-height: 110.00000000000001%;
    text-transform: uppercase;
    color: #fff;
    text-align: center;
    width: 50%;
    min-width: 8em;
    max-width: 100%;
}
section.events .events-outer {
    margin-inline: var(--inline-margin);
    padding-block: 8em;
}
section.events .events-inner {
    display: flex;
    gap: 2em;
}
section.events .event-outer {
    display: flex;
    flex-direction: column;
    gap: 1em;
    flex-grow: 1;
    flex-basis: 0;
}
section.events .event-outer .img-wrapper {
    width: 100%;
    aspect-ratio: 1 / 0.9;
}
section.events .event-outer .img-wrapper img {
    height: 100%;
    object-fit: cover;
}
section.events .event-outer .time {
    font-family: 'heuristica';
    font-weight: 700;
    font-size: 6em;
    line-height: 70%;
    text-transform: uppercase;
}
section.events .event-outer .event-text {
    font-weight: 500;
    font-size: 1.5em;
}
section.events .event-outer .event-text p {
    margin: 0;
}
section.events .event-outer .button {
    margin-top: auto;
}
section.events .slider {
    --slider-controls-color: #0D4DB1;
    display: none;
}
section.events .slider .slider-item {
    padding-bottom: 50px;
}
section.activities {
    margin-top: 4em;
    margin-bottom: 13em;
}
section.activities .mark-outer {
    margin-bottom: 8em;
}

section.activities .mark-outer  .mobile-text {
    display: none;
}
section.activities .mark-outer .map-outer {
    padding-inline: 0;
    margin-top: 2em;
}

@media (max-width: 826px) {
    section.activities .mark-outer {
        margin-bottom: 4em;
    }
    section.activities .mark-outer .map-outer {
        display: block;
        /* padding-inline: var(--inline-margin); */
    }
    section.activities .mark-outer .pc-text {
        display: none;
    }
    section.activities .mark-outer .mobile-text {
        display: block;
        padding-inline: var(--inline-margin);
        text-align: center;
    }
    section.activities .center p {
        text-align: center;
    }
}
section.activities .mark-outer .center {
    align-items: flex-start;
    padding-inline: var(--inline-margin);
    /* width: 55em; */
    max-width: 100%;
}
section.activities .mark-outer h2 {
    font-size: 6em;
    text-align: left;
    line-height: 98%;
    max-width: 100%;
}
section.activities .center p {
    font-size: 1.5em;
    line-height: 130%;
    letter-spacing: -0.05em;
}
section.activities .map-outer {
    width: 100%;
}
section.activities .map-outer .map-inner {
    aspect-ratio: 1693 / 750;
    width: 100%;
    position: relative;
    overflow: visible;
}
section.activities .map-outer .map-inner .map {
    position: absolute;
    z-index: -1;
    top: -22%;
    left: 0;
    width: 100%;
    height: 100%;
}
section.activities .map-outer-mobile {
    display: none;
    width: 100%;
    margin-bottom: 5em;
}
section.activities .map-outer-mobile .map-inner {
    aspect-ratio: 1693 / 950;
    width: 100%;
    position: relative;
    overflow: visible;
}
section.activities .map-outer-mobile .map-inner .map {
    position: absolute;
    z-index: -1;
    top: -10%;
    left: -10%;
    width: 120%;
    height: 120%;
}
section.activities .ymaps-2-1-79-image {
    box-shadow: 3px 3px 5px 0px #00000061;
    border-radius: 51%;
}
.modal-header h2 {
    font-family: 'montserrat', monospace;
    margin-block: 0.2em;
    font-size: 1.5em;
}
.form2025 {
    flex-direction: column;
}
.modal-content .form2025 textarea {
    height: 8em;
}
section.activities .invest-outer {
    margin-inline: var(--inline-margin);
}
section.activities .invest-outer h2 {
    position: relative;
    color: #232323;
    font-weight: 700;
    font-size: 4em;
    line-height: 98%;
    text-transform: uppercase;
    text-align: center;
    margin-inline: 2.5em;
    max-width: 100%;
}
/* section.activities .invest-outer h2::after {
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: '95 золотых вкладов';

    text-align: center;
    text-transform: uppercase;
    text-shadow: -4px 0px 0px  #00000030, -2px 0px 0px  #FFFFFF, 2px 0px 0px  #FFFFFF, 1px 5px 4.8px #00000033;

    color: transparent;
} */
/* section.activities .invest-outer .center p {
    width: 14em;
    font-family: Heuristica;
    font-weight: 700;
    font-size: 2em;
    line-height: 120%;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 0.5em;
}
section.activities .invest-outer .center > * {
    max-width: 95%;
} */
section.activities .invest-outer .slider {
    --slider-controls-color: var(--page-accent-color);
    margin-bottom: 5em;
}
section.activities .invest-outer .slider .slider-item-inner {
    font-size: 1.5em;
    padding-inline: 2.5em;
    padding-block: 2.5em;
    margin-inline: 3em;
    margin-block: 1em;

    background-color: #fff;
    border-radius: 19px;
    box-shadow: 1px 5px 4.8px 0px #00000033;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
section.activities .invest-outer .slider .slider-item-inner-text {
    flex-grow: 1;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-weight: 400;
    line-height: 130%;
}
section.activities .invest-outer .center button.golden {
    /* margin-top: 3.5em;
    margin-bottom: 7em; */
}

section.congrats {

}
section.congrats h2 {
    width: 12em;
    max-width: 100%;
}
section.congrats .form-bg {
    position: relative;
}
section.congrats .form-bg::after, section.congrats .form-bg::before {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    aspect-ratio: 460 / 970;
    background-repeat: no-repeat;
    background-size: cover;
    z-index: -1;
}
section.congrats .form-bg::before {
    background-image: url(../imgs/congrats/9.png);
    left: 0;
}
section.congrats .form-bg::after {
    background-image: url(../imgs/congrats/6.png);
    right: 0;
}
/* section.congrats .form-outer {
    display: flex;
    flex-direction: column;
    align-items: center;
} */
section.congrats .form-outer h3 {
    font-family: 'heuristica';
    font-weight: 700;
    font-size: 3em;
    line-height: 98%;
    text-align: center;
    text-transform: uppercase;
    width: 15em;
    max-width: 100%;
    margin-top: 1em;
    margin-bottom: 0.3em;
}
section.congrats .form-outer .congrats-slider {
    --slider-controls-color: var(--accent-color);
    margin-inline: var(--inline-margin);
}
section.congrats .form-outer .congrats-slider .slider-item {
    padding: 2em 5em;
}
section.congrats .form-outer .congrats-slider .slider-item p {
    font-size: 1.2em;
    margin-block: 0.5em;
    line-height: 130%;
    font-style: italic;
}
section.congrats .form-outer .congrats-slider .slider-item .caption p {
    font-style: unset;
}
section.congrats .form-outer .congrats-slider .slider-item i {
    font-size: 1.05em;
}
.form2025 .form-group-visible, .form2025 .form-group-parent-true {
    padding-block: 0;
    border: none;
}
.form-bg button.blue {
    margin-bottom: 2em;
}
/* section.congrats .form-outer form {
    background-color: #fff;
    padding: 1.5em;
    margin-bottom: 4em;
    border-radius: 1.2em;

    display: flex;
    flex-direction: column;
    align-items: center;

    box-shadow: 1px 5px 4.8px 0px #00000033;
}
section.congrats .form-outer form textarea {
    resize: none;
    font-family: 'montserrat';
    font-weight: 500;
    font-size: 1.25em;
    line-height: 130%;
    letter-spacing: -0.02em;
    padding: 1.5em;
    border-radius: 0.45em;
    width: 31em;
    height: 16em;
    max-width: 100%;
}
section.congrats .form-outer form textarea::placeholder {
    font-style: italic;
}
section.congrats .form-outer form textarea:focus-visible {
    outline-color: var(--accent-color);
}
section.congrats .form-outer form button {
    margin-top: 1.3em;
} */

section.congrats .congrats-slider .slider-item.script .slider-item-inner {
    display: flex;
    gap: 2em;

    padding: 0;

    font-weight: 500;
    line-height: 150%;
    hyphens: manual;
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner > * {
    flex-grow: 1;
    flex-basis: 0;
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner .second {
    position: relative;
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner .second::after {
    position: absolute;
    content: "«";
    z-index: -1;
    left: -0.5em;
    top: -0.3em;
    font-size: 8em;
    font-family: 'heuristica';
    color: var(--accent-color);
    width: 1em;
    height: 1em;
}

section.congrats .congrats-slider .slider-item.script .slider-item-inner .third {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner {
    /* flex-wrap: wrap; */
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner > * {
    /* min-width: 338px; */
    max-height: 400px;
}
section.congrats .congrats-slider .slider-item.script .img-wrapper {
    width: 100%;
    max-height: 100%;
    object-fit: contain;
}
section.congrats .congrats-slider .slider-item.script .img-wrapper img {
    display: block;
    width: 100%;
    height: 100%;
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner .third {
    flex-grow: 2;
}
section.congrats .congrats-slider .slider-item:not(.partners) .caption {
    margin-top: 1em;
}
section.congrats .congrats-slider .slider-item:not(.partners) .caption p {
    margin: 0;
}
section.congrats .congrats-slider .slider-item.script .slider-item-inner .third .caption.mt {
    margin-top: auto;
}
section.congrats .congrats-slider .slider-item.script.partners .slider-item-inner .third .caption b {
    font-family: Montserrat;
    font-weight: 700;
    font-size: 2em;
    line-height: 98%;
    text-transform: uppercase;
}
.modal-content img.can-full {
    height: calc(100vh - 2 * var(--gorizontal-field));
    object-fit: contain;
}
section.congrats .thanks-bg {
    background-image: url(../imgs/congrats/logo-transparent.png);
    background-size: auto 120%;
    background-repeat: no-repeat;
    background-position: center top;
    padding-top: 16.4em;
    padding-bottom: 11.6em;
    margin-top: -10em;
}
section.congrats .center.thanks h2 {
    width: 14em;
    margin-block: 1em;
}
footer {
    display: flex;
    gap: 1em;
    justify-content: space-between;
    
    background-image: url(../imgs/backgrounds/blue_pattern1.jpg);
    background-repeat: repeat;
    font-size: 1.25em;
    padding-block: 2.5em;
    padding-inline: var(--inline-margin);
    color: #fff;
}

.footer-left, .footer-right {
    max-width: 21em;
    flex-grow: 0;
}
.footer-left .social {
    display: flex;
    flex-wrap: wrap;
}
.footer-left .social svg {
    height: 40px;
    width: 40px;
}
.buy_fil1, .dzen_fil1, .rutube_fil1, .vk_fil1, .yt_fil1, .od_fil1, .rutube_fil2, .telegram_fil2 {
    fill: none;
}
.buy_fil0, .dzen_fil0, .rutube_fil0, .vk_fil0, .yt_fil0, .od_fil0, .telegram_fil1 {
    fill: currentColor;
}
.telegram_fil0 {
    fill: currentColor;
    opacity: 0.4;
}
.footer-right .logo-wrapper {
    margin-top: 1em;
}

@media (max-width: 1713px) {
    body {
        --inline-margin: clamp(100px, 17vw, 800px);
    }
}
@media (max-width: 1369px) {
    html {
        /* font-size: 14px; */
    }
    body {
        --inline-margin: clamp(100px, 15vw, 800px);
    }
    section.achievements .achieve-outer h3 {
        font-size: clamp(1.8em, 2vw, 2.5em);
    }
    section.history h2 {
        font-size: 4em;
    }
    /* section.events .center h2 {} */
    section.activities .mark-outer h2 {
        font-size: 5em;
    }
    section.achievements .beginning-inner .huge {
        font-size: 7em;
    }
    section.achievements .achieve-inner, section.achievements .achieve-h-outer {
        flex-direction: column;
    }
    section.achievements .achieve-inner > *, section.achievements .achieve-h-outer > * {
        margin: 0; 
        width: unset;
        max-width: unset; 
        padding-inline: 0; 
        border: none;
    }
    section.achievements .achieve-h-outer > .two {
        width: unset;
        max-width: unset;
        padding-inline: 0;
        margin-inline: 0;
    }
    section.achievements .achieve-outer h3 {
        font-size: 2.5em;
    }
    section.achievements .achieve-outer h3.right {
        margin-left: unset;
        text-align: left;
        min-width: unset;
    }
    section.achievements .achieve-outer:not(:first-of-type) h3 {
        padding-top: 2em;
    }
    section.achievements .achieve-outer:last-of-type .l-left {
        padding-bottom: 0;
    }
    section.achievements .l-right, section.achievements .l-left, section.achievements .l-top, section.achievements .l-bottom {
        border: none;
        padding-bottom: 0;
    }
    .achieve-img-wrapper {
        height: 20em;
    }
    .achieve-img-wrapper > img {
        width: unset;
        height: 100%;
    }
    section.history .logo-wrapper-95 {
        padding-inline: var(--inline-margin);
    }
    section.history .logo-wrapper-95 img {
        width: 100%;
    }
    section.history .year-wrapper .year {
        writing-mode: vertical-lr;
        margin-left: 0;
        padding-left: 1em;
        -webkit-text-stroke: unset;
        -webkit-text-fill-color: unset;
        color: #408AFF;
        border-width: 0 2px 2px 0;
    }
    section.history .year-wrapper .year::after {
        bottom: -5px;
        right: -5.03px;
        width: 8px;
        height: 8px;
    }
    section.history .year-wrapper:last-of-type .year {
        color: #fff;
        border-color: #fff;
        -webkit-text-stroke: unset;
    }
    section.history .year-wrapper .year.two {
        padding-left: 0.2em;
    }
    section.history .year-wrapper .year .year-inner {
        transform: rotate(180deg);
    }
    section.history .year-img-wrapper p {
        font-size: 1.25em;
    }
    section.events .slider {
        display: block;
    }
    section.events .slider .slider-item {
        display: flex;
        justify-content: center;
    }
    section.events .events-inner {
        display: none;
    }
    section.events .event-outer {
        /* width: 600px; */
        max-width: 100%;
        flex-grow: 1;
    }
    section.activities {
        margin-top: 0;
    }
    section.activities .invest-outer h2 {
        margin-inline: 0;
    }
    section.congrats .slider.partners {
        /* height: 1100px; */
        margin-inline: 1em;
    }
    section.congrats .form-bg::after, section.congrats .form-bg::before {
        display: none;
    }
    section.congrats .congrats-slider .slider-item.script .slider-item-inner {
        flex-direction: column;
    }
    section.congrats .congrats-slider .slider-item.script .slider-item-inner .third .caption {
        /* text-align: center; */
    }
    section.congrats .congrats-slider .slider-item .slider-item-inner {
        flex-direction: column;
        padding-inline: 4em;
    }
    section.congrats .congrats-slider .slider-item .slider-item-inner > * {
        width: 100%;
    }
    section.congrats .congrats-slider .slider-item .first .img-wrapper {
        width: 100%;
        display: flex;
        justify-content: center;
    }
    section.congrats .congrats-slider .slider-item .first .img-wrapper > img {
        width: 255px;
        max-width: 90%;
    }
    section.congrats .congrats-slider .slider-item .slider-item-inner .second::after {
        top: 0;
        font-size: 6em;
    }
}
@media (max-width: 826px) {
    body {
        --inline-margin: 87px;
    }
    section.history .lines {
        margin: 0;
    }
    section.history .lines::after, section.history .lines::before {
        content: none;
    }
    section.achievements .beginning-outer {
        background-position: 0 0, 38% 60%;
        font-size: 0.9em;
    }
    section.achievements .beginning-inner {
        flex-direction: column-reverse;
        justify-content: unset;
    }
    section.achievements .beginning-inner .huge {
        font-size: 5.3em;
    }
    section.activities {
        margin-bottom: 9em;
    }
    h1, section.activities .mark-outer h2, section.activities .invest-outer h2,  section.achievements h2, section.history h2, section.events .center h2, section.main h2, section.congrats h2 {
        font-size: 3.4rem;
    }
    section.activities .center p {
        text-align: center;
    }
    section.activities .mark-outer button {
        margin-inline: auto;
        margin-bottom: 3em;
    }
    
    section.activities .invest-outer .slider {
        margin-inline: calc(var(--inline-margin) / 2);
    }
    section.achievements .achieve-outer h3 {
        font-size: 2em;
    }
    section.activities .invest-outer .center button.golden {
        display: none;
    }
    section.activities .invest-outer {
        margin-inline: 5px;
    }
    section.activities .invest-outer .slider {
        margin-inline: 0;
    }
    section.activities .invest-outer .slider .slider-item-inner {
        padding-inline: 1em;
        padding-block: 1.5em;
        margin-block: 1em;
        margin-inline: 2em;
        font-size: 1.25em;
        line-height: 120%;
    }
    

    section.congrats .slider.partners .slider-arrow-wrapper {
        top: 20%;
    }
    section.congrats h2 {
        margin-bottom: 0.6em;
    }
    section.congrats .form-outer {
        padding-inline: 0;
    }
    section.congrats .form-outer h3 {
        font-size: 2.5em;
    }
    section.congrats .form-outer .congrats-slider {
        margin-inline: 0;
        font-size: 0.75em;
    }


    /* section.activities {
        display: none;
    }
    section.congrats {
        display: none;
    } */
}
@media (max-width: 600px) {
    html {
        font-size: 0.8em;
    }
    body {
        --inline-margin: 55px;
    }
    .slider.round-markers .slider-markers {
        bottom: 0;
    }
    /* section.main .bg95 {
        align-items: end;
        margin-top: 2em;
    } */
    section.main .bg95-inner > * {
        padding-inline: var(--inline-margin);
    }
    section.main .bg95 .bg95-inner {
        width: 100%;
        max-width: unset;
        min-width: unset;
    }
    section.main .bg95 p {
        font-size: 1.5em;
    }
    .slider.slider-main {
        height: 100svh;
    }
    .slider.slider-main .slider-item.slider-item {
        align-items: flex-end;
        /* background-size: 250%; */
        background-position-y: bottom;
    }
    /* .slider.slider-main .slider-item.second {
        background-size: 200%;
    }
    .slider.slider-main .slider-item.third {
        background-size: 250%;
    } */
    .slider.slider-main .slider-item.fourth {
        background-position-x: 10%;
    }
    .slider.slider-main .slider-item.slider-item .caption {
        margin: 0;
        margin-bottom: 6em;
    }
    section.history .year-wrapper .year {
        font-size: 3em;
    }
    section.history .year-img-wrapper p {
        font-size: 1em;
        width: 100%;
    }
    section.history .lines {
        padding-bottom: 2em;
    }
    section.achievements .achieve-outer h3 {
        hyphens: auto;
    }
    section.main .first-screen {
        padding-inline: var(--inline-margin);
    }
    section.main .name {
        width: 100%;
        font-size: 1.75em;
    }
    section.main .img-wrapper.logo-wrapper-istu {
        max-width: 100%;
    }
    h1, section.activities .mark-outer h2, section.activities .invest-outer h2, section.achievements h2, section.history h2, section.events .center h2, section.main h2, section.congrats h2 {
        font-size: 2.5rem;
    }

    section.history h2 {
        width: 100%;
    }
    section.achievements .center p {
        width: 100%;
        max-width: 100%;
        min-width: unset;
        font-size: 1.25em;
    }
    section.achievements h2 {
        width: 100%;
        min-width: unset;
    }
    section.achievements .beginning-inner .huge {
        font-size: 2.3em;
    }
    .form-bg button.blue {
        margin-inline: 2em;
        border-radius: 0.5em;
    }
    section.activities .map-outer .map-inner {
        aspect-ratio: 1693 / 1500;
    }
    section.congrats .thanks-bg {
        background-size: auto 65%;
        background-position: center 25%;
        margin-top: 0;
        padding-top: 4em;
    }
}
@media (max-width: 399px) {
    body {
        --inline-margin: 35px;
    }
    section.main .bg95 {
            height: 70vh;
    }
    section.main .name {
        font-size: 1.55em;
        /* hyphens: auto; */
    }
    .slider.slider-main .slider-item.slider-item .caption {
        margin-bottom: 5em;
        padding: 2em;
    }
    .slider.slider-main .slider-item.slider-item {
        background-size: auto 120%;
        background-position-y: 120%;
    }
    section.activities .invest-outer .slider .slider-item-inner {
        margin-inline: 0.35em;
        padding-inline: 1.5em;
    }
}
@media (max-width: 299px) {
    body {
        --inline-margin: 15px;
    }
}