@font-face {
    src: url('../fonts/Montserrat-Regular.ttf');
    font-family: 'Montserrat-Regular';
    font-display: swap;
}
@font-face {
    src: url('../fonts/Montserrat-Medium.ttf');
    font-family: 'Montserrat-Medium';
    font-display: swap;
}
@font-face {
    src: url('../fonts/Montserrat-Bold.ttf');
    font-family: 'Montserrat-Bold';
    font-display: swap;
}
@font-face {
    src: url('../fonts/Montserratarm-Regular.otf');
    font-family: 'Montserratarm-Regular';
    font-display: swap;
}
@font-face {
    src: url('../fonts/Montserratarm-Medium.otf');
    font-family: 'Montserratarm-Medium';
    font-display: swap;
}
@font-face {
    src: url('../fonts/Montserratarm-Bold.ttf');
    font-family: 'Montserratarm-Bold';
    font-display: swap;
}

/* System stack if local fonts fail; supports Latin + Cyrillic (+ Armenian name hint on some OS) */
:root {
    --incore-font-fallback: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Noto Sans Armenian", sans-serif;
}

/* English & Russian: Montserrat + standard fallbacks (matches site lang="en" / lang="ru") */
html[lang="en"],
html[lang="en-US"],
html[lang="ru"],
html[lang="ru-RU"],
html[lang="en"] input,
html[lang="en-US"] input,
html[lang="ru"] input,
html[lang="ru-RU"] input,
html[lang="en"] textarea,
html[lang="en-US"] textarea,
html[lang="ru"] textarea,
html[lang="ru-RU"] textarea {
    font-family: 'Montserrat-Regular', var(--incore-font-fallback);
    font-weight: 400;
}

/* Armenian */
html[lang="hy"],
html[lang="hy-HY"],
html[lang="hy"] input,
html[lang="hy-HY"] input,
html[lang="hy"] textarea,
html[lang="hy-HY"] textarea {
    font-family: 'Montserratarm-Regular', var(--incore-font-fallback);
    font-weight: 400;
}

html[lang="en"] h1, html[lang="en-US"] h1, html[lang="en"] h2, html[lang="en-US"] h2,
html[lang="en"] h3, html[lang="en-US"] h3, html[lang="en"] h4, html[lang="en-US"] h4,
html[lang="en"] h5, html[lang="en-US"] h5, html[lang="en"] h6, html[lang="en-US"] h6,
html[lang="ru"] h1, html[lang="ru-RU"] h1, html[lang="ru"] h2, html[lang="ru-RU"] h2,
html[lang="ru"] h3, html[lang="ru-RU"] h3, html[lang="ru"] h4, html[lang="ru-RU"] h4,
html[lang="ru"] h5, html[lang="ru-RU"] h5, html[lang="ru"] h6, html[lang="ru-RU"] h6 {
    font-family: 'Montserrat-Regular', var(--incore-font-fallback);
    font-weight: 400;
}

html[lang="hy"] h1, html[lang="hy-HY"] h1, html[lang="hy"] h2, html[lang="hy-HY"] h2,
html[lang="hy"] h3, html[lang="hy-HY"] h3, html[lang="hy"] h4, html[lang="hy-HY"] h4,
html[lang="hy"] h5, html[lang="hy-HY"] h5, html[lang="hy"] h6, html[lang="hy-HY"] h6 {
    font-family: 'Montserratarm-Regular', var(--incore-font-fallback);
    font-weight: 400;
}

html[lang="en"] .medium_text, html[lang="en-US"] .medium_text,
html[lang="ru"] .medium_text, html[lang="ru-RU"] .medium_text {
    font-family: 'Montserrat-Medium', var(--incore-font-fallback);
}
html[lang="hy"] .medium_text, html[lang="hy-HY"] .medium_text {
    font-family: 'Montserratarm-Medium', var(--incore-font-fallback);
}

/* SemiBold files are not bundled; Medium + weight 600, then system semibold */
html[lang="en"] .semiBold_text, html[lang="en-US"] .semiBold_text,
html[lang="ru"] .semiBold_text, html[lang="ru-RU"] .semiBold_text {
    font-family: 'Montserrat-SemiBold', 'Montserrat-Medium', var(--incore-font-fallback);
    font-weight: 600;
}
html[lang="hy"] .semiBold_text, html[lang="hy-HY"] .semiBold_text {
    font-family: 'Montserratarm-SemiBold', 'Montserratarm-Medium', var(--incore-font-fallback);
    font-weight: 600;
}

html[lang="en"] .regular_text, html[lang="en-US"] .regular_text,
html[lang="ru"] .regular_text, html[lang="ru-RU"] .regular_text {
    font-family: 'Montserrat-Regular', var(--incore-font-fallback);
}
html[lang="hy"] .regular_text, html[lang="hy-HY"] .regular_text {
    font-family: 'Montserratarm-Regular', var(--incore-font-fallback);
}

