/* Majesty — self-host (реюз з concepts/design) */
@font-face{
    font-family:'Majesty';
    src:url('../fonts/UAFMemory-Regular.woff2') format('woff2'),
        url('../fonts/UAFMemory-Regular.woff') format('woff'),
        url('../fonts/UAFMemory-Regular.ttf') format('truetype');
    font-weight:400 700;
    font-style:normal;
    font-display:swap;
}

@font-face{
    font-family:'Euclid Circular A';
    src: url('../fonts/Euclid Circular A Regular.ttf') format('truetype');
    font-weight:400 700;
    font-style:normal;
    font-display:swap;
}
:root{
    --gold:#b89362;
    --serif:'Majesty','Playfair Display',Georgia,serif;
    --sans:'Euclid Circular A','Inter',system-ui,-apple-system,sans-serif;
    --s:1;
}
*{
    box-sizing:border-box;
    margin:0;
    padding:0;
}

html {
    scroll-behavior: smooth;
    scrollbar-gutter: stable;
}

html,body{
    background:#fff;
}
body{
    font-family:var(--sans);
}

/* ── скрол-трек: 100vh екран + дистанція морфу (скраб) ── */
.track{
    height:calc(100vh + 1300px);
    position:relative;
}
.sticky{
    position:sticky;
    top:0;
    height:100vh;
    height: 100dvh;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
}

/* фікс-сцена 1440×800, вписується цілком (contain) */
.stage{
    width:1440px;
    height:800px;
    position:relative;
    transform:scale(var(--s));
    transform-origin:center center;
    background:#fff;
    overflow:hidden;
    flex:0 0 auto;
}

/* ── LEFT (video) — статичний, панель його накриє ── */
.left{
    position:absolute;
    left:8px;
    top:8px;
    width:708px;
    height:784px;
    overflow:hidden;
    background:#797979;
    z-index:1;
}
.video,.video-fallback{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}
.video-fallback{
    background:#797979;
}
.video{
    object-fit:cover;
}
.video-tint{
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg,rgba(13,17,27,0.26) 0%,rgba(13,17,27,0.14) 42%,rgba(9,12,20,0.60) 100%);
}
.wordmark{
    position:absolute;
    top:32px;
    left:32px;
    width:126px;
    height:40px;
    width: 151px;
    height: 48px;
}
.headline{
    position:absolute;
    left:32px;
    bottom:32px;
    right:66px;
    color:#fff;
    font-weight:500;
    font-size:88px;
    font-size: 5cqw;
    line-height:.9;
    letter-spacing:-3.52px;
}

/* ── ПАНЕЛЬ (морфиться: 716→0 по left, разом із білою вертикальною полосою-швом зліва).
      border-left 8px = та сама центральна полоса hero; у фіналі стає лівим зовнішнім відступом. ── */
.panel{
    position:absolute;
    left:716px;
    top:8px;
    width:716px;
    height:664px;
    background:#503086;
    overflow:hidden;
    z-index:3;
    border-left:8px solid #fff;
    box-sizing:border-box;
}

