/* Telegram download-section layout, with locally stored official media. */
* { box-sizing: border-box; }
html { min-width: 0; color-scheme: light; background: #fff; -webkit-text-size-adjust: 100%; }
body { margin: 0; color: #000; background: #fff; font: 15px/18px -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; }
a { color: #0088cc; text-decoration: none; -webkit-tap-highlight-color: rgba(23, 156, 222, .12); }
a:hover { color: #0088cc; }
a:focus-visible { outline: 2px solid #179cde; outline-offset: 5px; border-radius: 3px; }
b { font-weight: 700; }
.clearfix::after { display: table; clear: both; content: ""; }
.download-page { padding: 8px 0 64px; overflow: hidden; }
.tl_main_download_mobile { max-width: 1028px; margin: 0 auto; text-align: center; font-size: 0; }
.tl_main_download_link { display: inline-block; position: relative; max-width: 100%; min-height: 300px; padding: 262px 8px 20px; margin: 40px 0; font-size: 15px; line-height: 18px; text-align: center; vertical-align: top; }
.tl_main_download_link_android { width: 28.210116857923%; min-width: 245px; }
.tl_main_download_link_ios { width: 42.9961%; min-width: 350px; }
.download-label { display: block; position: relative; z-index: 2; overflow-wrap: anywhere; }
.tl_main_download_link::after, .tl_main_download_desktop_link::after { content: ""; display: block; position: absolute; left: 4px; right: 4px; bottom: -1px; height: 3px; border-radius: 2px; background: #179cde; opacity: 0; transform: scaleX(.3) scaleY(0); transform-origin: bottom; transition: opacity .2s ease-in-out, transform .2s ease-in-out; }
.tl_main_download_link:hover::after, .tl_main_download_desktop_link:hover::after, .tl_main_download_link:focus-visible::after, .tl_main_download_desktop_link:focus-visible::after { opacity: 1; transform: scale(1); }
.tl_main_download_image__android, .tl_main_download_image__ios, .tl_main_video_player { display: block; position: absolute; top: 0; left: 50%; height: 240px; padding: 0; border: 0; pointer-events: none; }
.tl_main_download_image__android, .tl_main_download_image__ios { width: 304px; margin-left: -152px; overflow: hidden; }
.tl_main_download_image__android img, .tl_main_download_image__ios img { display: block; position: absolute; top: 0; left: 50%; max-width: none; height: 270px; transform: translateX(-50%); }
.tl_main_download_image__android img { width: 290px; }
.tl_main_download_image__ios img { width: 442px; }
.tl_main_download_image__android.is-custom img, .tl_main_download_image__ios.is-custom img { width: 100%; height: 100%; object-fit: contain; }
.tl_main_video_player { opacity: 0; object-fit: contain; transition: opacity .1s ease-in-out; }
.tl_main_video_player__android { width: 192px; margin-left: -96px; }
.tl_main_video_player__ios { width: 304px; margin-left: -152px; }
.video_play .tl_main_video_player { opacity: 1; }
.video_play .is-custom { visibility: hidden; }
.icon { display: inline-block; }
.icon-android, .icon-ios { width: 25px; height: 27px; margin: -6px 10px 0 0; vertical-align: text-top; background: no-repeat 0 0; }
.icon-android { background-image: url('telegram/SiteIconAndroid.svg'); background-size: 22px 27px; }
.icon-ios { background-image: url('telegram/SiteIconApple.svg'); background-size: 21px 27px; }
.tl_main_download_link_tdesktop { display: none; min-width: 320px; }
.tl_main_download_image__tdesktop { position: absolute; top: 0; left: 50%; width: 320px; height: 156px; margin-left: -160px; pointer-events: none; }
.tl_main_download_image__tdesktop img { display: block; width: 100%; height: 100%; object-fit: contain; }
.tl_main_download_more_btn { display: none; padding: 10px 22px; margin: 5px 0 0; border: 0; border-radius: 999px; color: #fff; background: #318fd3; font-size: 15px; font-weight: 400; line-height: 1.33; text-align: center; vertical-align: middle; overflow-wrap: anywhere; }
.tl_main_download_more_btn:hover, .tl_main_download_more_btn:focus-visible { color: #fff; background: #2283c7; }
.icon-arrow-more { width: 6px; height: 11px; margin-left: 10px; vertical-align: baseline; background: url('telegram/tl_arrow.png') no-repeat 0 0 / 6px 11px; }
.tl_main_download_desktop_section { margin-top: 8px; }
.tl_main_download_desktop_wrap1, .tl_main_download_desktop_wrap { position: relative; }
.tl_main_download_desktop { position: relative; left: 50%; width: 100%; min-width: 804px; transform: translateX(-50%); }
.desktop-art { position: absolute; top: 19px; left: 50%; width: 1246px; height: 260px; transform: translateX(-50%); pointer-events: none; }
.desktop-art img { display: block; width: 100%; height: 100%; object-fit: contain; }
.desktop-art.is-custom { width: min(100%, 1246px); }
.tl_main_download_desktop_links { display: flex; width: 595px; margin: 0 auto; }
.tl_main_download_desktop_link { display: block; position: relative; padding: 270px 20px 20px; font-size: 15px; line-height: 18px; text-align: center; overflow-wrap: anywhere; }
.tl_main_download_link_td { width: 52%; }
.tl_main_download_link_osx { width: 48%; }
.tl_main_download_link_osx:only-child { margin-left: auto; }
@media (min-resolution: 1.5dppx) { .icon-arrow-more { background-image: url('telegram/tl_arrow_2x.png'); } }
@media (max-width: 640px) {
  .download-page { padding: 8px 0 12px; overflow: visible; }
  .tl_main_download_mobile { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 8px; max-width: 520px; padding: 0 8px; }
  .tl_main_download_link { display: flex; flex-direction: column; align-items: center; gap: 8px; width: auto; min-width: 0; min-height: 0; padding: 8px 4px 10px; margin: 0; font-size: 14px; line-height: 1.45; border-radius: 10px; touch-action: manipulation; }
  .tl_main_download_link::after { display: none; }
  .tl_main_download_link:active { background: #edf8ff; }
  .download-page a:focus-visible { outline-offset: 2px; }
  .download-label { order: 1; display: block; width: 100%; min-height: 44px; padding: 2px 0; overflow-wrap: anywhere; }
  .download-platform { display: block; margin-top: 2px; }
  .download-label b { white-space: normal; }
  .icon-android, .icon-ios { width: 17px; height: 20px; margin: 0 5px -3px 0; background-size: contain; vertical-align: baseline; }
  .tl_main_download_image__android, .tl_main_download_image__ios { position: relative; inset: auto; flex: none; width: 100%; max-width: 192px; height: clamp(120px, 38vw, 174px); margin: 0; overflow: visible; }
  .tl_main_download_image__android img, .tl_main_download_image__ios img,
  .tl_main_download_image__android.is-custom img, .tl_main_download_image__ios.is-custom img { position: static; display: block; width: 100%; max-width: 100%; height: 100%; transform: none; object-fit: contain; }
  .tl_main_video_player { display: none; }
  .video_play .is-custom { visibility: visible; }
  .tl_main_download_link_tdesktop { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(82px, 32%) minmax(0, 1fr); align-items: center; gap: 10px; width: 100%; padding: 12px 10px; min-height: 82px; border-top: 1px solid #edf2f5; border-radius: 0; text-align: left; }
  .tl_main_download_image__tdesktop { position: static; grid-column: 1; grid-row: 1; width: 100%; height: auto; margin: 0; }
  .tl_main_download_image__tdesktop img { width: 100%; height: auto; aspect-ratio: 320 / 156; object-fit: contain; }
  .tl_main_download_link_tdesktop .download-label { grid-column: 2; grid-row: 1; min-height: 44px; display: flex; flex-direction: column; justify-content: center; }
  .tl_main_download_desktop_section { display: none; }
  .tl_main_download_more_btn { grid-column: 1 / -1; display: flex; justify-content: center; align-items: center; gap: 8px; min-width: 0; min-height: 44px; max-width: 100%; margin: 0; padding: 11px 12px; border-radius: 9px; font-size: 14px; line-height: 1.5; touch-action: manipulation; }
  .icon-arrow-more { flex: none; margin-left: 0; }
  .has-single-phone .tl_main_download_link_android, .has-single-phone .tl_main_download_link_ios { grid-column: 1 / -1; }
}
@media (max-width: 340px) {
  .tl_main_download_mobile { gap: 10px 4px; padding: 0 6px; }
  .tl_main_download_link { padding-right: 2px; padding-left: 2px; }
  .tl_main_download_image__android, .tl_main_download_image__ios { height: 120px; }
  .tl_main_download_link_tdesktop { grid-template-columns: minmax(64px, 30%) minmax(0, 1fr); padding: 10px 4px; gap: 6px; }
}
@media (prefers-reduced-motion: reduce) { *, *::after { transition: none !important; } }