html[lang="hy"] .bold_text, html[lang="hy-HY"] .bold_text,
html[lang="hy"] b, html[lang="hy-HY"] b,
html[lang="hy"] strong, html[lang="hy-HY"] strong {
    font-family: 'Montserratarm-Bold', var(--incore-font-fallback);
}

html[lang="en"] .bold_text, html[lang="en-US"] .bold_text,
html[lang="en"] strong, html[lang="en-US"] strong,
html[lang="en"] b, html[lang="en-US"] b,
html[lang="ru"] .bold_text, html[lang="ru-RU"] .bold_text,
html[lang="ru"] strong, html[lang="ru-RU"] strong,
html[lang="ru"] b, html[lang="ru-RU"] b {
    font-family: 'Montserrat-Bold', var(--incore-font-fallback);
}
* {
    margin: 0;
    padding: 0;
    text-decoration: none;
    outline: none;
    border: none;
    box-sizing: border-box;
    transition: all 300ms ease-out;
}
*:hover {
    transition: all 0.3s ease-in;
}
html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}
a {
    text-decoration: none;
    color: var(--brandColor);
}
img, video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
:root {
    --black: #282828;
    --greyFont: rgba(41, 65, 76, 0.60);
    --brandColor: #29414C;
    --gold: #E3AC45;
    --grayBack: #ECECEA;
    --beige: #FDFBF8;
    --whiteOpacity: rgba(255, 255, 255, 0.60);
    --white: #FFF;
}
:root {
    --twelve: 12px;
    --forteen: 14px;
    --sixteen: 16px;
    --eighteen: 18px;
    --twenty: 20px;
    --fontTwentyTwo: 22px;
    --twofour: 24px;
    --thirty: 30px;
    --titleFont: 55px;
    --sixty: 60px;
    --sixtyfive: 65px;
}
.wrapper {
    max-width: 1800px;
    width: 100%;
    padding: 0 30px;
    margin: 0 auto;
}
.sto_ {
    width: 100%;
}
.full_wrapper {
    max-width: 1920px;
    width: 100%;
    margin: 0 auto;
}
.big_wrapper{
    width: 100%;
}
.d_flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
body{
    background-color: var(--beige);
    color: var(--brandColor);
}
ul, ol{
    padding-left: 20px;
}
textarea{
    resize: none;
}
.scrollbar::-webkit-scrollbar-thumb{
    background-color: var(--gold);
    background-clip: padding-box;
    transition: all 300ms ease-out;
    cursor: pointer;
}
.scrollbar::-webkit-scrollbar{
    height: 3px;
    width: 3px;
}
.scrollbar::-webkit-scrollbar-track {
    background-color: #DFE5EA;
}