/* hero-контент панелі — прибитий до ПРАВОГО краю (не їде при розтягуванні), лише фейд */
.hero-layer{
    position:absolute;
    right:0;
    top:0;
    width:708px;
    height:664px;
}
.hero-layer nav{
    position:absolute;
    top:35px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:24px;
}
.hero-layer nav a{
    font-size:14px;
    letter-spacing:.5px;
    color:#fff;
    text-decoration:none;
    opacity:.95;
}
.lang{
    position:absolute;
    top:35px;
    left:656px;
    font-size:14px;
    letter-spacing:.5px;
    color:#fff;
    border-bottom:2px solid var(--gold);
    padding-bottom:3px;
}
.title{
    position:absolute;
    left:151px;
    top:289px;
    font-family:var(--serif);
    font-weight:500;
    font-size:48px;
    letter-spacing:.5px;
    color:#fff;
    text-transform:uppercase;
}
.title .tline{
    white-space:nowrap;
    height:43px;
    line-height:43px;
}
.title .ch{
    display:inline-block;
    opacity:0;
    transition:opacity .9s ease-in-out;
    will-change:opacity;
    min-width: 15px;
}
.news{
    position:absolute;
    left:354px;
    top:518px;
    width:197px;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.news-label{
    font-size:10px;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#fff;
    opacity:.5;
}
.news-title{
    font-size:14px;
    line-height:1.3;
    color:#fff;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    transition:opacity .6s ease;
}
.news-cta{
    font-size:10px;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#d6ad76;
    text-decoration:none;
}

/* ── DEEP-DIVE шар: стоїть у ФІНАЛЬНИХ координатах сцени (контр-зсув із JS),
      панель-«вікно» розсувається і просто відкриває його ── */
.deep-layer{
    position:absolute;
    left:0;
    top:0;
    width:1424px;
    height:664px;
    pointer-events:none;
    will-change:transform;
}
.dd-watermark{
    position:absolute;
    left:191px;
    top:179px;
    width:511px;
    height:371px;
    transition: all .5s ease;
    transition-delay: .3s;
    opacity: 0;
}   /* завжди видимий — «вже там», вікно відкриває */
.swiper-slide-active .dd-watermark {
    opacity: 1;
}
.dd-watermark img{
    width:100%;
    height:100%;
    display:block;
}
.dd-brand{
    position:absolute;
    left:72px;
    top:70px;
    display:flex;
    gap:24px;
    align-items:flex-start;
    opacity:0;
}
.dd-brand svg{
    width:79.3px;
    height:80px;
    display:block;
    flex:0 0 auto;
}   /* пропорція цільного експорту 155.86×157.19 */
.dd-brand-txt{
    height:63.8px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:5px;
}   /* по центру ПРЯМОЇ частини щита (125.42/157.19 × 80) */
.dd-brand-nyzhnyy{
    font-family:var(--serif);
    font-weight:500;
    font-size:10px;
    letter-spacing:2px;
    text-transform:uppercase;
    color:var(--gold);
}
.dd-brand-name{
    font-family:var(--serif);
    font-weight:500;
    font-size:22px;
    line-height:1.14;
    letter-spacing:.03em;
    text-transform:uppercase;
    color:var(--gold);
}
.dd-col{
    position:absolute;
    left:183px;
    top:230px;
    width:451px;
    display:flex;
    flex-direction:column;
    gap:32px;
}
.dd-h{
    font-size:24px;
    line-height:1.25;
    color:#fff;
    opacity:0;
}
.dd-p{
    font-size:14px;
    line-height:1.28;
    color:#fff;
    width:379px;
    opacity:0;
}
.dd-cta{
    display:inline-flex;
    align-items:flex-start;
    align-self:flex-start;
    opacity:0;
    pointer-events:auto;
    cursor:pointer;
    text-decoration: none;
}
.dd-pill{
    background:#fff;
    color:#000;
    border-radius:100px;
    padding:12px 24px;
    font-size:14px;
    line-height:1.4;
    white-space:nowrap;
}
.dd-circ{
    width:44px;
    height:44px;
    border-radius:50%;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}
.dd-circ svg{
    width:24px;
    height:24px;
    display:block;
}
/* фото справа: НЕ в deep-шарі — виїжджає ЧИСТО з-за правого краю (без фейду), overflow панелі його ховає */
.dd-photo{
    position:absolute;
    right:0;
    top:0;
    width:531px;
    height:100%;
    overflow:hidden;
    transform:translateX(531px);
    will-change:transform;
}
.dd-photo>img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.dd-photo-shade{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.2);
}
.dd-offer{
    position:absolute;
    left:0;
    bottom:0;
    width:531px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    background:rgba(0,0,0,.3);
    -webkit-backdrop-filter:blur(20px);
    backdrop-filter:blur(20px);
    opacity:0;
}
.dd-offer-txt{
    display:flex;
    flex-direction:column;
    gap:10px;
    padding:16px;
    /*width:261px;*/
}
.dd-offer-h{
    /*font-size:20px;*/
    font-size:1.4cqw;
    color:#fff;
}
.dd-offer-p{
    /*font-size:14px;*/
    font-size:1cqw;
    line-height:1.3;
    color:#fff;
}
.dd-apply{
    display:flex;
    gap:4px;
    align-items:center;
    color:#fff;
    font-size:14px;
    font-size:1cqw;
    text-decoration:none;
    pointer-events:auto;
}
.dd-apply svg{
    width:24px;
    height:24px;
    display:block;
}
.dd-mini{
    position:relative;
    max-width: 211px;
    width:40cqw;
    height:173px;
    flex:0 0 auto;
}
.dd-mini>img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.dd-mini-badge{
    position:absolute;
    left:auto;
    right: 0;
    top:0;
    background:#503086;
    color:#fff;
    font-size:14px;
    padding:8px;
    white-space:nowrap;
}

/* ── TILES (їдуть з тією ж білою полосою зліва, синхронно з панеллю) ── */
.tiles{
    position:absolute;
    left:716px;
    top:672px;
    width:716px;
    height:120px;
    display:flex;
    z-index:5;
    border-left:8px solid #fff;
    box-sizing:border-box;
    overflow: auto;
}
.tile{
    position:relative;
    flex:1 1 0;
    height:120px;
    overflow:hidden;
    min-width: 161px;
}
.t-cities{
    background:#05323f;
}
.t-public{
    background:#503086;
}
.t-business{
    background:#3b0142;
}
.t-diplomacy{
    background:#5b4039;
}
.tile .topbar{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:8px;
    background:#fff;
    z-index:1;
}
.tile .progress{
    position:absolute;
    top:0;
    left:0;
    height:8px;
    width:0;
    background:var(--gold);
    z-index:2;
}
.tile .num{
    position:absolute;
    top:14px;
    right:8px;
    font-size:12px;
    color:#fff;
    opacity:.5;
}
.tile .label{
    position:absolute;
    left:16px;
    bottom:16px;
    font-family:var(--serif);
    font-weight:500;
    font-size:16px;
    line-height:1;
    letter-spacing:.01em;
    text-transform:uppercase;
    color:var(--gold);
    transition:color .8s ease;
}
.tile.active .label{
    color:#fff;
}

