:root {
    --second: #040e1a;
    --primary: #f47528;
    --gray: #666666;
    --light-gray: #333333;
    --white: #ffffff;
    --white-opacity: rgba(255,255,255, 0.8);
    --gray-opacity: rgba(102,102,102, 0.8);
    --text: #333333;
    --text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
    --bg-dark: url('../img/bg_dark.webp');
    --bg-light: url('../img/bg_white.webp');
    --bg-card-small: url('../img/bg-hot.webp');
    --bg-card-small-hover: url('../img/bg-hot-hover.webp');
    --bg-repeat: repeat;
    --bg-position: top left;
    --font-oswald: 'Oswald', 'Arial Narrow', Arial, sans-serif;
    --font-arial-narrow: 'Arial Narrow', Arial, sans-serif;
}

* { margin: 0; padding: 0; box-sizing: border-box;}
body { font-family: Arial, 'Helvetica Neue', sans-serif; background: var(--white); color: var(--text); padding-top: 104px;font-size: 16px;}
      @media (max-width: 1024px) {body {padding-top: 82px; font-size: 14px;}}  

.container { max-width: 1560px; margin: 0 auto; width: 100%;padding:0 20px;}
@media (min-width: 1561px) {.container {padding:0}}
 @media (max-width: 768px) {.container {max-width: 100%; padding: 0 16px;}}

h1, h2, h3, .header-title, .stat-number, .header-nav a, .footer-nav a {
    font-family: var(--font-oswald);
}
.header { position: fixed;top: 0; left: 0;width: 100%; z-index: 10000;transition: background-color 0.3s ease;}

.header.header-scrolled {  background: var(--bg-light); color: var(--second);}
    .header-scrolled .nav a, .header-scrolled .burger span, .header-scrolled .lang-switch a, .header-scrolled .icon-orange, .header-scrolled .logo-box, .header-scrolled .lang-switch  a:not(:last-child)::after { color: var(--second); }
    .header-scrolled .date-place {color: var(--gray-opacity);}
    .header-scrolled .lang-switch a.active { color: var(--gray); text-decoration: none; }
    .header-scrolled .header-row--first {border-bottom: 1px solid var(--gray-opacity);}
    .header-scrolled .burger span { background: var(--second);}
    .header.header-scrolled .btn-outline { border-color: var(--second); color: var(--second);}
    .header.header-scrolled .btn-primary { background: var(--second); border: none; color: var(--white);  border: 1px solid transparent;}
    .header.header-scrolled .btn-primary:hover {background: transparent; border: 1px solid var(--second); color: var(--second); }
    .header.header-scrolled .btn-outline:hover {background: var(--second); color: var(--white);  }

@media (max-width: 768px) {
        .header-scrolled .header-row--first {border-bottom: none} 
        .header-scrolled .nav a {color: var(--white);}
    }

.header { background: var(--bg-dark) var(--bg-repeat);  color: var(--white);  padding: 20px 0 15px 0;  background-size: 180px auto; border-bottom: 4px solid var(--primary);}
.grid-header { display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: start; }
.grid-col-logo { display: flex; align-items: flex-start; }
.logo-box { background-color: var(--primary); border-radius: 5px; display: inline-block; padding: 4px 10px;}
    .logo-img { height: 50px; width: auto; display: block;}

.header-row--first { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; padding-bottom: 10px; border-bottom: 1px solid var(--white-opacity);}
.date-place { display: flex; align-items: center; gap: 5px; flex-wrap: wrap; font-size: .9rem; color: var(--white-opacity);}
.icon-orange { color: var(--primary); }
.search-lang { display: flex; align-items: center; gap: 24px; }
.lang-switch { display: flex; gap: 8px; }
    .lang-switch a { color: var(--primary); text-decoration: none; }
    .lang-switch a.active { color: var(--white); text-decoration: none; }
    .lang-switch a:hover { color: var(--white-opacity); }
.lang-switch  a:not(:last-child)::after { content: ' /'; position: relative;  margin: 0px 0px 0 4px; color: var(--white); background: transparent;}
.header-row--second { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 24px; padding-top: 10px;}

.nav { display: flex; flex-wrap: wrap; gap: 0; justify-content: center; flex: 1; }
    .nav a { font-family: 'Oswald', sans-serif; font-size: 1.1rem; color: var(--white); text-decoration: none; padding: 0 15px; position: relative; text-transform: uppercase;}
        .nav a:not(:last-child)::after { content: '|'; position: relative; right: -15px; color: var(--primary); background: transparent; width: auto; height: auto; }
        .nav a:hover { color: var(--primary); }
        .nav > ul { display: flex; flex-wrap: wrap; gap: 0; list-style: none; margin: 0; padding: 0; }
        .nav > ul > li { position: relative; }

    .nav .podmenu { position: absolute; top: 42px; left: 0; background: var(--white); min-width: 240px; padding: 10px 0 0 0 0; z-index: 10; border: 1px solid var(--primary); opacity: 0; visibility: hidden; transition: 0.2s; }
    .nav > ul > li:hover .podmenu { opacity: 1; visibility: visible; }
        .nav .podmenu li { display: block; margin: 0; padding: 0; }
        .nav .podmenu a { font-family: 'Arial', sans-serif; font-size: 0.9rem; color: var(--second); padding: 8px 16px; display: block; white-space: nowrap; text-transform: none;}
        .header-scrolled .nav .podmenu a:hover,  .nav .podmenu a:hover { background: var(--primary); color: var(--white); }
        .nav .podmenu a::after { display: none; }