/* hedear */
header{
    width: 100%;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    padding: 25px 0;
    z-index: 20;
    background: transparent;
    transition: background-color 0.3s ease;
}
.header_block{
    gap: 20px;
}
.head_logo img,
.f_logo img {
    width: auto;
    height: 40px;
    object-fit: contain;
}
.black_logo{
    display: none;
}
header.scrolled {
    padding: 30px 0;
    background-color: var(--beige);
}
.nav_alink{
    font-size: var(--sixteen);
    color: var(--whiteOpacity);
    text-transform: uppercase;
    position: relative;
    overflow: hidden;
    background: linear-gradient(to right, #E3AC45, #E3AC45 50%, var(--whiteOpacity) 50%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 200% 100%;
    background-position: 100%;
    transition: background-position 500ms ease;
}
.nav_alink:hover{
    background-position: 0 100%;
}
.scrolled .nav_alink {
    color: var(--greyFont);
    -webkit-text-fill-color: var(--greyFont);
    background: linear-gradient(to right, #E3AC45, #E3AC45 50%, var(--greyFont) 50%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 200% 100%;
    background-position: 100%;
}
.scrolled .nav_alink:hover {
    background-position: 0 100%;
}
.nav_bar{
    gap: 26px;
}
.last_head_blck{
    align-items: stretch;
    gap: 20px;
}
.login_btn{
    display: flex;
    align-items: center;
    text-transform: uppercase;
    padding: 16px 36px;
    background-color: var(--white);
    border-radius: 90px;
    cursor: pointer;
    font-size: var(--sixteen);
}
.login_btn:hover{
    color: var(--white) !important;
    background-color: var(--gold) !important;
}
.dropdown_rel{
    position: relative;
}
.dropdown_{
    display: none;
    position: absolute;
    top: 60px;
    right: 50%;
    left: 50%;
    transform: translate(-50%, 0);
    min-width: 70px;
    border-radius: 10px;
    background-color: var(--white);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
    flex-direction: column;
    padding: 12px;
    z-index: 9;
    gap: 10px;
    overflow: hidden;
}
.dropdown_active{
    display: flex;
}
.chosen_lang{
    padding: 14px;
    border-radius: 90px;
    cursor: pointer;
    gap: 8px;color: var(--white);
    border: 1px solid var(--whiteOpacity);
}
.choose_lang{
    cursor: pointer;
    text-align: center;
    font-size: var(--sixteen);
}
.choose_lang:hover{
    color: var(--gold);
}
.scrolled .white_logo{
    display: none;
}
.scrolled .black_logo{
    display: block;
}
.scrolled .login_btn{
    color: var(--white);
    background-color: var(--brandColor);
} 
.scrolled .chosen_lang{
    border-color: rgba(41, 65, 76, 0.20);
}
.scrolled .chosen_lang svg path{
    stroke: var(--brandColor);
}
.scrolled .chosen_lang_sp{
    color: var(--brandColor);
}
.scrolled .burger_svg svg rect{
    fill: var(--brandColor);
}
.burger_svg{
    display: none;
}
.chosen_lang_sp{
    font-size: var(--sixteen);
}

/* end hedear */

/* home */
.story_container{
    margin-bottom: 70px;
    position: relative;
    justify-content: center;
}
.controls_items{
    cursor: pointer;
    position: absolute;
    justify-content: end;
    flex-direction: column;
    gap: 30px;
    right: 4%;
    z-index: 2;
    width: fit-content;
}
.play_pause_blck, .mute_on_sound{
    justify-content: center;
    width: 48px;
    height: 48px;
    cursor: pointer;
    background-color: var(--white);
    border-radius: 50%;
}
.play_btn, .pause_btn, .sound_on_btn, .sound_off_btn{
    display: none;
    width: 100%;
    height: 100%;
    justify-content: center;
}
.active_btn{
    display: flex;
}
.story{
    height: 100vh;
    max-height: 1074px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: end;
}
.timers{
    flex-direction: column;
    gap: 20px;
}
.timer-line {
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.4);
    position: relative;
    overflow: hidden;
}
.timer-line.active {
    height: 85px;
}
.timer-line .progress{
    width: 100%;
    height: 0;
    background-color: #ffffffb0;
}
.play_pause_blck:hover, .mute_on_sound:hover{
    background-color: var(--gold);
}
.video_info{
    height: 100%;
    position: absolute;
    z-index: 1;
    left: 0;
    padding: 0 4%;
    width: 100%;
}
.info_item {
    display: none;
    flex-direction: column;
    align-items: start;
    height: 100%;
    justify-content: space-between;
    padding: 190px 0 70px 0;
    gap: 20px;
    width: 100%;
    transition: opacity 0.4s ease;
}
.info_item.active {
    display: flex;
}
.big_title{
    max-width: 742px;
    text-transform: uppercase;
    color: var(--white);
    font-size: var(--sixtyfive);
}
.descrip_block{
    max-width: 742px;
    flex-direction: column;
    align-items: start;
    gap: 20px;
}
.trust_descrip{
    gap: 12px;
    text-transform: uppercase;
    color: var(--white);
    font-size: var(--twenty);
}
.yellow_sqaure{
    width: 10px;
    height: 10px;
    background-color: var(--gold);
}
.description_{
    font-size: var(--twenty);
    line-height: 140%;
    color: var(--greyFont);
    flex-direction: column;
    align-items: start;
    gap: 20px;
}
.static_page_content{
    max-width: 100%;
}
.static_page_content p{
    margin-bottom: 1em;
}
.static_page_content h2, .static_page_content h3{
    margin: 1.5em 0 0.5em;
    font-weight: 600;
}
.static_page_content ul, .static_page_content ol{
    margin: 0.5em 0 1em;
    padding-left: 1.5em;
}
.static_page_content li{
    margin-bottom: 0.25em;
}
/* Privacy/Terms: plain text from admin (newlines preserved; HTML path unchanged) */
.static_page_content.static_page_plain{
    white-space: pre-line;
    line-height: 1.75;
}
/* News article body (HTML from CKEditor or plain text with line breaks) */
.news_content{
    max-width: 100%;
    font-size: var(--eighteen);
    line-height: 1.75;
    color: var(--greyFont);
}
.news_content p{
    margin-bottom: 1em;
}
.news_content h2,
.news_content h3,
.news_content h4{
    margin: 1.5em 0 0.5em;
    font-weight: 600;
    color: var(--black);
}
.news_content h2{ font-size: 1.35em; }
.news_content h3{ font-size: 1.2em; }
.news_content h4{ font-size: 1.05em; }
.news_content ul,
.news_content ol{
    margin: 0.5em 0 1em;
    padding-left: 1.5em;
}
.news_content li{
    margin-bottom: 0.35em;
}
.news_content strong,
.news_content b{
    font-weight: 700;
}
.news_content a{
    color: var(--brandColor);
    text-decoration: underline;
}
.news_content blockquote{
    margin: 1em 0;
    padding-left: 1em;
    border-left: 3px solid var(--brandColor);
    color: var(--greyFont);
}
/* Legal / static pages: heading above full-width body (not side-by-side) */
.title_description_legal.d_flex{
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 28px;
}
.title_description_legal .title_subtitle_blck{
    width: 100%;
}
.title_description_legal .general_title{
    max-width: none;
}
.title_description_legal .contacts_big_blck_legal{
    width: 100%;
    max-width: 100%;
}
.title_description_legal .contacts_big_blck_legal .description_,
.title_description_legal .static_page_content{
    max-width: 100%;
}
.descrip_block .description_{
    color: var(--whiteOpacity);
}
.social_descrip_blck{
    align-items: end;
    gap: 20px;
}
.scroll_to_next{
    gap: 12px;
    cursor: pointer;
    font-size: var(--twenty);
    color: var(--white);
}
.social_alink{
    line-height: 140%;
    text-align: end;
    font-size: var(--twenty);
    text-transform: uppercase;
    color: var(--white);
}
.social_links{
    flex-direction: column;
    align-items: end;
}
.social_alink:hover{
    color: var(--gold);
}
.scroll_to_next:hover{
    color: var(--gold);
}
.scroll_to_next:hover svg path{
    stroke: var(--gold);
}
.image_container{
    display: none;
    height: 100%;
    width: 100%;
}
.title_description{
    align-items: start;
    gap: 20px;
}
.title_subtitle_blck{
    flex-direction: column;
    align-items: start;
    gap: 30px;
}
.subtitle_sp{
    text-transform: uppercase;
    font-size: var(--twenty);
}
.subtitle{
    gap: 10px;
}
.general_title{
    max-width: 570px;
    text-transform: uppercase;
    font-size: var(--titleFont);
}
.title_description .description_{
    max-width: 574px;
}
#myPath{
    position: absolute;
    top: 0;
    z-index: 1;
}
.svg_animate_blck svg{
    width: 100%;
    height: 100%;
}
.svg_animate_blck{
    position: absolute;
    top: 92px;
}
.animation_block{
    padding-bottom: 180px;
    min-height: 1350px;
    margin-top: 160px;
    justify-content: start;
    position: relative;
    width: 100%;
    flex-direction: column;
    gap: 120px;
}
.three_inf_animation{
    align-items: start;
    gap: 34px;
    position: relative;
    z-index: 2;
    max-width: 434px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.8s ease;
}
.three_inf_animation.visible {
    max-height: 370px;
}
.info_blcks{
    flex-direction: column;
    align-items: start;
    gap: 142px;
}
.anim_title{
    font-size: var(--thirty);
    text-transform: uppercase;
}
.descrip_more_blck{
    flex-direction: column;
    align-items: start;
    gap: 20px;
}
.descrip_more_blck .description_{
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* About / History timeline: full HTML (lists, long copy); keep line-clamp on home/services teasers */
#about-history .descrip_more_blck .description_{
    display: flex;
    -webkit-line-clamp: unset;
    line-clamp: unset;
    overflow: visible;
    text-overflow: unset;
    -webkit-box-orient: unset;
}
.learn_more{
    gap: 12px;
    cursor: pointer;
    font-size: var(--sixteen);
    position: relative;
    overflow: hidden;
    background: linear-gradient(to right, #E3AC45, #E3AC45 50%, var(--brandColor) 50%);
    background-clip: text;
    -webkit-text-fill-color: transparent;
    background-size: 200% 100%;
    background-position: 100%;
    transition: background-position 500ms ease;
}
.learn_more:hover{
    background-position: 0 100%;
}
.left_blck{
    margin-right: auto;
    margin-left: 19%;
}
.right_blck{
    margin-left: auto;
    margin-right: 27%;
}
.lines_blck{
    flex-direction: column;
    gap: 20px;
}
.yellow_line{
    width: 4px;
    height: 150px;
    background: linear-gradient(to bottom, #E3AC45 0%, rgba(227,172,69,0) 70%);
}
.big_line{
    height: 500px;
    width: 4px;
    background: linear-gradient(to bottom, rgba(48, 73, 84, 0.40) 0%, rgba(227,172,69,0) 70%);
}
.back_beige svg path{
    stroke: var(--beige);
}
.for_mac, .for_mini{
    display: none;
}
.shadow_vector{
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
}
.worldwide_block{
    gap: 30px;
    flex-direction: column;
}
.map_img {
    position: relative;
    margin-bottom: 70px;
    max-width: 1400px;
}
.dot {
    position: absolute;
    width: 20px;
    height: 20px;
    background-color: var(--gold);
    border-radius: 50%;
    opacity: 0.8;
    animation: pulsate 1s infinite;
}
@keyframes pulsate {
    0% {
        transform: scale(1);
        opacity: 0.8;
    }
    50% {
        transform: scale(1.5);
        opacity: 1;
    }
    100% {
        transform: scale(1);
        opacity: 0.8;
    }
}
.beige_blck{
    margin-top: 60px;
    background-color: #F5F2EE;
    padding: 160px 0 100px 0;
}
.description_undmap{
    max-width: 550px;
    margin-right: auto;
    font-size: var(--twenty);
}
.statistic_blck{
    gap: 12px;
    align-items: stretch;
    margin-top: 24px;
}
.worldwide_block .general_title{
    max-width: 574px;
}
.statistic_window{
    flex-direction: column;
    align-items: start;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.20);
    background: #F5F2EE;
    gap: 100px;
    max-width: 520px;
    padding: 20px;
}
.statistic_window:last-child{
    max-width: 700px;
}
.statistic_num{
    text-transform: uppercase;
    font-size: var(--sixty);
}
.statistic_window .description_{
    font-size: var(--sixteen);
    max-width: 300px;
}
.newsitemSwiper{
    margin-top: 145px;
}
.news_item{
    max-width: 470px;
    display: flex !important;
    flex-direction: column;
    align-items: start;
    gap: 28px;
}
.news_img{
    border-radius: 20px;
    overflow: hidden;
    height: 252px;
    margin-bottom: 18px;
}
.news_items_title{
    font-size: var(--twofour);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.news_item .description_{
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: var(--eighteen);
}
.news_date{
    font-size: var(--twenty);
    color: var(--gold);
}
.news_item:hover .news_img img{
    transform: scale(1.1);
}
.news_item:hover .news_items_title{
    text-decoration: underline;
}
.newsitemSwiper .swiper-wrapper{
    align-items: stretch;
}
/* end home */

/* footer */
footer{
    background-color: #DEDBD4;
    padding: 40px 0 20px 0;
    display: flex;
    flex-direction: column;
    gap: 44px;
}
.footer_blck{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    align-items: start;
    gap: 20px;
}
.f_nav_bar{
    flex-direction: column;
    align-items: start;
    gap: 20px;
}
.f_title{
    font-size: var(--twofour);
    text-transform: uppercase;
}
.fnav_alik{
    font-size: var(--forteen);
    color: var(--greyFont);
}
.fnav_alik:hover{
    color: var(--brandColor);
}
.f_blue_back{
    padding: 20px 0;
    background-color: #355665;
}
.f_header_blck{
    flex-wrap: wrap;
    gap: 20px;
}
.f_nav_bar_blck{
    align-items: end;
    justify-content: start;
    gap: 26px;
}
.fnav_bar{
    gap: 44px;
}
.fnav_bar .fnav_alik{
    color: var(--whiteOpacity);
}
.fnav_bar .fnav_alik:hover{
    color: var(--white);
}
.slash_white{
    height: 40px;
    border-right: 1px solid rgba(255, 255, 255, 0.10);
}
.f_social_links{
    gap: 25px;
}
.f_social_alinks{
    cursor: pointer;
}
.f_social_alinks:hover svg{
    transform: scale(1.2);
}
.last_fblck{
    gap: 20px;
    flex-wrap: wrap;
}
.copyright_sp{
    gap: 4px;
    font-size: var(--forteen);
    color: var(--greyFont);
}
.site_dev{
    font-size: var(--forteen);
    gap: 10px;
}
/* end footer */

/* about us */
.navigation_block{
    margin-bottom: 34px;
    padding-top: 125px;
    justify-content: start;
    gap: 20px;
    flex-wrap: wrap;
}
.prev_page, .this_page, .border_bottom{
    font-size: var(--twenty);
}
.prev_page{
    color: var(--brandColor);
}
.this_page{
    color: var(--gold);
}
.prev_page:hover{
    text-decoration: underline;
}
.title_descrip_start {
    align-items: start;
    gap: 20px;
}
.title_descrip_start .description_{
    max-width: 720px;
    color: var(--greyFont);
}
.about_block{
    flex-direction: column;
    margin: 60px 0 170px 0;
}
.abouts_img{
    height: 468px;
    border-radius: 20px;
    overflow: hidden;
}
.about_mission_vision{
    margin-bottom: 100px;
    flex-direction: column;
    gap: 30px;
}
.about_mission_vision .title_description{
    align-items: end;
    padding-bottom: 60px;
    border-bottom: 2px solid rgba(41, 65, 76, 0.20);
}
.about_mission_vision .general_title{
    max-width: 470px;
}
.title_description:last-child{
    border: none;
}
.our_story_block{
    flex-direction: column;
    gap: 120px;
}
.our_story_block .title_subtitle_blck {
    align-items: center;
    gap: 20px;
}
/* About / History: center heading + subtitle in full-width wrapper */
#about-history > .wrapper .title_subtitle_blck {
    align-items: center;
    width: 100%;
    text-align: center;
}
#about-history > .wrapper .title_subtitle_blck .subtitle {
    justify-content: center;
}
#about-history > .wrapper .title_subtitle_blck .general_title {
    text-align: center;
    width: 100%;
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
}
.line_animation{
    gap: 20px;
    position: relative;
    overflow: hidden;
}
.thin_line {
    position: absolute;
    top: 60px;
}
.back_anim {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    background: #F5F2EE;
}
.back_anim_animate {
    animation: slideRight 2s forwards;
}
@keyframes slideRight {
    100% {
        left: calc(100vw - 100px); 
    }
}
.line_animation .three_inf_animation{
    max-height: fit-content;
    width: 100%;
}
.line_animation .big_line{
    height: 280px;
}
.line_animation .description_{
    font-size: var(--eighteen);
}
.three_blocks{
    gap: 20px;
}
.three_blocks .three_inf_animation:nth-child(2){
    padding-top: 18px;
}
.three_blocks .three_inf_animation:nth-child(3){
    padding-top: 36px;
}

