/* SUBZ — широкие экраны (от 2200px). Вёрстка мягко увеличивается через zoom,
   чтобы рабочая ширина оставалась ~1830–2050px: контент занимает 75–80% экрана,
   как на обычном 1920. zoom растягивает и vw/vh, поэтому все правила с ними
   пересчитаны: X / --z. Генератор: /opt/subz/tools/genwide.py */
:root{--z:1}
@media(min-width:2200px){:root{--z:1.12}}
@media(min-width:2500px){:root{--z:1.3}}
@media(min-width:2800px){:root{--z:1.43}}
@media(min-width:3200px){:root{--z:1.62}}
@media(min-width:3800px){:root{--z:1.95}}
@media(min-width:2200px){
  html{zoom:var(--z)}
  :root{--pad: clamp(16px, calc(4vw / var(--z)), 56px)}
  .section{padding-top:clamp(72px,calc(10vw / var(--z)),148px)}
  .page{min-height:calc(calc(100vh / var(--z)) - var(--header-h))}
  .sec-head{margin-bottom:clamp(24px,calc(3vw / var(--z)),40px)}
  .sec-head__title{font-size:clamp(34px,calc(6.2vw / var(--z)),96px)}
  .mmenu__link .display{font-size:clamp(34px,calc(11vw / var(--z)),64px)}
  .ftr{margin-top:clamp(80px,calc(10vw / var(--z)),160px)}
  .ftr__word span{font-size:calc(26.5vw / var(--z))}
  .drawer{width:min(480px,calc(100vw / var(--z)))}
  .drawer__empty-big{font-size:clamp(64px,calc(18vw / var(--z)),110px)}
  .pal-scrim{padding:calc(10vh / var(--z)) 16px 16px}
  .pal{max-height:calc(80vh / var(--z))}
  .pal__input{font-size:clamp(18px,calc(3vw / var(--z)),24px)}
  .faq__text{font-size:clamp(17px,calc(2.1vw / var(--z)),26px)}
  .hero{padding:clamp(28px,calc(4vw / var(--z)),56px) 0 clamp(56px,calc(7vw / var(--z)),96px)}
  .hero__glow{width:calc(60vw / var(--z));height:calc(60vw / var(--z))}
  .hero__meta{margin-bottom:clamp(20px,calc(3vw / var(--z)),36px)}
  .hero__in{--hero-fs: clamp(40px, calc(8.4vw / var(--z)), 150px)}
  .hero__bottom{margin-top:clamp(24px,calc(3vw / var(--z)),44px)}
  .hero__lead{font-size:clamp(16px,calc(1.3vw / var(--z)),19px)}
  .hero__stage{padding-left:clamp(0px,calc(4vw / var(--z)),60px)}
  .deck__info b{font-size:clamp(20px,calc(2vw / var(--z)),28px)}
  .band{padding:clamp(28px,calc(4vw / var(--z)),48px) 0;gap:clamp(20px,calc(3vw / var(--z)),36px)}
  .band__name{font-size:clamp(44px,calc(7vw / var(--z)),112px)}
  .cat__link{padding:clamp(20px,calc(2.4vw / var(--z)),32px)}
  .cat__title{font-size:clamp(28px,calc(2.9vw / var(--z)),46px)}
  .cat--xl .cat__title{font-size:clamp(36px,calc(4.6vw / var(--z)),76px)}
  .cat__code{font-size:clamp(90px,calc(10vw / var(--z)),160px)}
  .cat--xl .cat__code{font-size:clamp(160px,calc(22vw / var(--z)),340px)}
  .cat__arrow{top:clamp(16px,calc(2vw / var(--z)),24px);right:clamp(16px,calc(2vw / var(--z)),24px)}
  .how__step{padding:clamp(22px,calc(2.4vw / var(--z)),34px)}
  .how__n{font-size:clamp(88px,calc(10vw / var(--z)),150px)}
  .how__t{font-size:clamp(22px,calc(2.2vw / var(--z)),30px)}
  .why__row{padding:clamp(22px,calc(3vw / var(--z)),38px) 12px}
  .why__t{font-size:clamp(22px,calc(2.9vw / var(--z)),44px)}
  .cta__band{padding:clamp(16px,calc(2vw / var(--z)),28px) 0}
  .cta__word{font-size:clamp(56px,calc(11vw / var(--z)),190px)}
  .cta__facts{margin-top:clamp(56px,calc(6vw / var(--z)),96px)}
  .catalog__head{padding-top:clamp(40px,calc(6vw / var(--z)),88px);padding-bottom:clamp(28px,calc(3vw / var(--z)),44px)}
  .catalog__title{font-size:clamp(52px,calc(12vw / var(--z)),210px)}
  .catalog__title sup{font-size:clamp(12px,calc(1.2vw / var(--z)),16px)}
  .catalog__empty .display{font-size:clamp(80px,calc(16vw / var(--z)),220px)}
  .catalog__more{padding-top:clamp(40px,calc(6vw / var(--z)),88px)}
  .co__head{padding-top:clamp(36px,calc(5vw / var(--z)),72px)}
  .co__title{font-size:clamp(44px,calc(9vw / var(--z)),150px)}
  .co__grid{gap:clamp(24px,calc(4vw / var(--z)),56px)}
  .co__legend .display{font-size:clamp(24px,calc(2.6vw / var(--z)),36px)}
  .co__sum{padding:clamp(20px,calc(2.4vw / var(--z)),32px)}
  .co__total b{font-size:clamp(36px,calc(4vw / var(--z)),56px)}
  .co__empty{padding-top:clamp(48px,calc(8vw / var(--z)),120px)}
  .co__empty-title{font-size:clamp(48px,calc(15vw / var(--z)),280px)}
  .nf__in{padding-top:clamp(40px,calc(8vw / var(--z)),120px)}
  .nf__code{font-size:clamp(96px,calc(30vw / var(--z)),520px)}
  .nf__msg{font-size:clamp(22px,calc(3.4vw / var(--z)),44px)}
  .pp__grid{gap:clamp(28px,calc(4vw / var(--z)),64px)}
  .pp__feat{padding:clamp(20px,calc(2.4vw / var(--z)),28px)}
  .pp__name{font-size:clamp(40px,calc(5.4vw / var(--z)),88px)}
  .pp__price{font-size:clamp(52px,calc(6vw / var(--z)),96px)}
  .flow__step{padding:clamp(20px,calc(2.4vw / var(--z)),30px)}
  .ok__in{padding-top:clamp(48px,calc(7vw / var(--z)),110px)}
  .ok__title{font-size:clamp(56px,calc(13vw / var(--z)),220px)}
  .settings-layout{gap:clamp(24px,calc(5vw / var(--z)),72px)}
  .public-profile{gap:clamp(18px,calc(3vw / var(--z)),34px);padding-top:clamp(38px,calc(6vw / var(--z)),84px)}
  .public-profile__avatar{width:clamp(88px,calc(11vw / var(--z)),148px);font-size:clamp(34px,calc(5vw / var(--z)),68px)}
  .public-profile__identity h1{font-size:clamp(44px,calc(8vw / var(--z)),118px)}
  .profile-stats{margin:24px 0 clamp(50px,calc(7vw / var(--z)),90px)}
  .x-page{padding-bottom:clamp(64px,calc(8vw / var(--z)),120px)}
  .x-head{padding-top:clamp(28px,calc(4vw / var(--z)),56px);margin-bottom:clamp(20px,calc(3vw / var(--z)),36px)}
  .x-head .display{font-size:clamp(40px,calc(7vw / var(--z)),104px)}
  .x-panel{padding:clamp(18px,calc(2.2vw / var(--z)),28px)}
  .x-panel h2{font-size:clamp(20px,calc(2vw / var(--z)),26px)}
  .x-grid2{gap:clamp(14px,calc(3vw / var(--z)),40px)}
  .lot-banner-preview>span b{font-size:clamp(34px,calc(7vw / var(--z)),72px)}
  .m-crumbs{padding-top:clamp(18px,calc(2.4vw / var(--z)),32px)}
  .m-hero{gap:clamp(24px,calc(4vw / var(--z)),64px);padding:clamp(24px,calc(3.4vw / var(--z)),52px)}
  .m-hero__title{font-size:clamp(44px,calc(6.6vw / var(--z)),116px)}
  .m-hero__lead{font-size:clamp(15px,calc(1.15vw / var(--z)),18px)}
  .m-hero__lead--lot{font-size:clamp(18px,calc(1.6vw / var(--z)),24px)}
  .m-tile{width:clamp(170px,calc(17vw / var(--z)),248px);padding:clamp(14px,calc(1.3vw / var(--z)),20px)}
  .m-tile__logo b{font-size:clamp(56px,calc(5.4vw / var(--z)),84px)}
  .m-stats{margin-top:clamp(4px,calc(1vw / var(--z)),12px)}
  .m-stats>div+div{padding-left:clamp(14px,calc(2vw / var(--z)),28px)}
  .m-stats dd{font-size:clamp(22px,calc(2.2vw / var(--z)),34px)}
  .m-toolbar{margin:clamp(26px,calc(3vw / var(--z)),40px) 0 16px}
  .m-offer{gap:clamp(14px,calc(2vw / var(--z)),28px);padding:18px clamp(16px,calc(1.8vw / var(--z)),24px)}
  .m-offer__title{font-size:clamp(16px,calc(1.2vw / var(--z)),19px)}
  .m-offer__price{font-size:clamp(22px,calc(1.9vw / var(--z)),30px)}
  .m-empty{padding:clamp(40px,calc(6vw / var(--z)),80px) 20px}
  .m-empty .display{font-size:clamp(48px,calc(6vw / var(--z)),88px)}
  .m-trust{margin-top:clamp(32px,calc(4vw / var(--z)),56px)}
  .m-lot{gap:clamp(16px,calc(2.4vw / var(--z)),32px);margin-top:clamp(16px,calc(2vw / var(--z)),24px)}
  .m-card{padding:clamp(20px,calc(2.4vw / var(--z)),32px)}
  .m-card__h{font-size:clamp(20px,calc(1.8vw / var(--z)),26px)}
  .m-buy{padding:clamp(22px,calc(2.2vw / var(--z)),30px)}
  .m-buy__price{font-size:clamp(48px,calc(4.4vw / var(--z)),68px)}
  .m-auth{gap:clamp(24px,calc(5vw / var(--z)),80px)}
  .m-auth__main .x-head .display{font-size:clamp(56px,calc(7vw / var(--z)),112px)}
  .m-auth__side{margin-top:clamp(28px,calc(4vw / var(--z)),56px);padding:clamp(24px,calc(3vw / var(--z)),44px)}
  .lc__term{font-size:clamp(28px,calc(2.3vw / var(--z)),38px)}
  .lc__price{font-size:clamp(22px,calc(1.7vw / var(--z)),27px)}
  .fd-top{padding-top:clamp(16px,calc(2vw / var(--z)),28px)}
  .fd-head{margin:clamp(24px,calc(3vw / var(--z)),36px) 0 18px}
  .fd-title{font-size:clamp(26px,calc(2.6vw / var(--z)),40px)}
  .pr{margin-top:clamp(14px,calc(1.8vw / var(--z)),24px)}
  .pr__slide{min-height:clamp(250px,calc(22vw / var(--z)),340px);padding:clamp(22px,calc(3vw / var(--z)),44px) clamp(22px,calc(3.4vw / var(--z)),52px)}
  .pr__title{font-size:clamp(34px,calc(4.2vw / var(--z)),68px)}
  .pr__sub{font-size:clamp(14px,calc(1.05vw / var(--z)),16px)}
  .pr__price{font-size:clamp(26px,calc(2.4vw / var(--z)),38px)}
  .pr__art{width:clamp(200px,calc(20vw / var(--z)),300px)}
  .pr__tile b{font-size:clamp(64px,calc(7vw / var(--z)),110px)}
  .pr__dots{left:clamp(22px,calc(3.4vw / var(--z)),52px)}
  .cx-hero{padding-top:clamp(28px,calc(4vw / var(--z)),64px)}
  .cx-hero__title{font-size:clamp(64px,calc(11vw / var(--z)),184px)}
  .cx-hero__row{gap:clamp(20px,calc(4vw / var(--z)),64px);margin-top:clamp(18px,calc(2.4vw / var(--z)),30px)}
  .cx-hero__sub{font-size:clamp(15px,calc(1.15vw / var(--z)),18px)}
  .cx-stats>div{padding:16px clamp(16px,calc(2vw / var(--z)),28px)}
  .cx-stats dd{font-size:clamp(24px,calc(2.2vw / var(--z)),34px)}
  .cx-bar{margin:clamp(28px,calc(3.4vw / var(--z)),48px) calc(var(--pad) * -1) 22px}
  .cx-card__name{font-size:clamp(22px,calc(1.8vw / var(--z)),28px)}
  .cx-card__price{font-size:clamp(22px,calc(1.7vw / var(--z)),26px)}
  .cx-grid:not(.is-filtered) .cx-card:nth-child(-n+2) .cx-card__name{font-size:clamp(34px,calc(3.4vw / var(--z)),56px)}
  .cx-grid:not(.is-filtered) .cx-card:nth-child(-n+2) .cx-card__price{font-size:clamp(28px,calc(2.4vw / var(--z)),38px)}
  .cx-empty{padding:clamp(40px,calc(6vw / var(--z)),80px) 20px}
  .cx-empty .display{font-size:clamp(44px,calc(5vw / var(--z)),80px)}
  .cx-soon{margin-top:clamp(48px,calc(6vw / var(--z)),88px);padding-top:clamp(28px,calc(3vw / var(--z)),40px)}
  .cx-soon__head h2{font-size:clamp(28px,calc(3vw / var(--z)),48px)}
  .cx-shop{gap:clamp(18px,calc(2.4vw / var(--z)),32px);margin-top:clamp(24px,calc(3vw / var(--z)),40px)}
  .sh-banner{min-height:clamp(180px,calc(17vw / var(--z)),250px);margin-top:clamp(14px,calc(1.8vw / var(--z)),24px);padding:clamp(18px,calc(2.2vw / var(--z)),30px)}
  .sh-banner__wm{right:clamp(-40px,calc(-2vw / var(--z)),0px);width:clamp(200px,calc(26vw / var(--z)),380px)}
  .sh-banner__logo{width:clamp(56px,calc(5vw / var(--z)),76px)}
  .sh-banner__title{font-size:clamp(34px,calc(4.4vw / var(--z)),64px)}
  .sh-banner__sub{font-size:clamp(14px,calc(1.1vw / var(--z)),16px)}
  .sh-best{padding:clamp(16px,calc(1.8vw / var(--z)),24px)}
  .sh-best__head h2{font-size:clamp(20px,calc(1.8vw / var(--z)),26px)}
  .pc__term{font-size:clamp(22px,calc(1.8vw / var(--z)),30px)}
  .sh-empty{padding:clamp(40px,calc(6vw / var(--z)),72px) 20px}
  .sh-about,.sh-more{margin-top:clamp(40px,calc(5vw / var(--z)),72px)}
  .sh-about h2,.sh-more h2{font-size:clamp(22px,calc(2vw / var(--z)),30px)}
  .cb-hero{margin-top:clamp(16px,calc(2vw / var(--z)),28px);padding:clamp(20px,calc(2.6vw / var(--z)),34px)}
  .cb-ava{width:clamp(64px,calc(6vw / var(--z)),84px);font-size:clamp(28px,calc(2.6vw / var(--z)),36px)}
  .cb-hero__name{font-size:clamp(30px,calc(3.4vw / var(--z)),52px)}
  .cb-stat dd{font-size:clamp(26px,calc(2.4vw / var(--z)),36px)}
  .cb-layout{gap:clamp(16px,calc(2.2vw / var(--z)),28px);margin-top:clamp(20px,calc(2.4vw / var(--z)),32px)}
  .cb-empty{padding:clamp(22px,calc(2.8vw / var(--z)),36px)}
  .cb-empty__txt h2{font-size:clamp(24px,calc(2.4vw / var(--z)),34px)}
  .cb-recs{margin-top:clamp(26px,calc(3vw / var(--z)),40px)}
  .cb-recs__head h2{font-size:clamp(22px,calc(2vw / var(--z)),30px)}
  .sv-step b{ font-size: clamp(22px, calc(2.4vw / var(--z)), 30px)}
  .sv-avail b{ font-size: clamp(34px, calc(4vw / var(--z)), 46px)}
  .sv-level b{ font-size: clamp(26px, calc(3vw / var(--z)), 36px)}
  .section{ padding-top: clamp(36px, calc(4.5vw / var(--z)), 72px)}
  .sec-head{ margin-bottom: clamp(14px, calc(2vw / var(--z)), 24px)}
  .sec-head__title{ font-size: clamp(28px, calc(4.2vw / var(--z)), 60px)}
  .hero{ padding: clamp(18px, calc(2.6vw / var(--z)), 36px) 0 clamp(26px, calc(3.4vw / var(--z)), 52px)}
  .hero__meta{ margin-bottom: clamp(12px, calc(1.8vw / var(--z)), 22px)}
  .hero__bottom{ margin-top: clamp(14px, calc(2vw / var(--z)), 28px)}
  .band{ padding: clamp(16px, calc(2.2vw / var(--z)), 30px) 0; gap: clamp(12px, calc(1.8vw / var(--z)), 22px)}
  .band__name{ font-size: clamp(36px, calc(5.2vw / var(--z)), 84px)}
  .how__step{ padding: clamp(18px, calc(2vw / var(--z)), 26px)}
  .how__n{ font-size: clamp(60px, calc(6.5vw / var(--z)), 104px)}
  .why__row{ padding: clamp(14px, calc(1.8vw / var(--z)), 24px) 12px}
  .cta__word{ font-size: clamp(44px, calc(8vw / var(--z)), 140px)}
  .cta__facts{ margin-top: clamp(22px, calc(3vw / var(--z)), 40px)}
  .catalog__head{ padding-top: clamp(22px, calc(3.4vw / var(--z)), 48px); padding-bottom: clamp(14px, calc(2vw / var(--z)), 26px)}
  .catalog__title{ font-size: clamp(44px, calc(8vw / var(--z)), 140px)}
  .catalog__more{ padding-top: clamp(22px, calc(3.4vw / var(--z)), 48px)}
  .co__head{ padding-top: clamp(18px, calc(2.8vw / var(--z)), 40px)}
  .co__title{ font-size: clamp(38px, calc(6.4vw / var(--z)), 104px)}
  .pp__grid{ gap: clamp(18px, calc(3vw / var(--z)), 44px)}
  .pp__name{ font-size: clamp(34px, calc(4.4vw / var(--z)), 72px)}
  .pp__price{ font-size: clamp(42px, calc(5vw / var(--z)), 80px)}
  .flow__step{ padding: clamp(16px, calc(2vw / var(--z)), 24px)}
  .ftr{ margin-top: clamp(28px, calc(4vw / var(--z)), 64px)}
  .ftr__word span{ font-size: calc(17vw / var(--z))}
  .page.x-page{ padding-bottom: clamp(20px, calc(2.6vw / var(--z)), 40px)}
  .x-head{ padding-top: clamp(14px, calc(2.2vw / var(--z)), 30px); margin-bottom: clamp(12px, calc(1.8vw / var(--z)), 22px)}
  .x-head .display{ font-size: clamp(32px, calc(4.6vw / var(--z)), 68px)}
  .m-auth{ gap: clamp(20px, calc(3.4vw / var(--z)), 56px)}
  .m-auth__main .x-head .display{ font-size: clamp(40px, calc(5vw / var(--z)), 80px)}
  .m-auth__side{ margin-top: clamp(12px, calc(2vw / var(--z)), 28px)}
  html body .bx-hero{ padding-top: clamp(14px, calc(2.2vw / var(--z)), 30px)}
  html body .bx-hero__title{ font-size: clamp(40px, calc(6vw / var(--z)), 92px)}
  html body .bb-about, html body .bb-more{ margin-top: clamp(24px, calc(3vw / var(--z)), 40px)}
  .bx-hero{ padding-top: clamp(28px, calc(4vw / var(--z)), 56px); margin-bottom: clamp(18px, calc(2.4vw / var(--z)), 28px)}
  .bx-hero__title{ font-size: clamp(46px, calc(8.4vw / var(--z)), 128px)}
  .bx-hero__sub{ font-size: clamp(15px, calc(1.3vw / var(--z)), 18px)}
  .bx-card__logo b{ font-size: clamp(34px, calc(4vw / var(--z)), 48px)}
  .bx-card__name{ font-size: clamp(20px, calc(1.8vw / var(--z)), 24px)}
  .bb-hero{ gap: clamp(16px, calc(3vw / var(--z)), 40px); padding: clamp(18px, calc(3vw / var(--z)), 36px)}
  .bb-hero__logo{ width: clamp(76px, calc(9vw / var(--z)), 116px)}
  .bb-hero__title{ font-size: clamp(40px, calc(6.4vw / var(--z)), 96px)}
  .bb-about, .bb-more{ margin-top: clamp(36px, calc(5vw / var(--z)), 64px)}
  .bb-about h2, .bb-more h2{ font-size: clamp(28px, calc(3.6vw / var(--z)), 48px)}
}