/* ── SHIELD великий — на шві; при морфі лише фейд (нікуди не летить) ── */
.shield{
    position:absolute;
    left:627px;
    top:256px;
    width:186px;
    height:188px;
    z-index:10;
}
.shield svg{
    position:absolute;
    left:-14px;
    top:-3px;
    width:214px;
    height:241px;
    overflow:visible;
    display:block;
}
#shieldLower{
    fill:var(--shield-dir,#503086);
    transition:fill .8s cubic-bezier(.4,0,.2,1);
}
.dd-ns{
    fill:var(--shield-dir,#503086);
    transition:fill .8s cubic-bezier(.4,0,.2,1);
}   /* літери Ns лого = колір напряму (проріз під фон) */

.img-fluid {
    height: auto;
    max-width: 100%;
}

.footer_col {
    padding: 40px 40px 24px;
    background: #53052c;
    color: #fff;
}

.site-footer {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background: #fff;
    padding: 8px;
    gap: 8px;
    position: relative;
}

.footer_col_content {
    position: relative;
}

.fdecor {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

.flogo {
    margin-bottom: 40px;
}

.fslogan {
    margin-bottom: 40px;
    font-weight: 400;
    font-size: 32px;
    line-height: 110%;
}

.footer_col h2 {
    margin-bottom: 32px;
    font-weight: 400;
    font-size: 12px;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
}

.flinks {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 32px;
}

.footer_col h3 {
    font-weight: 400;
    font-size: 12px;
    letter-spacing: 0.07em;
    color: rgba(255,255,255,0.5);
    margin-bottom: 4px;
}

.flink a, .flink a:hover {
    font-weight: 400;
    font-size: 20px;
    letter-spacing: 0.07em;
    color: #fff;
    text-decoration: none;
}

.socials_list {
    display: flex;
    gap: 5px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.socials_list a {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100px;
    padding: 8px;
    width: 40px;
    height: 40px;
    min-width: 40px;
    background: #5d1331;
}

.footer_menus {
    display: flex;
    gap: 48px;
}

.footer_menus ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 16px
}

.footer_menus ul li {
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.07em;
}

.footer_menus ul li a, .footer_menus ul li a:hover {
    color: #fff;
    text-decoration: none;
}

section {
    padding: 5.5cqw 0;
}

.container {
    padding: 0 5.5cqw;
}

.header_container {
    padding: 0 40px;
}

.heading_row {
    display: flex;
    align-items: flex-end;
    gap: 30px;
    justify-content: space-between;
    margin-bottom: 2.25cqw;
}

.heading_row h2 {
    font-weight: 500;
    font-size: 48px;
    line-height: 90%;
    letter-spacing: -0.04em;
    margin-bottom: 0;
}

.heading_row .desc {
    max-width: 405px;
    font-weight: 400;
    font-size: 14px;
}

.latest_item {
    --bgc: #503086;
    position: relative;
    transition: all .5s linear;
    width: 222px !important;
    overflow: hidden;
}

.latest_item_txt {
    width: 405px;
    overflow: clip;
    transition: all .5s linear;
    opacity: 0;
    visibility: hidden;
}

.latest_item_txt .latest_item_ttl {
    transition: all .5s linear;
    transform: translateY(-100%);
    font-weight: 400;
    font-size: 24px;
    line-height: 110%;
    margin-top: 32px;
    margin-bottom: 24px;
    height: auto;
}

.latest_item_txt .latest_item_desc {
    transition: all .5s linear;
    transform: translateY(-100%);
    font-weight: 400;
    font-size: 14px;
}

.last_slider .latest_item {
    margin: 0 10px;
    /*transition: all .5s linear;*/
}

.last_slider .slick-track {
    transition-delay: .25s !important;
    transition: all .25s linear !important;
}

.latest_item_logo {
    position: absolute;
    top: 16px;
    left: 17px;
}

.latest_item_img {
    width: 222px;
    height: 222px;
    overflow: hidden;
    transition: all .5s linear;
}

.latest_item_img img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
    transition: all .5s linear;
}

.latest_item h3 {
    font-weight: 400;
    font-size: 20px;
    overflow: hidden;
    margin-top: 24px;
    margin-bottom: 12px;
    height: 50px;
    transition: all .5s linear;
}

.latest_item_desc {
    font-weight: 400;
    font-size: 14px;
    overflow: hidden;
    height: 54px;
    position: relative;
    transition: all .5s linear;
}

.latest_item_btn {
    height: 0;
    overflow: hidden;
    transition: all .5s linear;
}

.latest_item_desc:after {
    content: '...';
    background: #fff;
    position: absolute;
    right: 0;
    bottom: 0;
    width: max-content;
    padding: 2px 5px;
    transition: all .5s linear;
}

.latest_item.swiper-slide-active, .latest_item.slick-center, .owl-item.center .latest_item {
    width: 405px !important;
    /*    transition: all .5s linear;
        transition-delay: .7s;*/
}

.latest_item.slick-center .latest_item_txt, .owl-item.center .latest_item .latest_item_txt {
    opacity: 1;
    visibility: visible;
    /*transition-delay: .5s;*/
}

.latest_item.slick-center .latest_item_txt .latest_item_ttl, .owl-item.center .latest_item .latest_item_txt .latest_item_ttl {
    transform: translateY(0%);
    transition-delay: .5s;
}

.latest_item.slick-center .latest_item_txt .latest_item_desc, .owl-item.center .latest_item .latest_item_txt .latest_item_desc {
    transform: translateY(0%);
    transition-delay: .5s;
}

.latest_item.swiper-slide-active .latest_item_btn, .latest_item.slick-center .latest_item_btn,
.owl-item.center .latest_item .latest_item_btn {
    height: 41px;
    /*    transition: all .5s linear;
        transition-delay: .7s;*/

    transition-delay: .5s;
}

.latest_item.swiper-slide-active .latest_item_img, .latest_item.slick-center .latest_item_img,
.owl-item.center .latest_item .latest_item_img {
    width: 405px;
    height: 405px;
    border-bottom: 8px solid var(--bgc);
    /*    transition: all .5s linear;
        transition-delay: .7s;*/
}

.latest_item.swiper-slide-active h3, .latest_item.slick-center h3,
.owl-item.center .latest_item h3 {
    font-weight: 400;
    font-size: 24px;
    line-height: 110%;
    margin-top: 32px;
    margin-bottom: 24px;
    height: auto;
    /*    transition: all .5s linear;
        transition-delay: .7s;*/
    display: none;
}

.latest_item.swiper-slide-active .latest_item_desc:after, .latest_item.slick-center .latest_item_desc:after,
.owl-item.center .latest_item .latest_item_desc:after {
    opacity: 0;
    visibility: hidden;
    /*    transition: all .5s linear;
        transition-delay: .7s;*/
}

.slick-center .latest_item_desc, .owl-item.center .latest_item .latest_item_desc {
    font-weight: 400;
    font-size: 14px;
    overflow: hidden;
    height: auto;
    margin-bottom: 24px;
    /*    transition: all .5s linear;
        transition-delay: .7s;*/
}

.owl-item.center .latest_item .latest_item_desc_start, .slick-center .latest_item_desc_start {
    display: none !important;
}

.latest_section .swiper, .last_slider, .latest_owl {
    height: 800px;
}

.last_slider {
    position: relative;
}

.last_slider .slick-dots, .owl-carousel .owl-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    list-style: none;
    border-radius: 24px;
    padding: 8px;
    background: #ececec;
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    z-index: 20;
}

