/* Telegram entry points. Telegram blue is darkened to #1877b8 so white text keeps AA contrast. */
:root{--tg:#1877b8;--tg-hover:#12659d;--tg-ink:#fff;--tg-soft:#e3f1fa}
.tg-icon{width:20px;height:20px;flex:0 0 auto;fill:currentColor}
.tg-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:13px 24px;border-radius:9px;background:var(--tg);color:var(--tg-ink);font-weight:700;line-height:1.25;text-align:center;border:0;box-shadow:0 1px 0 #0000001f;transition:background-color .15s,transform .15s}
.tg-btn:hover{background:var(--tg-hover);transform:translateY(-1px);text-decoration:none!important}
.tg-btn:focus-visible{outline:3px solid var(--tg);outline-offset:4px}
.tg-btn--lg{min-height:58px;padding-inline:30px;font-size:18px}
.tg-btn--lg .tg-icon{width:24px;height:24px}
/* Header: always visible, also on phones where the menu is collapsed. */
.tg-head{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 16px;border-radius:9px;background:var(--tg);color:var(--tg-ink)!important;font-size:14px;font-weight:700;white-space:nowrap}
.tg-head:hover{background:var(--tg-hover);text-decoration:none!important}
.header-inner .tg-head{order:3}
.header-inner .nav-toggle{order:4}
/* Hero: the Telegram button leads, the catalog button follows. */
.tg-hero-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.tg-hero-note{flex-basis:100%;margin:2px 0 0;font-size:14px;opacity:.82}
.tg-hero-row a{text-decoration:none!important}
.tg-hero-row .tg-btn{white-space:nowrap}
.tg-hero-row .button.secondary{background:transparent;color:inherit;border-color:currentColor;min-height:52px}
.tg-hero-row.atlas-tg{margin-top:34px}
.header-right .tg-head{margin-right:4px}
@media(max-width:1280px){.header-right .tg-head span{display:none}}
.tg-hero-note kbd,.tg-float kbd{font:inherit;font-size:12px;font-weight:700;padding:1px 7px;border-radius:5px;border:1px solid currentColor;opacity:.85}
/* Band before the catalog. */
.tg-band{background:var(--tg-soft);color:#0f2638;padding-block:72px;border-block:1px solid #c6dfee}
.tg-band .shell{width:min(100% - 48px,1240px);margin-inline:auto}
.tg-band h2{font-family:Rothek,Somic,inherit;line-height:1.08;letter-spacing:-.04em}
.tg-band-inner{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:56px;align-items:center}
.tg-band h2{font-size:clamp(32px,4vw,52px);margin:0 0 18px;color:#0f2638}
.tg-band-lead{font-size:18px;max-width:620px;color:#2c4558;margin-bottom:28px}
.tg-steps{list-style:none;counter-reset:tg;margin:0 0 32px;padding:0;display:grid;gap:14px;max-width:640px}
.tg-steps li{counter-increment:tg;display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:baseline;font-size:17px;color:#24394a}
.tg-steps li::before{content:counter(tg);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #b8d6e8;color:var(--tg);font-weight:700;font-size:15px}
.tg-steps b{color:#0f2638}
.tg-band-alt{display:inline-block;margin-left:22px;font-size:15px;color:#2c4558;text-decoration:underline;text-underline-offset:4px}
.tg-qr{margin:0;padding:20px;background:#fff;border-radius:16px;border:1px solid #c6dfee;text-align:center}
.tg-qr svg{display:block;width:100%;height:auto}
.tg-qr figcaption{margin-top:12px;font-size:14px;color:#2c4558}
/* Plan cards: secondary route into the bot. */
.tg-card-link{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;min-height:44px;font-size:14px;font-weight:700;color:var(--tg)!important;border-radius:9px;border:1px solid #b8d6e8;background:#fff}
.tg-card-link .tg-icon{width:16px;height:16px}
.tg-card-link:hover{background:var(--tg-soft);text-decoration:none!important}
/* Floating button (desktop) and bottom bar (phones). */
.tg-float{position:fixed;z-index:60;right:24px;bottom:24px;display:inline-flex;align-items:center;gap:12px;padding:14px 20px;border-radius:999px;background:var(--tg);color:#fff!important;font-weight:700;font-size:16px;box-shadow:0 10px 30px #0b3a5c40;transform:translateY(140%);opacity:0;transition:transform .25s,opacity .25s;pointer-events:none}
.tg-float.is-shown{transform:none;opacity:1;pointer-events:auto}
.tg-float:hover{background:var(--tg-hover);text-decoration:none!important}
.tg-float .tg-icon{width:22px;height:22px}
/* De-templating: no tracked capitals for small labels. */
.eyebrow{text-transform:none;letter-spacing:0;font-size:15px;font-weight:600}
.plan-tag{text-transform:none;letter-spacing:0;font-size:12px}
.brand small{display:none}
@media(max-width:900px){.tg-band-inner{grid-template-columns:1fr}.tg-qr{display:none}}
@media(max-width:700px){
 .tg-head span{display:none}.tg-head{padding:9px 12px}.header-inner{gap:12px}.header-inner .brand{margin-right:auto}
 .tg-float{left:12px;right:12px;bottom:12px;justify-content:center;border-radius:12px;padding:15px 18px}
 .tg-float kbd{display:none}
 body.has-tg-float{padding-bottom:84px}
 .tg-band{padding-block:52px}.tg-btn--lg{width:100%}.tg-band-alt{display:block;margin:16px 0 0}
 .tg-hero-row .tg-btn,.tg-hero-row .button,.tg-hero-row .btn{width:100%}
 .header-right .tg-head{display:none}
}
@media(prefers-reduced-motion:reduce){.tg-float,.tg-btn{transition:none}}