.burger { display: none; cursor: pointer; width: 30px; height: 20px; flex-direction: column; justify-content: space-between; }
    .burger span { display: block; height: 3px; background: var(--primary); transition: 0.2s; }
    .burger.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
    .burger.active span:nth-child(2) { opacity: 0; }
    .burger.active span:nth-child(3) { transform: rotate(-45deg) translate(7px, -7px); }

@media (max-width: 1400px) {
    .action-buttons {display: none !important;}

}

@media (max-width: 768px) {
    .grid-header { display: grid; grid-template-columns: auto 1fr auto; gap: 20px; align-items: center; }
    .burger { display: flex; }
    .header-row--first {border-bottom: none;padding-bottom: 0;}
    .logo-img { height: 35px; width: auto; display: block;}
    .action-buttons, .date-place { display: none !important; }
    .nav { position: fixed; top: 82px; left: -100%; width: 80%; /*height: 100%;*/ background: var(--second); transition: 0.3s; z-index: 100; padding: 20px 20px 40px; overflow-y: auto; }
        .nav.active { left: 0; }
        .nav ul { flex-direction: column; gap: 0; width: 100%; height: auto;}
        .nav li { border-bottom: 1px solid rgba(255,255,255,0.1); }
        .nav a { display: block; padding: 12px 0; font-size: 1rem; }
        .nav a:not(:last-child)::after { display: none; }
        .nav .podmenu { position: static; border: none; background: transparent; padding-left: 20px; display: none; }
        .nav li.open .podmenu { display: block; }
        .nav .podmenu a { color: var(--white); white-space: normal; }
        body.menu-open { overflow: hidden; }
        .header-row--second { flex-direction: column; align-items: flex-start; }
        .search-lang svg, .lang-switch .active {display: none;}  
        .grid-col-content {justify-content: center;    align-items: center;   padding-bottom: 0;   margin: 0;    display: flex;}
}

.action-buttons { display: flex; gap: 16px; }
.header .btn { padding: 5px 10px; font-size: .8rem; cursor: pointer; }
.header .btn-outline { background: transparent; border: 1px solid var(--primary); color: var(--primary); }
.header .btn-primary { background: var(--primary); border: none; color: var(--second); }
.btn-primary:hover {background: transparent; border: 1px solid var(--primary); color: var(--primary); }
.btn-outline:hover {background: var(--primary); color: var(--second);  }

section {width: 100%;}

.corner { position: relative; }
    .corner::before, .corner::after { content: ''; position: absolute; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; background-size: contain; pointer-events: none; opacity: 0.6; }
    .corner::before { top: 0; left: 0; }
    .corner::after { bottom: 0; right: 0; transform: scale(-1, -1); }

.mask { position: relative; }
    .mask::before { content: ''; position: absolute; bottom: -1px; right: -1px; width: 100%; height: 100%; background: var(--bg-light); background-repeat: repeat; background-size: 180px auto; mask: url('../img/mask.svg') right/contain no-repeat; -webkit-mask: url('../img/mask.svg') right/contain no-repeat; opacity: 1; pointer-events: none; z-index: 0; }