.last_slider .slick-dots li {
    margin: 0;
    padding: 0;
    height: 5px;
    display: block;
}

.last_slider .slick-dots li button, .owl-carousel button.owl-dot {
    width: 5px;
    height: 5px;
    min-width: 5px;
    border-radius: 5px;
    color: transparent;
    border: none;
    background: #c8c8c8;
    transition: all .3s ease;
    font-size: 1px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.last_slider .slick-dots li.slick-active button, .owl-carousel .owl-dot.active {
    width: 12px;
    min-width: 12px;
    background: #000;
}

.swiper_controls {
    position: relative;
}

.swiper_controls .swiper-button-next:after, .swiper_controls .swiper-button-prev:after {
    display: none;
}

.swiper_controls .swiper-button-next, .swiper_controls .swiper-button-prev {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ececec;
    color: transparent;
    transition: all .5s ease;
}

.swiper_controls {
    display: flex;
    align-items: center;
    margin-bottom: 33px;
}

.swiper_controls .swiper-pagination {
    position: relative;
    top: auto;
    bottom: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 24px;
    padding: 8px;
    background: #ececec;
    width: max-content;
    max-width: calc(100% - 100px);
    margin: 0 auto;
    flex-wrap: wrap;
}

.swiper_controls .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #000;
    width: 12px;
    border-radius: 50%;
}

.swiper_controls .swiper-pagination-bullet {
    background: #c8c8c8;
    width: 5px;
    height: 5px;
    min-width: 5px;
    border-radius: 5px;
    opacity: 1;
}

.arrow_btn {
    overflow: hidden;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500;
    font-size: 14px;
    padding: 0;
    color: #fff;
    background-color: transparent;
    border-radius: 100px;
    height: 40px;
    text-decoration: none;
    max-width: max-content;
}

.arrow_btn span {
    overflow: hidden;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 20px;
    text-align: center;
    border-radius: 100px;
    background-color: var(--bgc);
}

.arrow_btn:before {
    transform-origin: center right;
    width: 1px;
    scale: 0;
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    content: "";
    -webkit-transition: width 0.3s, scale 0.3s;
    transition: width 0.3s, scale 0.3s;
    background: url(../img/tabler_arrow.svg) center/16px 16px no-repeat var(--bgc);
    -webkit-transform-origin: center left;
    -ms-transform-origin: center left;
    transform-origin: center left;
    border-radius: 100px;
}

.arrow_btn:before {
    transform-origin: center right;
    width: 1px;
    scale: 0;
}

.arrow_btn:hover:before {
    height: 40px;
    width: 40px;
    scale: 1;
}

.arrow_btn:after {
    transform-origin: center right;
    height: 40px;
    width: 40px;
    scale: 1;
    display: block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    content: "";
    -webkit-transition: width 0.3s, scale 0.3s;
    transition: width 0.3s, scale 0.3s;
    background: url(../img/tabler_arrow.svg) center/16px 16px no-repeat var(--bgc);
    -webkit-transform-origin: center left;
    -ms-transform-origin: center left;
    transform-origin: center left;
    border-radius: 100px;
}


.arrow_btn:hover:after {
    width: 1px;
    scale: 0;
}

.media_section {
    background: #121d26;
    color: #fff;
    position: relative;
}

.media_container {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 32px;
    transition: all .5s ease;
    position: relative;
}

.media_left {
    grid-column: span 8;
    transition: all .5s ease;
}

.media_right {
    grid-column: span 4;
    transition: all .5s ease;
}

