/* TGS design system — core: tokens, base, buttons, header, footer.
   Namespaced (--tg-*, .sh-*, .sf-*, .tg-*) so legacy stylesheets cannot collide. */
:root{
  --tg-ink:#07131f;--tg-navy:#0a1b2e;--tg-navy-2:#102a45;--tg-line:#1f3a58;
  --tg-blue:#1c8cf0;--tg-blue-2:#5cb4ff;--tg-blue-d:#0b64b8;
  --tg-red:#e5373a;--tg-red-d:#c42a2d;
  --tg-paper:#f3f6fa;--tg-card:#fff;--tg-text:#0f2237;--tg-muted:#5a6f84;--tg-rule:#dde6ef;
  --tg-font:"Segoe UI Variable Display","Segoe UI",Inter,Roboto,"Helvetica Neue",Arial,system-ui,sans-serif;
  --tg-wrap:clamp(1200px,56vw + 560px,1760px);--tg-gut:clamp(16px,4vw,48px);
  --tg-r:14px;--tg-ease:cubic-bezier(.2,.7,.2,1);
}
.tg-wrap{width:min(var(--tg-wrap),100% - 2*var(--tg-gut));margin-inline:auto}
.sh a,.sh-top a,.sf a,.tg-btn{text-decoration:none}
.tg-skip{position:absolute;left:12px;top:-60px;z-index:100;background:#fff;color:var(--tg-ink);padding:10px 16px;border-radius:8px;font-weight:700}
.tg-skip:focus{top:12px}
.sh a:focus-visible,.sh-top a:focus-visible,.sf a:focus-visible,.sh button:focus-visible,.hp a:focus-visible{outline:3px solid var(--tg-blue-2);outline-offset:3px;border-radius:6px}

/* buttons */
.tg-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:54px;padding:0 28px;border-radius:10px;font:700 15px/1 var(--tg-font);letter-spacing:.01em;color:#fff;border:1px solid transparent;cursor:pointer;transition:background .25s var(--tg-ease),transform .25s var(--tg-ease),border-color .25s}
.tg-btn:hover{transform:translateY(-2px)}
.tg-btn i{font-style:normal;transition:transform .25s var(--tg-ease)}.tg-btn:hover i{transform:translateX(4px)}
.tg-btn--blue{background:var(--tg-blue);box-shadow:0 12px 30px -10px rgba(28,140,240,.7)}.tg-btn--blue:hover{background:#3a9ff5}
.tg-btn--ghost{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.35);backdrop-filter:blur(6px)}.tg-btn--ghost:hover{background:rgba(255,255,255,.16);border-color:#fff}

/* utility bar */
.sh-top{background:var(--tg-ink);color:#b9cade;font:500 13px/1 var(--tg-font)}
.sh-top .tg-wrap{display:flex;justify-content:space-between;align-items:center;min-height:40px;gap:20px}
.sh-top a{color:inherit;padding:10px 0;transition:color .2s}.sh-top a:hover{color:#fff}
.sh-top-l,.sh-top-r{display:flex;align-items:center;gap:26px}
.sh-top-l span{color:#7f95ac}
.sh-top .sh-ads{color:#fff;font-weight:700}.sh-top .sh-ads:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--tg-red);margin-right:9px;box-shadow:0 0 0 4px rgba(229,55,58,.25)}

/* header */
.sh{position:sticky;top:0;z-index:60;background:rgba(10,27,46,.94);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid var(--tg-line);box-shadow:none;font-family:var(--tg-font)}
.sh .tg-wrap{display:flex;align-items:center;gap:32px;height:92px}
.sh-brand{display:flex;align-items:center;gap:16px;color:#fff;flex:none}
.sh-brand img{width:60px;height:60px;display:block;object-fit:contain}
.sh-brand strong{display:block;font-size:clamp(23px,1.3vw,28px);line-height:1.1;letter-spacing:-.02em;font-weight:800;color:#fff}
.sh-brand small{display:block;margin-top:5px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8fb2d4;font-weight:600}
.sh-nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.sh-nav a{position:relative;padding:12px 14px;font-size:15px;font-weight:600;color:#cfdcea;border-radius:8px;transition:color .2s,background .2s;white-space:nowrap}
.sh-nav a:hover{color:#fff;background:rgba(255,255,255,.07)}
.sh-nav a.active{color:#fff}
.sh-nav a.active:after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:3px;border-radius:3px;background:var(--tg-blue)}
.sh-sos{flex:none;display:flex;align-items:center;gap:12px;padding:10px 20px 10px 14px;border-radius:12px;background:var(--tg-red);color:#fff;transition:background .2s,transform .25s var(--tg-ease);box-shadow:0 10px 28px -12px rgba(229,55,58,.9)}
.sh-sos:hover{background:var(--tg-red-d);transform:translateY(-1px)}
.sh-sos svg{width:26px;height:26px;flex:none}
.sh-sos span{display:block;font-size:12px;font-weight:600;opacity:.92;line-height:1.1}
.sh-sos b{display:block;font-size:20px;font-weight:800;letter-spacing:.01em;line-height:1.15}
.sh-burger{display:none;margin-left:auto;width:52px;height:52px;border-radius:12px;border:1px solid var(--tg-line);background:rgba(255,255,255,.05);cursor:pointer;position:relative}
.sh-burger i,.sh-burger i:before,.sh-burger i:after{position:absolute;left:14px;width:22px;height:2px;background:#fff;border-radius:2px;transition:transform .25s var(--tg-ease),opacity .2s}
.sh-burger i{top:24px}.sh-burger i:before,.sh-burger i:after{content:"";left:0}.sh-burger i:before{top:-7px}.sh-burger i:after{top:7px}
.sh-burger[aria-expanded=true] i{background:transparent}
.sh-burger[aria-expanded=true] i:before{transform:translateY(7px) rotate(45deg)}.sh-burger[aria-expanded=true] i:after{transform:translateY(-7px) rotate(-45deg)}
.sh-menu{display:none;border-top:1px solid var(--tg-line);background:var(--tg-navy)}
.sh-menu.open{display:block}
.sh .sh-menu .tg-wrap{display:block;height:auto;padding-block:10px 22px}
.sh-menu a{display:flex;justify-content:space-between;align-items:center;padding:17px 4px;font-size:18px;font-weight:600;color:#e6eef7;border-bottom:1px solid var(--tg-line)}
.sh-menu a:after{content:"→";color:var(--tg-blue-2)}
.sh-menu a.sh-menu-sos{margin-top:16px;border:0;border-radius:12px;background:var(--tg-red);color:#fff;padding:18px;font-weight:800;justify-content:center;gap:10px}
.sh-menu a.sh-menu-sos:after{content:none}
@media(max-width:1240px){.sh-nav a{padding:12px 10px;font-size:14.5px}.sh .tg-wrap{gap:20px}}
@media(max-width:1120px){.sh-nav,.sh-sos{display:none}.sh-burger{display:block}.sh .tg-wrap{height:78px}.sh-brand img{width:52px;height:52px}.sh-brand strong{font-size:21px}}
@media(max-width:700px){.sh-top-l{display:none}.sh-top .tg-wrap{justify-content:space-between}.sh-brand small{display:none}.sh-brand strong{font-size:19px}.sh-brand img{width:46px;height:46px}.sh .tg-wrap{height:70px}}

/* footer */
.sf{background:var(--tg-ink);color:#a9bccf;font-family:var(--tg-font);margin-top:0;border-top:1px solid var(--tg-line)}
.sf-main{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:48px;padding-block:72px 56px}
.sf-brand{display:flex;align-items:center;gap:14px;color:#fff;margin-bottom:20px}
.sf-brand img{width:52px;height:52px}.sf-brand strong{font-size:21px;font-weight:800;letter-spacing:-.01em}
.sf p{margin:0;max-width:340px;line-height:1.65;font-size:15px}
.sf h4{margin:0 0 20px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:#6f88a3;font-weight:700}
.sf a{display:block;padding:7px 0;color:#d4e0ec;font-size:15.5px;transition:color .2s,transform .2s}
.sf a:hover{color:#fff;transform:translateX(3px)}
.sf-sos{margin-top:6px;color:#fff!important;font-weight:800;font-size:19px!important}
.sf-sos small{display:block;font-size:12.5px;font-weight:600;color:#ff8a8c;letter-spacing:.04em}
.sf-bar{border-top:1px solid var(--tg-line)}
.sf-bar .tg-wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;min-height:68px;font-size:14px;padding-block:14px}
.sf a.devBadge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--tg-line);border-radius:8px;font-size:12px;letter-spacing:.1em;color:#a9bccf;margin:0;transition:border-color .2s,color .2s}
.sf a.devBadge:hover{border-color:var(--tg-blue);color:#fff;transform:none}.sf a.devBadge strong{color:#fff}
@media(max-width:980px){.sf-main{grid-template-columns:1fr 1fr;gap:40px;padding-block:56px 40px}}
@media(max-width:700px){.sf-main{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}

@media(min-width:1800px){.sh-nav a{font-size:17px;padding:14px 16px}.sh .tg-wrap{height:104px}.sh-brand img{width:68px;height:68px}.sh-sos b{font-size:22px}.sf-main{font-size:17px}.sf a{font-size:17px}.sh-top{font-size:14.5px}}