.footer { background: var(--bg-light) var(--bg-repeat);  color: var(--white);  padding: 20px 0 40px;  background-size: 200px auto; border-top: 2px solid #ccc;}
    .grid-footer { display: grid; grid-template-columns: auto 1fr auto; gap: 40px; align-items: start; }
    .footer .container {background-color: var(--white-opacity); padding: 20px 10px;}

.footer-col--center { display: flex; flex-direction: column; gap: 16px; }
.footer-nav { display: flex; flex-wrap: wrap; gap: 0;  justify-content: center; flex: 1;}
    .footer-nav a { font-family: 'Oswald', sans-serif; font-size: 1rem; color: var(--gray-opacity); text-decoration: none; padding: 0 12px; position: relative; }
        .footer-nav a:not(:last-child)::after { content: '|'; position: relative; right: -12px; color: var(--gray); background: transparent; width: auto; height: auto; }
        .footer-nav a:hover { color: var(--gray); }

.footer-consent { font-size: 0.75rem; color: var(--gray); text-align: center; border-top: 1px solid var(--gray-opacity);padding-top: 10px;}
    .footer-consent a { color: var(--gray-opacity); text-decoration: none; font-size: .8;}
    .footer-consent a:hover { color: var(--gray); text-decoration: underline;}
    .footer-consent .separator { color: var(--gray); margin: 0 8px; }

.footer-copyright { font-size: 0.95rem; color: var(--gray); text-align: center;}

.footer-col--contacts { display: flex; flex-direction: column; gap: 8px; font-size: 0.9rem; color: var(--text); }
.footer-address, .footer-phone { line-height: 1.4; }

.footer-socials { margin-top: 20px; display: flex; gap: 16px;   align-items: center;}
.social-link { color: var(--gray-opacity); font-size: 22px; transition: 0.2s; }
.social-link:hover { color: var(--gray); }
.footer-col--logo {display: flex; flex-direction: column;align-items: center;}
.footer-org img {margin: 20px auto 0 auto;display: block;}

@media (max-width: 1024px) { 
    .grid-footer { grid-template-columns: 1fr; gap: 0; text-align: center; } 
    .footer-nav { justify-content: center; } .footer-nav a { padding: 0 8px; display: none;} 
        .footer-nav a:not(:last-child)::after { right: -8px; } 
    .footer-consent { text-align: center; } 
    .footer-col--logo img {height: 50px;}
    .footer-col--contacts {margin: 20px auto;}
}

.videophone { position: relative;   height: 520px;   border-bottom: 4px solid var(--primary); color: var(--white); text-shadow:var(--text-shadow); overflow: hidden;}
    .videophone .label { position: relative;  max-width: 520px;  text-align: center;  padding: 0 40px 20px 40px;  backdrop-filter: blur(4px);}
    .videophone h1 {font-size: 3.75rem;text-shadow: var(--text-shadow); color: var(--white-opacity); padding-bottom: 10px;}
    .videophone h2 {font-size: 1.0rem; font-family: var(--font-arial-narrow); font-weight: normal;text-transform: uppercase; font-family: var(--font-arial-narrow); padding-bottom: 15px;}
    .videophone h3 {font-size: 1.125rem;  font-family: 'Oswald', 'Arial Narrow', sans-serif;font-weight: normal;text-transform: uppercase;border-bottom: 1px solid var(--white-opacity);padding-bottom: 10px;}
    .videophone .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: var(--gray-opacity); }
    .videophone .container { position: relative; z-index: 2;  height: 100%;  display: flex;   align-items: center;   justify-content: center;}
    .videophone .label .date_location {padding-top: 10px;}
        .videophone .label .date_location span {font-size: 1.125rem;text-transform: uppercase;font-family: var(--font-arial-narrow); padding: 0 20px;}
    .videophone .label .button {position: absolute;bottom: -22px; right: -40px;}
        .videophone .label .button a {font-size: 0.9rem; color: var(--white);font-family: 'Oswald', 'Arial Narrow', Helvetica, sans-serif;padding-left: 50px;text-transform: uppercase;}
        .videophone .label .button a:hover {text-decoration: none;} 
        .videophone .label .button a.visit {color: var(--primary);} 
        .videophone .label::before,  .videophone .label::after {content: ''; position: absolute;  width: 216px; height: 135px; background: url('../img/label-hero.svg') no-repeat; background-size: contain;}
        .videophone .label::before {  top: -15px; right: -40px; }
        .videophone .label::after { bottom: -20px; left: -40px; transform: scale(-1, -1); }
.bg-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
.videophone .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.3); z-index: 1; }
.videophone .container { position: relative; z-index: 2; }

            
@media (max-width: 768px) {
    .videophone .label { position: relative;  text-align: center;  padding: 0 20px;max-width: 350px; backdrop-filter: blur(2px);}
     .videophone .label .date_location {padding-top: 10px;}
        .videophone .label .date_location span {font-size: 0.85rem;font-family: var(--font-arial-narrow) !important; padding: 5px 10px;display: block;}       
    .videophone h1 {font-size: 3.0rem;}
    .videophone h2 {font-size: 0.7rem;}
    .videophone h3 {font-size: 1.0rem;}
        .videophone .label .date_location .button a {font-size: 0.9rem;text-transform: uppercase;font-family: var(--font-arial-narrow);padding-left: 10px;}
        .videophone .label::before, .videophone .label::after {display: none;}
    .videophone .label .button {all:unset; display: block;}
     .videophone .label .button a, .videophone .label .button a.visit {display: block;padding:5px 10px;margin:25px auto;text-decoration: none;border: 1px solid var(--primary);color: var(--white);width: 100%;background-color: var(--primary);}
    
} 
            