.big_media_item * {
    transition: all .5s ease;
}

.big_media_item_img {
    overflow: hidden;
    height: 474px;
    margin-bottom: 32px;
    position: relative;
    display: block;
    position: relative;
}

.media_item .big_media_item_img {
    height: 228px;
    margin-bottom: 12px;
}

.big_media_item_img img, .partner_item_trumb img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.big_media_item h3 {
    font-weight: 400;
    font-size: 32px;
    line-height: 110%;
    margin-bottom: 16px;
}

.big_media_item .desc {
    font-weight: 400;
    font-size: 14px;
    color: rgba(255,255,255,.8);
    margin-bottom: 32px;
}

.big_media_item .pl_btn, .media_item .pl_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    border: 1px solid #fff;
    border-radius: 143px;
    padding: 17px;
    backdrop-filter: blur(11.428571701049805px);
    background: rgba(13, 16, 22, 0.5);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.media_item .pl_btn {
    width: 56px;
    height: 56px;
}

.media_decor {
    font-weight: 500;
    font-size: 120px;
    line-height: 90%;
    text-transform: uppercase;
    color: #fff;
    opacity: 0.06;
    position: absolute;
    bottom: -12px;
    left: 5.5cqw;
}

.media_item h3 {
    font-weight: 400;
    font-size: 20px;
    line-height: 110%;
    margin-bottom: 12px;
}

.media_item .desc {
    margin-bottom: 0;
}

.media_item {
    margin-bottom: 32px;
}

.all_media {
    font-weight: 400;
    font-size: 14px;
    line-height: 140%;
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
}

.all_media:hover {
    text-decoration: underline;
}

.partners_section {
    background: #e5ebf0;
    color: #0d1016;
}

.partner_item_desc {
    height: 40px;
    overflow: hidden;
}

.partners_block {
    display: flex;
    align-items: center;
    padding: 8px;
    background: #f1f4f7;
    margin-bottom: 16px;
}

.partners_block_info {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 250px;
}

.partners_block_info h3 {
    font-weight: 400;
    font-size: 32px;
    line-height: 110%;
    margin-bottom: 0;
}

.partners_block_swiper {
    position: relative;
    padding: 0 56px;
    width: calc(100% - 250px);
}

.partners_block_swiper .swiper {
    width: 100%;
}

.partners_block_swiper .swiper-wrapper {
    align-items: stretch;
}

.partners_block_swiper .swiper_controls {
    top: 50%;
    left: 0;
    width: 100%;
    position: absolute;
}

.partners_block_swiper .swiper_controls .swiper-pagination {
    display: none;
}

.partner_item {
    background: #fff;
    width: 298px;
}

.partner_item_txt {
    padding: 24px;
    padding-top: 32px;
}

.partner_item_ttl {
    font-weight: 400;
    font-size: 18px;
    line-height: 110%;
    margin-bottom: 12px;
}

.partner_item_trumb {
    overflow: hidden;
    height: 190px;
}

.partner_item_icon {
    height: 190px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
}

.partners_block_swiper .swiper-slide {
    height: auto;
}

.site-header {
    position: fixed;
    left: 0;
    top: 43px;
    width: 100%;
    z-index: 1050;
    transition: all .3s ease;
}

.site-header.hidden {
    top: -100px;
}

.header_row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 100px;
}

.site-header nav {
    /*    backdrop-filter: blur(37.5px);
        background: rgba(85, 88, 94, 0.35);*/
    border-radius: 30px;
    transition: all .3s ease;
    /*padding: 14px;*/
}

.nav{
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
}

.menu_gap {
    gap: 24px;
}

.site-header.scrolled nav {
    backdrop-filter: blur(37.5px);
    background: rgba(0, 0, 0, 0.6);
    border-radius: 30px;
    padding: 5px 10px;
}

.site-header .menu-item {
    /*padding: 9px 10px;*/
}

.site-header .menu-item a {
    display: flex;
    align-items: center;
    justify-items: center;
    white-space: nowrap;
    /*border-radius: 20px;*/
    /*padding: 5px 10px;*/
    color: #fff;
    text-decoration: none;
}

.site-header .menu-item a:hover {
    text-decoration: underline;
    /*    background: rgba(255, 255, 255, 0.1);*/
}

.header_right .menu-item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    min-width: 40px;
    height: 40px;
    border-radius: 40px;
    /*    backdrop-filter: blur(37.5px);
        background: rgba(0, 0, 0, 0.6);*/
}

.header_right .menu-item a {
    text-decoration: underline;
    text-decoration-color: #b89362;
    text-decoration-thickness: 2px;
    text-underline-offset: 5px;
}

.header_right .menu-item a:hover {
    text-decoration-color: #fff;
}

.site-header.scrolled .header_right .menu-item {
    backdrop-filter: blur(37.5px);
    background: rgba(0, 0, 0, 0.6);
}

.header_right {
    display: flex;
    align-items: center;
    gap: 5px;
}

.menu_toggle {
    display: none;
    color: #fff;
    backdrop-filter: blur(37.5px);
    background: rgba(0, 0, 0, 0.6);
    height: 40px;
    padding: 0 16px;
    cursor: pointer;
    align-items: center;
    border-radius: 40px;
    gap: 8px;
}

.burger {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    min-width: 24px;
    flex-direction: column;
    gap: 8px;
    cursor: pointer;
}