/* Services + About history: horizontal scroll, fixed card width */
.line_animation.services_line_animation {
    overflow-x: clip;
    overflow-y: visible;
}
.services_cards_track.three_blocks {
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    gap: 24px;
    padding-bottom: 20px;
    scroll-snap-type: x proximity;
}
.line_animation.services_line_animation .three_inf_animation {
    flex: 0 0 auto;
    width: clamp(280px, 36vw, 420px);
    max-width: 100%;
    scroll-snap-align: start;
}
.line_animation.services_line_animation .three_blocks .three_inf_animation {
    padding-top: 0;
}
.line_animation.services_line_animation .three_blocks .three_inf_animation:nth-child(3n + 2) {
    padding-top: 18px;
}
.line_animation.services_line_animation .three_blocks .three_inf_animation:nth-child(3n + 3) {
    padding-top: 36px;
}

/* About / History: same card geometry as Services (wave + yellow/grey lines); long-text safety only */
#about-history .line_animation.services_line_animation .info_blcks {
    min-width: 0;
    flex: 1 1 auto;
    max-width: 100%;
}
#about-history .line_animation.services_line_animation .three_inf_animation {
    width: clamp(300px, 38vw, 440px);
    max-width: min(440px, 92vw);
    min-width: min(300px, 92vw);
    overflow: visible;
    max-height: none;
}
#about-history .line_animation.services_line_animation .three_inf_animation.visible {
    max-height: none;
    overflow: visible;
}
#about-history .line_animation.services_line_animation .lines_blck {
    flex-shrink: 0;
}
#about-history .line_animation.services_line_animation .descrip_more_blck,
#about-history .line_animation.services_line_animation .descrip_more_blck .description_ {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
}

