@font-face{ font-family:"NemesiaDisplay"; src:url("../fonts/BebasNeue-Regular.ttf") format("truetype"); font-style:normal; font-weight:400; font-display:swap; }
@font-face{ font-family:"NemesiaBody"; src:url("../fonts/Montserrat/Montserrat-Medium.ttf") format("truetype"); font-style:normal; font-weight:500; font-display:swap; }
:root{ --nm-bg:#101010; --nm-panel:#181818; --nm-text:#f6f3ed; --nm-muted:#bdbab3; --nm-gold:#fca311; --nm-line:rgba(255,255,255,.14); --nm-gutter:clamp(24px,5.5vw,112px); --nm-display:"NemesiaDisplay",sans-serif; --nm-body:"NemesiaBody",sans-serif; }
body.nm-menu-open{ overflow:hidden; }
.header{ width:calc(100% - 48px); left:24px; top:20px; height:76px; display:flex; align-items:center; justify-content:space-between; padding:0 24px; border:1px solid transparent; border-radius:16px; z-index:110; transition:background .25s,border-color .25s,backdrop-filter .25s; }
.header.nm-scrolled,.nm-menu-open .header{ background:rgba(16,16,16,.9); border-color:var(--nm-line); backdrop-filter:blur(18px); }
.header-logo{ width:154px; margin:0; line-height:0; }
.header-logo a{ display:block; }
.header-logo img{ width:100%; height:auto; display:block; }
.header-home{ position:static; width:46px; height:46px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.3); border-radius:50%; background:rgba(0,0,0,.18); transition:background .2s,transform .2s; }
.header-home:hover{ background:var(--nm-gold); }
.header-home:hover svg{ fill:#141414; }
.header-home svg{ width:23px; height:23px; fill:var(--nm-text); }
.navigation-drawer{ right:0; width:min(640px,100%); height:100dvh; padding:130px clamp(32px,6vw,90px) 60px; align-items:center; background:#191919; z-index:100; transform:translateX(105%); transition:transform .4s cubic-bezier(.22,.61,.36,1); visibility:hidden; }
.navigation-drawer.active{ right:0; transform:translateX(0); visibility:visible; }
.navigation-drawer-navigation{ width:100%; max-height:calc(100dvh - 190px); overflow:auto; }
.navigation-drawer-navigation-list{ gap:24px; padding:0; align-items:flex-start; }
.navigation-drawer-navigation-list .navigation-drawer-navigation-list-item,.navigation-drawer-navigation-list .navigation-item--has-children{ text-align:left; }
.navigation-drawer-navigation-list a,.navigation-drawer-navigation-list button{ color:var(--nm-text); font-size:clamp(32px,4vw,58px); line-height:1; padding:0; border:0; background:none; }
.navigation-drawer-navigation-list a:hover,.navigation-drawer-navigation-list button:hover{ color:var(--nm-gold); }
.navigation-drawer .navigation-submenu .navigation-drawer-navigation-list-item a{ font-family:var(--nm-body); font-size:17px; line-height:1.5; }
.navigation-submenu{ list-style:none; }
.navigation-submenu li{ margin:14px 0; }
.dark-overlay{ z-index:90; backdrop-filter:blur(6px); }
footer.footer{ display:block; width:100%; padding:64px var(--nm-gutter) 26px; background:#080808; border-top:1px solid var(--nm-line); }
.footer-row{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px; }
.footer-column{ width:auto; gap:10px; }
footer.footer :is(h2,h3){ font-family:var(--nm-body)!important; font-size:12px; line-height:1.4; text-transform:uppercase; letter-spacing:.11em; margin:0 0 18px; color:#fff; }
footer.footer a,footer.footer p{ font-size:12px; line-height:1.8; color:#b6b3ac; text-decoration:none; }
footer.footer a:hover{ color:var(--nm-gold); }
.contact-socials-item svg{ margin-right:8px; width:13px; height:13px; }
.footer>.footer-row:last-child{ display:block; margin-top:48px; border-top:1px solid var(--nm-line); padding-top:22px; }
.footer-credentials{ justify-content:flex-start; margin:0; }
.footer-credentials p{ font-size:10px!important; color:#8b8882!important; }
@media(max-width:1100px){.footer-row{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px; }}
@media(max-width:767px){:root{ --nm-gutter:24px; }
.header{ width:calc(100% - 24px); left:12px; top:12px; height:66px; border-radius:12px; padding:0 14px; }
.header-logo{ width:124px; }
.header-home{ width:40px; height:40px; }
footer.footer{ padding:48px 24px 24px; }
.footer-row{ gap:36px 24px; }
footer.footer :is(h2,h3){ font-size:10px; letter-spacing:.06em; margin-bottom:12px; }
footer.footer a,footer.footer p{ font-size:11px; overflow-wrap:anywhere; }
.footer-column{ gap:8px; }
.footer>.footer-row:last-child{ margin-top:32px; }
.navigation-drawer{ padding-top:110px; }
.navigation-drawer-navigation-list a,.navigation-drawer-navigation-list button{ font-size:42px; }
.navigation-drawer .navigation-submenu .navigation-drawer-navigation-list-item a{ font-size:16px; }}
@media(max-width:360px){.footer-row{ grid-template-columns:1fr; }}
.header,.header.nm-scrolled,.nm-menu-open .header{ background:transparent; border-color:transparent; backdrop-filter:none; pointer-events:none; }
.header-logo,.header-home{ pointer-events:auto; }
.header-logo{ filter:drop-shadow(0 1px 1px #000) drop-shadow(0 0 4px #0008); }
.header-home{ background:rgba(15,15,15,.58); border-color:rgba(255,255,255,.45); backdrop-filter:blur(6px); }
.navigation-drawer-navigation{ scrollbar-width:none; -ms-overflow-style:none; }
.navigation-drawer-navigation::-webkit-scrollbar{ display:none; }
footer.footer{ padding:72px var(--nm-gutter) 34px; border-top:2px solid var(--nm-gold); background:#090909; }
.footer-row{ gap:40px; }
footer.footer :is(h2,h3){ font-family:var(--nm-display)!important; font-size:30px; color:var(--nm-gold)!important; text-transform:none; letter-spacing:.02em; margin-bottom:24px; }
footer.footer a{ font-size:15px; color:var(--nm-gold); line-height:1.8; }
footer.footer p{ font-size:15px; color:#e2ded5; line-height:1.8; }
.footer-column{ gap:12px; }
.contact-socials-item svg{ width:17px; height:17px; margin-right:10px; }
.footer-column .contact-socials-item{ display:flex; align-items:center; gap:10px; }
.footer-column .contact-socials-item svg{ flex:none; margin:0; }
.footer-credentials p{ font-size:12px!important; color:#b9b4a9!important; }
@media(max-width:767px){footer.footer{ padding:54px 24px 30px; }
footer.footer :is(h2,h3){ font-size:27px; margin-bottom:18px; }
footer.footer a,footer.footer p{ font-size:14px; }
.footer-row{ gap:38px 26px; }
.footer-column{ gap:10px; }
.footer-credentials p{ font-size:11px!important; }}
footer.footer{ border-top:1px solid var(--nm-line); }

.header,.header *,.navigation-drawer,.navigation-drawer *,footer.footer,footer.footer * { box-sizing:border-box; }
footer.footer { font-family:var(--nm-body); }
footer.footer p { text-align:left; font-weight:500; }
.header a:focus-visible,.header [role=button]:focus-visible,.navigation-drawer a:focus-visible,.navigation-drawer button:focus-visible { outline:2px solid var(--nm-gold); outline-offset:5px; }
footer.footer :is(h2,h3) { font-weight:500; }