.burger .line {
    height: 2px;
    width: 100%;
    background: #fff;
    transition: all .5s ease;
}

#c {
    display: none;
}

.menu_toggle.active #c {
    display: block;
}

.menu_toggle.active .line:first-child {
    transform: rotate(45deg);
    margin-top: 10px;
}

.menu_toggle.active .line:last-child {
    transform: rotate(-45deg);
    margin-top: -10px;
}

.menu_toggle.active .burger {
    position: relative;
    top: -5px;
}

.menu_toggle.active #m {
    display: none;
}

.mob_menu {
    width: 100%;
    max-width: 400px;
    position: fixed;
    top: -100vh;
    top: -100dvh;
    right: 0;
    height: 100vh;
    height: 100dvh;
    border: 8px solid #fff;
    background: #53052c;
    overflow: auto;
    z-index: 1000;
}

.mob_menu.active {
    top: 0;
    transition: all .5s ease;
}

.mob_menu .flogo {
    margin-bottom: 56px;
    padding-top: 16px;
    padding-left: 16px;
    max-width: 138px;
}

.mob_menu .footer_col {
    border-top: 8px solid #fff;
    padding: 24px 16px;
}

.ecosys {
    font-family:var(--serif);
    font-weight: 500;
    font-size: 32px;
    line-height: 100%;
    text-transform: uppercase;
    color: rgba(255,255,255,.3);
    padding: 16px;
}

.m_tile, .n_tile {
    --bgc: #53052c;
    display: block;
    background: var(--bgc);
    padding: 16px;
    width: 100%;
    text-decoration: none;
    color: rgba(255,255,255,.5);
}

.m_tile .num, .n_tile .num {
    text-align: right;
    display: block;
    font-weight: 400;
    font-size: 12px;
}

.n_tile {
    display: flex;
    gap: 16px;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
}

.m_tile .label, .n_tile .label {
    font-family:var(--serif);
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    text-transform: uppercase;
    color: #b89362;
}

.m_tile .sub_label, .n_tile .sub_label {
    font-family:var(--serif);
    font-weight: 500;
    font-size: 12px;
    line-height: 100%;
    text-transform: uppercase;
    color: #b89362;
}

.mob_menu_item {
    display: block;
    font-family:var(--serif);
    font-weight: 500;
    font-size: 32px;
    line-height: 100%;
    text-transform: uppercase;
    color: #b89362;
    text-decoration: none;
    padding: 16px;
}

.mob_menu_items {
    padding: 16px 0;
}

.hero {
    width: 100vw;
    max-width: 100vw;
    overflow: hidden;
}

.hero_block {
    height: 100vh;
    height: 100dvh;
    display: flex;
    align-items: stretch;
    padding: 8px 0;
    gap: 8px;
    position: relative;
    overflow: hidden;
    transition: height .3s linear;
}

.hero_left, .hero_right {
    position: relative;
    width: calc(50% - 4px);
}

.hero_block .shield {
    top: 32%;
    left: 50%;
    transform: translateX(-50%);
}

.hero_swiper, .details_swiper {
    height: calc(100% - 120px);
}

.details_swiper {
    height: calc(100% - 136px);
}

.hero_swiper .swiper-wrapper, .details_swiper .swiper-wrapper {
    align-items: stretch;
    height: 100%;
}

.details_swiper .swiper-wrapper, .details_swiper .swiper-slide {
    transition-duration: .8s !important;
}

.hero_item {
    padding-top: 32cqh;
    padding-left: 21.3%;
}

.hero_item_ttl {
    opacity: 0;
    visibility: hidden;
    font-family:var(--serif);
    font-weight: 500;
    font-size: 2.8cqw;
    line-height: 100%;
    text-transform: uppercase;
    color: #b89362;
    transition: all .5s ease;
    transition-delay: .5s;
}

.hero_item_ttl span {
    font-size: 2cqw;
}

.hero_item {
    position: relative;
}

.hero_item.swiper-slide-active .hero_item_ttl {
    opacity: 1;
    visibility: visible;
}

.hero_item .news{
    position:absolute;
    left:auto;
    right: 26.7%;
    top:auto;
    bottom: 10%;
    width:197px;
    display:flex;
    flex-direction:column;
    gap:12px;
}
.news-label{
    font-size:10px;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#fff;
    opacity:.5;
}
.news-title{
    font-size:14px;
    line-height:1.3;
    color:#fff;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    transition: all .6s ease;
    transition-delay: .9s;
}
.news-cta{
    font-size:10px;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#d6ad76;
    text-decoration:none;
}

.hero_block .shield {
    width: 13cqw;
    height: 13cqw;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    filter: drop-shadow(0 2px 5px rgba(15, 8, 28, 0.1)) drop-shadow(0 9px 9px rgba(15, 8, 28, 0.09)) drop-shadow(0 20px 12px rgba(15, 8, 28, 0.05)) drop-shadow(0 36px 14px rgba(15, 8, 28, 0.01)) drop-shadow(0 57px 16px rgba(15, 8, 28, 0));
}

.hero_block .shield svg {
    object-fit: contain;
    object-position: center center;
    width: 100%;
    height: 100%;
    position: relative;
    top: auto;
    left: auto;
}