.stat { position: relative; padding: 40px 0 15px; background: transparent; }
    .stat-bg { position: absolute; top: 70px; left: 0; width: 100%; height: 85px; background: var(--bg-light); background-repeat: var(--bg-repeat); background-size: 180px auto; z-index: 0; }
    .stat .container { display: flex; justify-content: center; }
    .stat-grid { display: grid; grid-template-columns: repeat(4, auto); gap: 100px; text-align: center; }
        .stat-card { position: relative; padding: 20px 50px; background: var(--white);}
        .stat-card::before, .stat-card::after { content: ''; position: absolute; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; background-size: contain; }
            .stat-card::before { top: 0; left: 0;  }
            .stat-card::after {bottom: 0; right: 0; transform: scale(-1, -1); }
            .stat-number { font-family: var(--font-oswald); font-size: 3.75rem; font-weight: 700; color: var(--primary); line-height: 1.2; margin-bottom: 10px; text-wrap-mode: nowrap;}
            .stat-label { font-family: var(--font-arial-narrow); font-size: 0.9rem; text-transform: uppercase; color: var(--gray); letter-spacing: 1px; }

@media (max-width: 1400px) { 
        .stat-grid { grid-template-columns: repeat(2, 1fr); gap: 2em 5rem;}
        .stat-bg {height: 250px;}
    }  
@media (max-width: 768px) { .stat-bg {height: 487px;}}
@media (max-width: 640px) { .stat-grid { grid-template-columns: 1fr; gap: 30px; } .stat-number { font-size: 2.5rem; } }

.benefits { padding: 60px 0; background: var(--white); }
.col-left {margin-top: 40px;}
    .benefits-grid { display: grid; grid-template-columns: 40% 60%; gap:0}
        .benefits-left-title { font-family: var(--font-oswald); font-size: 3.0rem; color: var(--primary); margin-bottom: 2px;border-bottom: 2px solid var(--second); width: fit-content;}
        .benefits-left-title::first-letter {color: var(--second);}
        .benefits-left-subtitle { font-family: var(--font-oswald); font-size: 1.25rem; color: var(--second);margin-top: -4px; padding-top: 10px; font-weight: normal; margin-bottom: 20px; text-transform: uppercase; margin-left: 35px;border-top: 2px solid var(--second); width: fit-content;}
        .col-left p {font-size: 1.2rem;line-height: 1.5;padding: 10px 0;}

        .col-right { display: flex; flex-direction: column; gap: 2px; }
            .benefit-card { position: relative; padding: 35px; overflow: hidden; border-top: 4px solid var(--primary); }
            .benefit-card-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('../img/bg-benefit.jpg') center/cover no-repeat; z-index: 0; }
            .benefit-card-overlay { position: absolute; top: 0; left: 0; width: 65%; height: 100%; background: rgba(4,14,26,0.75); z-index: 1; }
                 .benefit-card.left .benefit-card-overlay {right: 35%;}
                 .benefit-card.right .benefit-card-overlay {left: 35%;}
            .benefit-card-content { position: relative; z-index: 2; color: var(--white); }
            .benefit-card-title { font-family: var(--font-oswald); font-size: 1.5rem; margin-bottom: 15px; text-transform: uppercase; font-weight: 500;}
            .benefit-card-text {  font-size: 1.0rem; line-height: 1.4; opacity: 0.9; max-width: 60%; }
            .benefit-card button {margin-top: 20px;background: transparent;font-family: var(--font-oswald);color: var(--primary);text-transform: uppercase;text-decoration: underline;border: 0;font-size: 1.125rem;cursor: pointer;}
                .benefit-card button:hover {color: var(--white);text-decoration: none;}
            
            .benefit-card.left .benefit-card-content { text-align: left; }
            .benefit-card.right .benefit-card-content { text-align: right; }
            .benefit-card.right .benefit-card-text { margin-left: auto; }
            
@media (min-width: 1561px) {.col-left {padding-right: 60px;}}
@media (max-width: 1024px) { .benefits-grid { grid-template-columns: 1fr; gap: 60px; }  } 
@media (max-width: 768px) { 
    .benefit-card-text { max-width: 100%; } 
    .benefit-card--right 
    .benefit-card-text { margin-left: 0; } 
     .benefit-card.left .benefit-card-overlay {right: 0;}
       .benefit-card.right .benefit-card-overlay {left: 0;}
       .benefit-card.right .benefit-card-content {text-align: left;}
       .benefit-card-overlay {width: 100%;} 
}