.owners_block{
    margin: 170px 0 100px 0;
    gap: 50px;
    border-bottom: 2px solid rgba(41, 65, 76, 0.20);
    padding-bottom: 100px;
    align-items: stretch;
}
.owners_block .title_description{
    flex-direction: column;
    align-items: start;
    max-width: 550px;
}
.obout_owners{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 24px;
    width: 100%;
}
.infoof_owners{
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    max-width: none;
    width: 100%;
    min-width: 0;
}
.owners_img{
    height: 440px;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    border-radius: 20px;
    overflow: hidden;
    background: rgba(48, 73, 84, 0.06);
    flex-shrink: 0;
}
.owners_img img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 18%;
}
.name_owners{
    font-size: var(--thirty);
    text-transform: uppercase;
    text-align: center;
    width: 100%;
}
.infoof_owners .description_{
    width: 100%;
    text-align: start;
}
.team_slider{
    cursor: pointer;
    max-width: 500px;
    display: flex !important;
    flex-direction: column;
    gap: 20px;
}
.teams_img{
    height: 480px;
    border-radius: 20px;
    overflow: hidden;
}
.team_slider:hover .teams_img img{
    transform: scale(1.1);
}
.team_slider .teams_img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
    display: block;
}
.team_slider .team_member_role{
    display: block;
    min-height: 1.35em;
    color: var(--greyFont);
    font-size: var(--eighteen);
    line-height: 140%;
    text-align: center;
    width: 100%;
    align-self: stretch;
}
.about_license_regulations{
    flex-direction: column;
    align-items: start;
    gap: 60px;
    margin-top: 90px;
    padding-top: 80px;
    border-top: 1px solid rgba(41, 65, 76, 0.20);;
}
.teamSlide {
    margin: 70px 0 100px 0;
}
.license_title{
    font-size: 40px;
    text-transform: uppercase;
}
.two_blkcs{
    align-items: stretch;
    gap: 20px;
}
.goto_info_page{
    background: rgba(255, 255, 255, 0.25);
    border-radius: 20px;
    overflow: hidden;
    align-items: stretch;
}
a.goto_info_page{
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}
a.goto_info_page:hover{
    opacity: 0.92;
}
.title_learn_blck{
    flex-direction: column;
    align-items: start;
    gap: 12px;
    padding: 30px;
}
.right_img {
    height: 200px;
}
/* end about us */