.new_tiles {
    position:absolute;
    right: 0;
    bottom:8px;
    width:calc(50% - 4px);
    height:120px;
    display:flex;
    z-index:5;
    /*border-left:8px solid #fff;*/
    box-sizing:border-box;
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
    transition: all .4s linear;
}

.new_tiles.active {
    width: 100%;
    z-index: 111;
    transition-delay: .4s;
}

.new_tiles::-webkit-scrollbar {
    display: none;
}

.datails {
    position: relative;
    width: 100%;
    height: 100vh;
}

.n_tile {
    min-width: 181px;
}

.n_tile .topbar {
    position: absolute;
    height: 8px;
    width: 100%;
    top: 0;
    left: 0;
    background: #fff;
}

.n_tile .progress {
    position: absolute;
    height: 8px;
    width: 100%;
    top: 0;
    left: 0;
    background: var(--gold);
    width: 0%;
}

.n_tile.active .progress {
    transition: all 7s linear;
    width: 100%;
}

.detail_item {
    padding-top: 11cqh;
    padding-left: 5cqw;
    padding-right: 40cqw;
    padding-bottom: 5cqh;
    position: relative;
}

.dd-brand {
    position: relative;
    top: auto;
    left: auto;
    transition: all .6s ease;
    transition-delay: .8s;
    margin-bottom: 12cqh;
    padding-left: 0;
}

.detail_item .dd-h {
    transition: all .6s ease;
    transition-delay: 1s;
}
.detail_item .dd-p {
    transition: all .6s ease;
    transition-delay: 1.1s;
}
.detail_item .dd-cta {
    transition: all .6s ease;
    transition-delay: 1.2s;
}

.detail_item.swiper-slide-active .dd-brand {
    opacity: 1;
}

.dd_content {
    display: flex;
    flex-direction: column;
    gap: 4.7cqh;
    max-width: 571px;
    position: relative;
}

.detail_item.swiper-slide-active .dd-h,
.detail_item.swiper-slide-active .dd-p,
.detail_item.swiper-slide-active .dd-cta {
    margin-left: 111px;
    opacity: 1;
    max-width: 460px;
}

.hero_container {
    width: calc(100% - 16px);
    margin-left: auto;
    margin-right: auto;
}

.detail_item .dd-photo {
    transition: all 1s ease;
    transition-delay: 1.2s;
    transform: translateX(36cqw);
    width: 36cqw;
}

.detail_item .dd-offer{
    width: 100%;
    transition: all .8s linear;
    transition-delay: 1.8s;
}

.detail_item.swiper-slide-active .dd-photo {
    transform: translateX(0);
}

.detail_item.swiper-slide-active .dd-offer {
    opacity: 1;
    transform: translateY(0);
}

.details_section {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    border-top: 8px solid #fff;
    transition: all .8s linear;
    overflow: hidden;
}

.details_section.active {
    left: 0;
    z-index: 100;
}

.dd-mini-badge_mob {
    display: none;
}

body.lock-scroll {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    overscroll-behavior: none;
}

.d-none {
    display: none !important;
}

@media screen and (max-width: 1669.8px) {
    .site-header nav {
        display: none;
    }
    .menu_toggle {
        display: flex;
    }
}

@media screen and (max-width: 1669.8px) {
    .header_row {
        gap: 30px;
    }
}

@media screen and (max-width: 999.8px) {
    .site-footer {
        grid-template-columns: repeat(1, 1fr);
    }
    .media_left, .media_right {
        grid-column: span 6;
    }
    .media_decor {
        font-size: 12cqw;
    }
    .heading_row {
        flex-wrap: wrap;
        gap: 21px;
    }
    .heading_row .desc {
        max-width: 100%;
    }
    .latest_section .swiper_controls {
        margin-top: 40px;
    }
}