.hotlinks { padding: 60px 0; background: var(--white); position: relative;}
    .bg-hotlinks { position: absolute; top: 150px; left: 0; width: 100%; height: 400px; background: #e6e6e6;} 
    .hotlinks-grid { display: flex; justify-content: center; gap: 100px; align-items: center; }
        .hotlinks-col { display: flex; flex-direction: column; gap: 50px; width: 100%;}
        .hotlinks-col-center { display: flex; align-items: center; justify-content: center; }
        .hotlink-card {position: relative; width: stretch;; height: 225px; background: var(--bg-card-small); padding: 35px; text-align: left; display: flex; flex-direction: column; justify-content: top; transition: all 0.3s ease; cursor: pointer;}         
         .hotlink-card:hover { background: var(--bg-card-small-hover);} 
          .hotlink-card::before { content: ''; position: absolute; top: 1px; left: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat;     filter: grayscale(100%) opacity(0.5);}
          .hotlink-card::after { content: ''; position: absolute; bottom: 1px; right: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; background-size: contain; transform: scale(-1, -1);   filter: grayscale(100%) opacity(0.5);}
          .hotlink-card:hover::before { content: ''; position: absolute; top: 1px; left: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat;      filter: brightness(0) invert(1); }
          .hotlink-card:hover::after { content: ''; position: absolute; bottom: 1px; right: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; background-size: contain; transform: scale(-1, -1);    filter: brightness(0) invert(1); }

        .hotlink-card--center { width: 535px; height: 325px; background: var(--bg-dark); padding: 60px 33px;}      
            .hotlink-card--center .hotlink-title, .hotlink-title:hover {color: var(--white);}
             .hotlink-card--center::before { content: ''; position: absolute; top: 1px; left: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat;  filter: brightness(0) invert(1); }
            .hotlink-card--center::after { content: ''; position: absolute; bottom: 1px; right: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; transform: scale(-1, -1);  filter: brightness(0) invert(1); }
        .hotlink-title { font-family: var(--font-oswald); font-size: 1.5rem; margin-bottom: 15px; text-transform: uppercase; color: var(--gray);font-weight: 500;}
           .hotlink-card:hover  .hotlink-title {color: var(--white);}
        .hotlink-btn {z-index: 1500; display: inline-block; background: #858586;color: var(--white); font-family: var(--font-arial-narrow);  font-size: 1rem;  text-transform: uppercase;  text-decoration: none;  padding: 20px 30px;  align-self: flex-start; margin-top: auto; transition: background 0.3s ease;}
            .hotlink-card:hover  .hotlink-btn, .hotlink-card--center .hotlink-btn {background: var(--primary);z-index: 1000;}

            .hotlink-card .hotlink-card-bg {width: 208px; height: 192px; position: absolute; bottom: 0px; right: 0px; filter: grayscale(100%) opacity(0.3);background-repeat: no-repeat;} 
            .hotlink-card:hover .hotlink-card-bg {filter: grayscale(0%) opacity(1);background-repeat: no-repeat;} 
                .hotlink-card.visit .hotlink-card-bg {background-image: url('../img/bg-visit.webp');}
                .hotlink-card.themie .hotlink-card-bg {background-image: url('../img/bg-themie.webp');right: -2px;}
                .hotlink-card.catalog .hotlink-card-bg, .hotlink-card.stat .hotlink-card-bg {background-image: url('../img/bg-catalog.webp');}
            .hotlink-card--center.participant .hotlink-card-bg {background: url('../img/bg-participant.webp') no-repeat; position: absolute; bottom: 0; right: 0; width: 305px;height: 274px; filter: grayscale(0%) opacity(1);}

@media (min-width: 1561px) {
        .hotlinks-col { display: flex; flex-direction: column; gap: 80px; }
        .hotlinks-col-center { display: flex; align-items: center; justify-content: center; }
        .hotlink-card { width: 535px; height: 325px; background: var(--bg-dark); padding: 60px 33px;position: relative; width: 422px; height: 247px; background: var(--bg-card-small); padding: 35px; text-align: left; display: flex; flex-direction: column; justify-content: top; transition: all 0.3s ease; cursor: pointer;}      
          .hotlink-card--center .hotlink-title, .hotlink-title:hover {color: var(--white);}
             .hotlink-card--center::before { content: ''; position: absolute; top: 1px; left: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat;  filter: brightness(0) invert(1); }
            .hotlink-card--center::after { content: ''; position: absolute; bottom: 1px; right: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; transform: scale(-1, -1);  filter: brightness(0) invert(1); }
        .hotlink-title { font-family: var(--font-oswald); font-size: 1.5rem; margin-bottom: 15px; text-transform: uppercase; color: var(--gray);font-weight: 500;}   
           .hotlink-card--center { width: 535px; height: 325px; background: var(--bg-dark); padding: 60px 33px;}      
            .hotlink-card--center .hotlink-title, .hotlink-title:hover {color: var(--white);}
             .hotlink-card--center::before { content: ''; position: absolute; top: 1px; left: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat;  filter: brightness(0) invert(1); }
            .hotlink-card--center::after { content: ''; position: absolute; bottom: 1px; right: 1px; width: 150px; height: 81px; background: url('../img/border-card.svg') no-repeat; transform: scale(-1, -1);  filter: brightness(0) invert(1); }
        .hotlink-title { font-family: var(--font-oswald); font-size: 1.5rem; margin-bottom: 15px; text-transform: uppercase; color: var(--gray);font-weight: 500;}
           .hotlink-card:hover  .hotlink-title {color: var(--white);}
        .hotlink-btn {z-index: 1500; display: inline-block; background: #858586;color: var(--white); font-family: var(--font-arial-narrow);  font-size: 1rem;  text-transform: uppercase;  text-decoration: none;  padding: 20px 30px;  align-self: flex-start; margin-top: auto; transition: background 0.3s ease;}
            .hotlink-card:hover  .hotlink-btn, .hotlink-card--center .hotlink-btn {background: var(--primary);z-index: 1000;}

            .hotlink-card .hotlink-card-bg {width: 208px; height: 192px; position: absolute; bottom: 0px; right: 0px; filter: grayscale(100%) opacity(0.3);background-repeat: no-repeat;} 
            .hotlink-card:hover .hotlink-card-bg {filter: grayscale(0%) opacity(1);background-repeat: no-repeat;} 
                .hotlink-card.visit .hotlink-card-bg {background-image: url('../img/bg-visit.webp');}
                .hotlink-card.themie .hotlink-card-bg {background-image: url('../img/bg-themie.webp');right: -2px;}
                .hotlink-card.catalog .hotlink-card-bg, .hotlink-card.stat .hotlink-card-bg {background-image: url('../img/bg-catalog.webp');}
            .hotlink-card--center.participant .hotlink-card-bg {background: url('../img/bg-participant.webp') no-repeat; position: absolute; bottom: 0; right: 0; width: 305px;height: 274px; filter: grayscale(0%) opacity(1);}

}

 @media (min-width: 768px) and (max-width: 1560px)  {
     .hotlinks-grid { gap: 2.05rem; flex-wrap: wrap; height:auto;} 
     .hotlinks-col { align-items: center; } 
        .hotlinks-col {flex-direction: row;}
        .bg-hotlinks {display: none;}
        .hotlink-card, .hotlink-card--center {flex-direction: column;display: flex;}  
        
              
    }   

@media (max-width: 768px) { 
    .hotlinks {background: #e6e6e6;}    
       .hotlinks-grid { flex-direction: column; gap: 40px;}
    .hotlinks-col, .hotlinks-col-center { width: 100%; align-items: center;gap: 40px;flex-direction: column ;}
         .bg-hotlinks {display: none;}
         .hotlink-card--center.participant .hotlink-card-bg { width: 245px; height: 180px;}
         .hotlink-card--center, .hotlink-card  { height: 220px;  background: var(--bg-dark); padding: 25px 33px; width: 100%;flex-direction: column;}
          .hotlink-card .hotlink-card-bg {filter: grayscale(0%) opacity(.7);background-repeat: no-repeat;} 
          .hotlink-card .hotlink-btn, .hotlink-card--center .hotlink-btn {background: var(--primary);z-index: 1000; width: 100%; padding: 5px 0;text-align: center;}
          .hotlink-card  .hotlink-title {color: var(--white);}
            .hotlink-card::before,  .hotlink-card::after {   filter: brightness(0) invert(1);}
    }

section.news {padding: 40px 0;}
    section.news h2 {color: var(--second);text-transform: uppercase;font-size: 2.25rem;border-bottom: 2px solid var(--primary);width: fit-content;}
        section.news h2::first-letter {color: var(--primary);}
.news-grid {display: grid; gap: 3.2em; align-items: start; grid-template-columns: 1fr 422px; padding: 40px 0;background: var(--white);}

.cards-news {display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
    .card-news { background: #f7f7f7; padding: 20px 15px; transition: transform 0.2s ease, box-shadow 0.2s ease, border 0.2s ease; box-shadow: 0 2px 5px rgba(0,0,0,0.1); border: 1px solid transparent; }
        .card-news:hover { transform: translateY(-5px); box-shadow: 0 8px 20px rgba(0,0,0,0.15); border: 1px solid var(--primary); }
        .card-news .news-preview  {margin: 10px -15px;}
            .card-news .news-preview img {width: 100%;}
    .card-news .news-link {color: var(--second);font-size: 1.0rem;text-decoration: none;font-family: var(--font-arial-narrow);}
    .card-news:hover .news-link {color: var(--primary);}
.news-date {font-size: 1.0rem;  font-family: var(--font-arial-narrow); color: var(--primary);  display: flex; align-items: center;  gap: 10px; }


.news-subscribe {border-top: 4px solid var(--primary);padding: 15px 35px 30px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); border-left:  #f7f7f7; border-right:  #f7f7f7;border-bottom:  #f7f7f7;}
    .news-subscribe h3 {font-weight: 500;color: var(--second);font-size: 1.5rem; text-align: center;margin-top: -5px;}
    .subscribe-form { display: flex; flex-direction: column; gap: 20px; padding: 20px 25px;}
        .subscribe-form input[type="text"],
        .subscribe-form input[type="email"] { border: 1px solid var(--second); color: var(--second); padding: 10px 15px; width: 100%; box-sizing: border-box; }
        .subscribe-form button { width: 100%; box-sizing: border-box;  background: var(--primary);color: var(--white); font-family: var(--font-arial-narrow);  font-size: 1rem;  text-transform: uppercase;  text-decoration: none;  padding: 10px 0px;border: 0;}
        .subscribe-form label { align-items: baseline; gap: 8px; font-size: 0.8rem; color: var(--gray);}
            .subscribe-form label a {color: var(--primary);flex-wrap: wrap;}
            .subscribe-form label a:hover {text-decoration: underline;} 
        .subscribe-form label input { width: auto; margin: 0; }
        .subscribe-form input::-webkit-input-placeholder { color: var(--second); opacity: 1; }
        .subscribe-form input::-moz-placeholder { color: var(--second); opacity: 1; }
        .subscribe-form input:-ms-input-placeholder { color: var(--secondy); opacity: 1; }
        .subscribe-form input::placeholder { color: var(--second); opacity: 1; }

@media (min-width: 1561px) {.news-grid {gap: 100px;}}        
@media (max-width: 1024px) and (min-width: 786px){
    .news-grid  {grid-template-columns: repeat(2, 1fr);}
    .cards-news {display: grid; grid-template-columns: repeat(1, 1fr); gap: 30px; }
    .subscribe-form {padding: 20px 0;}
    .card-news .news-preview img {display: none;}
}

@media (max-width: 787px) {
    .news-grid  {grid-template-columns: repeat(1, 1fr);}
    .cards-news {display: grid; grid-template-columns: repeat(1, 1fr); gap: 30px; }
    .subscribe-form {padding: 20px 0;}
}

.banners {padding: 40px 0; position: relative;}
.bg-banners { position: absolute; top: 100px; left: 0; width: 100%; height: 390px; background: var(--bg-light); background-size: 180px;z-index: 1;} 
    .banners .container img {margin: 0 auto;display: block;width: 100%;max-width: 1280px;z-index: 1000;position: relative;}
    .banners .container p {text-align: center;padding-top: 10px;}
@media (max-width: 1024px) {
.bg-banners {display: none;} 
}

.partners { padding: 60px 0; background: var(--bg-dark); background-size: 200px; }
    .partners h2 { color: var(--white); border-bottom: 2px solid var(--primary); text-transform: uppercase; font-size: 2.15rem; /*max-width: 185px;*/ font-weight: 500; /*margin-bottom: 40px;*/}
   .partners-top { display: grid;  grid-template-columns: 30% 70%; margin-bottom: 60px; }
    .partners-top-left {width: fit-content;margin-right: auto;}
    .partners-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
    .partner-card { display: flex; background: var(--white); border: 1px solid var(--white); width: fit-content; padding: 20px; text-align: center; position: relative; outline: 1px solid var(--white);  outline-offset: 2px; align-items: center; }
        .partner-card img { max-width: 100%; height: auto; display: block; margin: auto;  }
    .partner-label { background: var(--second); color: var(--white); display: inline-block; padding: 5px 15px; position: absolute; bottom: -15px; left: 50%; transform: translateX(-50%); white-space: nowrap; font-size: 0.8rem;font-family: var(--font-arial-narrow); }

    .container.slider  {max-width: 1900px;margin-top: 60px;}   
    .partners-slider {display: flex; align-items: stretch;position: relative;padding: 0 90px; }
         .slider-track { display: flex; gap: 43px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
        .slider-track::-webkit-scrollbar { display: none; }
          .slider-card { flex: 0 0 auto; scroll-snap-align: start; background: var(--white); padding: 5px 20px; width: 208px; display: flex; align-items: center; justify-content: center; }
         .slider-card:hover { border: 1px solid var(--primary) }
            .slider-card img { max-width: 100%; height: auto; display: block; }
        .slider-prev, .slider-next {width: 60px;height: 60px; position: absolute; top: 50%; transform: translateY(-50%); background-image: url('../img/arrow.svg'); background-repeat:no-repeat; cursor:pointer; z-index: 2; display: block;}
        .slider-prev { left: 0px; transform: translateY(-50%) scaleX(-1);}
        .slider-next { right: 0px; }

@media (min-width: 1561px) {
.partners h2 { color: var(--white); border-bottom: 2px solid var(--primary); text-transform: uppercase; font-size: 2.25rem; width: fit-content; font-weight: 500;max-width: auto !important;}
    .partners-top { display: grid;  grid-template-columns: 40% 60%; margin-bottom: 120px; }
        .partners-top-left {width: fit-content;margin-right: auto;}
    .partners-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 120px; }
    .partner-card { display: flex; background: var(--white); border: 1px solid var(--white); padding: 20px; text-align: center; position: relative; outline: 1px solid var(--white);  outline-offset: 2px; align-items: center; }
        .partner-card img { max-width: 100%; height: auto; display: block; margin: auto;  }
    .partner-label { background: var(--second); color: var(--white); display: inline-block; padding: 5px 15px; position: absolute; bottom: -15px; left: 50%; transform: translateX(-50%); white-space: nowrap; font-size: 0.8rem;font-family: var(--font-arial-narrow); }

    .container.slider  {max-width: 1900px;}   
    .partners-slider {display: flex; align-items: stretch;position: relative;padding: 0 120px; }
         .slider-track { display: flex; gap: 43px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
        .slider-track::-webkit-scrollbar { display: none; }
          .slider-card { flex: 0 0 auto; scroll-snap-align: start; background: var(--white); padding: 5px 20px; width: 200px; display: flex; align-items: center; justify-content: center; }
         .slider-card:hover { border: 1px solid var(--primary) }
            .slider-card img { max-width: 100%; height: auto; display: block; }
        .slider-prev, .slider-next {width: 60px;height: 60px; position: absolute; top: 50%; transform: translateY(-50%); background-image: url('../img/arrow.svg'); background-repeat:no-repeat; cursor:pointer; z-index: 2; display: block;}
        .slider-prev { left: 50px; transform: translateY(-50%) scaleX(-1);}
        .slider-next { right: 50px; }
}

@media (max-width: 768px) {
    .partners-top, .partners-cards {grid-template-columns: repeat(1, 1fr);} 
        .partners-top-left {width: auto;text-align: center; margin: 0 auto;}
    .partners-top, .slider-track {gap: 0;}
    .partners-cards {gap: 40px;}
    .partners h2 {font-size: 1.9rem;margin: 0 auto 40px auto;}
    .partner-card  {width: 280px;   margin: 0 auto;   min-height: 125px; display: flex; align-items: center; justify-content: center;}
    .slider-card  {width: 250px;   margin: 0 auto;   min-height: 85px; display: flex; align-items: center; justify-content: center;}
     .partners-slider {padding: 0 60px;}
    .slider-prev, .slider-next {width: 30px;height: 30px; background-size: contain;} 
     .slider-prev { left: 0px; transform: translateY(-50%) scaleX(-1);}
        .slider-next { right: 0px; }
}


/*update 28.05*/
    .cards-news.new a { display: block; text-decoration: none; color: inherit;}
    .cards-news.new .news-grid { justify-content: space-between;}
        .news-card.corner { position: relative; background: var(--white); overflow: hidden; transition: 0.2s;     box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);  border-left: #f7f7f7; border-right: #f7f7f7;  border-bottom: #f7f7f7;}
        .news-card.corner:hover { transform: translateY(-5px); box-shadow: 0 10px 20px rgba(0,0,0,0.05); }
        .news-card.corner .news-img { position: relative; width: 100%; height: 240px; background-size: cover; background-position: center; }
        .news-card.corner .news-img::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.4); transition: opacity 0.3s; pointer-events: none; }
        .news-card.corner:hover .news-img::after { opacity: 0; }
        .news-card.corner .news-date-badge { position: absolute; top: 10px; right: 10px; background: var(--primary); color: var(--white); padding: 5px 12px; font-size: 0.8rem; font-weight: 600; z-index: 2; border-radius: 0; }
        .news-card.corner .news-title-overlay { position: absolute; bottom: 20px; left: 20px; right: 20px; color: var(--white); font-family: var(--font-oswald); font-size: 1.2rem; line-height: 1.3; z-index: 2; text-shadow: 1px 1px 2px rgba(0,0,0,0.5); }
        .news-card.corner .news-content { padding: 25px 25px 10px 25px;min-height: 40px;}    
        .news-card.corner .news-excerpt { font-size: 0.9rem; color: var(--gray); margin-bottom: 15px; line-height: 1.4;  text-decoration: none;    display: -webkit-box;  -webkit-line-clamp: 3;  -webkit-box-orient: vertical;    overflow: hidden;  word-break: break-word;}
        .news-card.corner .news-link { color: var(--primary); text-decoration: none; font-weight: 600; border-bottom: 1px solid transparent; }
        .news-card.corner:hover .news-excerpt { color: var(--primary); }
        .news-card.corner::before { top: 10px !important; left: 10px;  filter: brightness(0) invert(1); z-index: 100;}
        .news-card.corner::after { bottom: 10px; right: 10px; }
        .cards-news.new button.btn {border: 0; background: var(--primary);font-family: var(--font-arial-narrow);font-size: 1rem;padding: 10px 40px;text-transform: uppercase;color: var(--white);}