/* reports */
.documents_tab_blcks{
    flex-direction: column;
    align-items: start;
    gap: 55px;
    margin: 70px 0 140px 0;
}
.tab_blck{
    overflow: auto;
    padding-bottom: 20px;
    justify-content: start;
    align-items: end;
}
.choose_tab {
    min-width: fit-content;
    position: relative;
    font-size: var(--eighteen);
    color: #1D291F;
    text-transform: uppercase;
    cursor: pointer;
    padding: 0 20px 20px 20px;
    border-bottom: 1px solid rgba(41, 65, 76, 0.20);
}
.empty_undreline{
    border-bottom: 1px solid rgba(41, 65, 76, 0.20);
}
.underline_hover {
    border-bottom: 3px solid var(--gold);
    transition: transform 0.5s ease;
    transform: translateX(-2000px);
    position: absolute;
    left: 0;
    bottom: -1px;
}
.choose_tab:hover .underline_hover, .choose_tab_active .underline_hover {
    transform: translateX(0);
    transition: transform 0.5s ease;
}
.chosen_files_blck{
    display: none;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}
.chosen_files_blck_active{
    display: grid;
}
.file_skilet{
    background-color: var(--white);
    padding: 40px;
    justify-content: start;
    gap: 20px;
    border-radius: 20px;
}
.file_img{
    max-width: 62px;
}
.type_name_size{
    flex-direction: column;
    gap: 6px;
    align-items: start;
}
.file_name{
    font-size: var(--eighteen);
}
.size_of{
    font-size: var(--eighteen);
}
/* end reports */