@media screen and (max-width: 767.8px) {
    .track {
        height: 300vh;
    }
    .stage {
        width: 100%;
        height: 100vh;
        height: 100dvh;
    }
    .left {
        width: calc(100% - 16px);
        height: calc(50vh - 12px);
    }
    .panel {
        left: 0;
        top: 50%;
        width: 100% !important;
        height: calc(50vh - 112px);
        border: 8px solid #fff;
        border-bottom: none;
    }
    .shield, .hero_block .shield {
        left: 50%;
        top: 55%;
        width: 117px;
        height: 118px;
        z-index: 10;
        transform: translate(-50%, -50%);
        text-align: center;
    }
    .shield svg, .hero_block .shield svg {
        max-width: 100%;
        height: auto;
    }
    .tiles {
        position: absolute;
        left: 0 !important;
        top: auto;
        bottom: 0;
        width: 100% !important;
        height: 112px;
        display: flex;
        z-index: 5;
        border: 8px solid #fff;
        border-top: none;
    }
    .dd-photo {
        width: 100%;
        top: calc(100vh - 112px);
        height: calc(100vh - 112px);
        position: relative;
    }
    .dd-watermark {
        left: 50%;
        top: 409px;
        width: 359px;
        height: 260px;
        transform: translateX(-50%);
    }
    .deep-layer {
        width: 100%;
    }
    .dd-brand {
        left: 24px;
        top: 56px;
        gap: 20px;
    }
    .dd-brand-name {
        font-size: 21px;
    }
    .dd-h {
        font-size: 20px;
    }
    .dd-col {
        left: 0;
        padding-left: 24px;
        top: 176px;
        width: 100%;
        gap: 16px;
    }
    .dd-p {
        width: 100%;
    }
    .headline {
        left: 24px;
        right: 24px;
        font-size: 32px;
    }
    .dd-mini, .hero-layer nav, .lang {
        display: none;
    }
    .dd-offer {
        width: 100%;
    }
    .dd-offer-txt {
        width: 100%;
    }
    .title {
        position: absolute;
        left: 24px;
        top: 59px;
        font-size: 32px;
    }
    .title {
        width: calc(100% - 48px);
    }
    .news {
        position: absolute;
        left: 24px;
        top: 239px;
        width: calc(100% - 48px);
    }
    .hero-layer {
        right: 0;
        top: 0;
        width: 100%;
        height: 100%;
    }
    .tile .label {
        left: 12px;
        bottom: 12px;
        font-size: 14px;
    }
    .tile {
        height: 112px;
        min-width: 135px;
    }
    .latest_item.swiper-slide-active, .last_slider .latest_item.slick-active, .owl-item.center .latest_item, .latest_item_txt {
        width: 296px !important;
    }
    .latest_item.swiper-slide-active .latest_item_img, .last_slider .latest_item.slick-active .latest_item_img,
    .owl-item.center .latest_item .latest_item_img {
        width: 296px;
        height: 296px;
        border-bottom: none;
    }
    .latest_item.swiper-slide-active h3, .last_slider .latest_item.slick-active h3,
    .owl-item.center .latest_item h3 {
        font-size: 20px;
        margin-top: 24px;
        margin-bottom: 12px;
    }
    .latest_item_desc {
        margin-bottom: 24px;
    }
    .latest_section .swiper, .last_slider, .latest_owl {
        height: 700px;
    }
    .heading_row h2 {
        font-size: 40px;
    }
    .big_media_item {
        margin-bottom: 32px;
    }
    .media_container {
        gap: 0;
    }
    .media_left, .media_right {
        grid-column: span 12;
    }
    .big_media_item_img {
        height: 228px;
        margin-bottom: 12px;
    }
    .big_media_item h3 {
        font-size: 20px;
        margin-bottom: 12px;
    }
    .big_media_item .desc {
        margin-bottom: 24px;
    }
    .big_media_item .pl_btn {
        width: 56px;
        height: 56px;
    }
    .partners_block {
        flex-wrap: wrap;
        gap: 24px;
        padding: 0;
        background: none;
        margin-bottom: 32px;
    }
    .partners_block_info {
        padding: 0;
        flex-direction: row;
        gap: 16px;
        min-width: 0;
        flex-wrap: wrap;
        align-items: center;
    }
    .partners_block_info .desc {
        width: 100%;
    }
    .partners_block_info h3 {
        width: calc(100% - 72px);
        font-size: 25px;
    }
    .partners_block_swiper {
        padding: 0;
        width: 100%;
        padding-bottom: 48px;
    }
    .partners_block_swiper .swiper_controls {
        top: auto;
        bottom: 0;
        margin-bottom: 0;
    }
    .partners_block_swiper .swiper_controls .swiper-pagination {
        display: flex;
    }
    .site-header nav {
        display: none;
    }
    .menu_toggle {
        display: flex;
    }
    .hero_block {
        flex-direction: column;
    }
    .hero_left, .hero_right {
        position: relative;
        height: calc(50vh - 4px);
        height: calc(50dvh - 4px);
        width: 100%;
    }
    .hero_swiper {
        height: calc(50vh - 116px);
        height: calc(50dvh - 116px);
    }
    .new_tiles {
        height: 112px;
        width: 100%;
    }
    .hero_item {
        padding-top: 59px;
        padding-left: 16px;
        padding-right: 16px;
    }
    .hero_item_ttl {
        font-size: 32px;
        margin-bottom: 29px;
    }
    .hero_item_ttl span {
        font-size: 18px;
    }
    .hero_item .news {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        bottom: auto;
        width: 197px;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }
    .detail_item {
        padding-right: 24px;
    }
    .detail_item .dd-brand {
        left: 0;
        top: auto;
        margin-bottom: 40px;
    }
    .detail_item.swiper-slide-active .dd-h,
    .detail_item.swiper-slide-active .dd-p,
    .detail_item.swiper-slide-active .dd-cta {
        margin-left: 0;
    }
    .details_swiper {
        height: calc(100vh - 126px);
        height: calc(100dvh - 126px);
    }
    .n_tile.active .progress {
        /*transition: all 14s linear;*/
    }
    .detail_item .dd-photo {
        transition: all 1s ease;
        transition-delay: 7s;
        transform: translateX(100%);
        width: 100%;
        top: 0;
        position: absolute;
    }
    .dd-mini-badge_mob {
        top: 0px;
        left: 24px;
        right: auto;
        display: block;
    }
    .detail_item .dd-offer-txt {
        height: auto;
        padding-top: 45px;
    }
    .dd-offer-h{
        font-size:20px;
    }
    .dd-offer-p{
        font-size:14px;
    }
    .dd-apply{
        font-size:14px;
    }
    .header_container {
        padding: 0 24px;
    }
    .news, .dd-photo {
        display: none !important;
    }
    .container {
        padding-left: 24px;
        padding-right: 24px;
    }
    .wordmark {
        width: 189px;
        height: 60px;
    }
}