/* service */
.any_question_blcock{
    margin: 140px 0;
    align-items: start;
    gap: 20px;
}
.question_form{
    flex-direction: column;
    gap: 8px;
    max-width: 870px;
    width: 100%;
}
.two_inps{
    gap: 8px;
    align-items: stretch;
}
.inp_{
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #FDFBF8;
    background: #F9F5EF;
    font-size: var(--twelve);
}
.accept_send_blck{
    margin-top: 30px;
    gap: 20px;
}
.radio_lab{
    gap: 12px;
    cursor: pointer;
}
.checko_, .radio_lab{
    position: relative;
}
.checko_, .check_inp, .checkbox_form {
    width: 18px;
    height: 18px;
    aspect-ratio: 1 / 1;
}
.check_inp {
    opacity: 0;
    z-index: 2;
    position: absolute;
    cursor: pointer;
}
.checkbox_form {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #FDFBF8;
    border: 1px solid var(--gold);
    position: absolute;
    cursor: pointer;
    z-index: 0;
}
.checko_ input:checked~.checkbox_form {
    background-color: var(--gold);
}
.checko_svg {
    justify-content: center;
    align-items: center;
}
.choose_radio{
    font-size: var(--twelve);
    max-width: 346px;
}
.send_btn{
    padding: 16px 24px;
    border-radius: 90px;
    cursor: pointer;
    gap: 10px;
    text-transform: uppercase;
    color: var(--brandColor);
    background: var(--gold);
}
.send_btn:hover{
    background: var(--brandColor);
    color: var(--gold);
}
.send_btn:hover svg path{
    fill: var(--gold);
}
/* end service */

/* service item */
.serv_img{
    height: 554px;
    border-radius: 12px;
    overflow: hidden;
}
.service_item_block{
    flex-direction: column;
    gap: 60px;
}
.beige_blck{
    padding: 80px 0;
}
.beige_blck .any_question_blcock{
    margin: 0;
}
.servs_descrips{
    color: var(--greyFont);
    flex-direction: column;
    align-items: start;
    gap: 20px;
    max-width: 1164px;
}
.servs_descrips .general_title{
    color: var(--brandColor);
    max-width: none;
}
.servs_descrips h1, .servs_descrips h2, .servs_descrips h3, .servs_descrips h4,
.servs_descrips h5, .servs_descrips h6, .servs_descrips b{
    color: var(--brandColor);
    font-weight: 900 !important;
} 
/* end service item */

/* newsroom news  */
.newsSlider{
    padding-left: 4% !important;
    margin-top: 30px;
    margin-bottom: 60px;
}
.news_big_item{
    overflow: hidden;
    max-width: 966px;
    position: relative;
    border-radius: 20px;
    height: 320px !important;
    background-color: #304954;
}
.news_big_item:hover img{
    transform: scale(1.1);
}
.background_news{
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, #000000c4 0%, rgba(0, 0, 0, 0.00) 100%);
}
.news_info_onimg{
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    max-width: 544px;
    width: 80%;
    height: 100%;
    padding: 60px;
}
.newsroom_slide_title{
    font-size: var(--twofour);
    color: var(--white);
}
.description_whiteop{
    font-size: var(--eighteen);
}
.date_news{
    color: var(--gold);
    font-size: var(--twenty);
}
.new_news{
    position: absolute;
    top: 24px;
    right: 24px;
    color: #304954;
    padding: 10px;
    border-radius: 90px;
    font-size: var(--sixteen);
    background-color: var(--white);
}
.newsroom_block{
    flex-direction: column;
    align-self: flex-start;
    gap: 35px;
    margin-bottom: 140px;
}
.view_all{
    padding: 16px;
    background-color: var(--gold);
    color: var(--white);
    text-transform: uppercase;
    border-radius: 12px;
    cursor: pointer;
    text-align: center;
}
.view_all:hover{
    background-color: var(--brandColor);
}
.news_grid_blck{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.news_grid_blck .news_item{
    max-width: none !important;
}
/* Newsroom category filter: jQuery .hide() loses to .news_item { display:flex !important } */
.newsroom_block .news_grid_blck .news_item.news_item--hidden{
    display: none !important;
}
.news_single_block{
    justify-content: center;
    margin-bottom: 140px;
}
.news_single_img{
    height: 690px;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 60px;
}
.news_title_date_share{
    gap: 20px;
    align-items: start;
}
.news_title{
    font-size: 50px;
    max-width: 730px;   
}
.date_share_blck{
    min-width: max-content;
    gap: 20px;
}
.share_dropdown_wrap{
    position: relative;
}
.share_popup{
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 80;
    min-width: 200px;
    flex-direction: column;
    gap: 4px;
    padding: 10px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(41, 65, 76, 0.18);
    border: 1px solid rgba(41, 65, 76, 0.08);
}
.share_popup.is_open{
    display: flex;
}
.share_popup_link{
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 12px;
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
    color: var(--black);
    transition: background 0.2s ease;
}
.share_popup_link:hover{
    background: rgba(227, 172, 69, 0.15);
    color: var(--brandColor);
}
.share_popup_icon{
    display: flex;
    flex-shrink: 0;
    color: var(--brandColor);
}
.share_popup_linkedin .share_popup_icon{
    color: #0a66c2;
}
.share_popup_facebook .share_popup_icon{
    color: #1877f2;
}
.share_btn{
    font-size: var(--twenty);
    cursor: pointer;
    background-color: var(--brandColor);
    color: var(--white);
    gap: 12px;
    padding: 12px 20px;
    border-radius: 90px;
}
.share_btn:hover{
    background-color: var(--gold);
}
.news_single_block .servs_descrips{
    gap: 30px;
}
/* end  newsroom news  */

/* contact  */
.contacts_big_blck{
    flex-direction: column;
    align-items: start;
    gap: 45px;
}
.contacts_big_blck .description_{
    max-width: 870px;
}
.contac_info_links{
    justify-content: start;
    gap: 30px;
}
.cont_big_links{
    font-size: var(--twofour);
    text-transform: uppercase;
}
.cont_big_links:hover{
    color: var(--gold);
}
.h_line{
    height: 22px;
    border-right: 1px solid rgba(41, 65, 76, 0.20);
}
.underline_{
    margin: 60px 0;
    border-bottom: 1px solid rgba(41, 65, 76, 0.20);
}
.second_title{
    font-size: var(--twofour);
}
.career_info_blck{
    height: auto !important;
    max-width: 570px;
    padding: 20px;
    display: flex !important;
    flex-direction: column;
    align-items: start;
    gap: 30px;
    border-radius: 20px;
    background: #F4F1EC;
}
.career_title{
    text-transform: uppercase;
    font-size: var(--thirty);
    margin-bottom: auto;
}
.map_contact{
    max-width: 970px;
    width: 100%;
    height: 530px;
    border-radius: 20px;
    overflow: hidden;
}
.incore-map-marker {
    background: none !important;
    border: none !important;
}
.incore-marker-dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--gold);
    border: 4px solid var(--brandColor);
    box-shadow: 0 2px 8px rgba(41, 65, 76, 0.35);
}
.careerSlider .swiper-wrapper{
    align-items: stretch;
}

/* end contact  */






 