/* Homepage first viewport: fonts + hero + header chrome. Full styles still load async. */
@font-face{font-display:swap;font-family:IBMPlexSans-Bold;src:url(fonts/IBMPlexSans-Bold.ttf) format("truetype");font-weight:bold;font-style:normal}
@font-face{font-display:swap;font-family:IBMPlexSans-Medium;src:url(fonts/IBMPlexSans-Medium.ttf) format("truetype")}
@font-face{font-display:swap;font-family:IBMPlexSans;src:url(fonts/IBMPlexSans-Regular.ttf) format("truetype")}

html,body{overflow-x:hidden;max-width:100%}
body{margin:0;font-family:IBMPlexSans,system-ui,sans-serif;color:#303337;background:#fff}
button{outline:none!important}

/* Header shell (menu.main_new) — transparent until .is-fixed from theme.bundle */
.header-transparent.sticky-fixed{position:relative;z-index:1030}
.navbar.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030;padding:.75rem 0}
.sbi-navbar-fixed-bg{
  position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;height:100%;width:100%;
  background:#fff;box-shadow:0 1rem 3rem rgba(0,0,0,.075);
  transform:translateY(-100%);
  transition:transform .4s cubic-bezier(.215,.61,.355,1);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)
}
.header-transparent.sticky-fixed.is-fixed .sbi-navbar-fixed-bg{transform:translateY(0)}
.sbi-container{width:100%;max-width:1140px;margin:0 auto;padding:0 15px;display:flex;align-items:center;min-height:72px;position:relative;z-index:1}
.navbar-brand{width:5rem;display:block;padding:0;position:relative;margin-right:1rem}
.sbi-img-fluid{max-width:100%;height:auto}
.navbar-brand .sbi-navbar-brand-sticky,
.navbar-brand .sbi-navbar-brand-transparent{
  position:absolute;top:50%;width:auto;max-height:48px;transform:translateY(-50%)
}
.sbi-d-flex{display:flex!important}
.sbi-align-items-center{align-items:center!important}
.sbi-navbar-no-collapse-items{margin-left:auto}
.sbi-order-lg-last{order:0}
.navbar-toggler{
  padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;
  border:none;background-color:transparent;color:#303337;margin-left:.5rem
}
.navbar-toggler:focus{outline:0;box-shadow:none}
.navbar-toggler .navbar-toggler-icon{
  background-image:none!important;width:24px;height:24px;position:relative;
  display:inline-block;vertical-align:middle;font-size:0;cursor:pointer
}
.navbar-toggler .navbar-toggler-icon>i{
  width:100%;height:2px;display:block;position:absolute;top:50%;margin-top:-1px;
  background-color:currentColor;transition:background-color 0s .3s
}
.navbar-toggler .navbar-toggler-icon>i::after,
.navbar-toggler .navbar-toggler-icon>i::before{
  content:"";width:100%;height:2px;position:absolute;display:block;left:0;background-color:currentColor
}
.navbar-toggler .navbar-toggler-icon>i::before{
  top:8px;transition:top .3s .3s,transform .3s 0s,background-color .3s 0s
}
.navbar-toggler .navbar-toggler-icon>i::after{
  bottom:8px;transition:bottom .3s .3s,transform .3s 0s,background-color .3s 0s
}
.navbar-toggler[aria-expanded=true] .navbar-toggler-icon>i{
  background-color:transparent;transition:background-color 0s .2s
}
.navbar-toggler[aria-expanded=true] .navbar-toggler-icon>i::before{
  top:0;transform:rotate(45deg);transition:top .2s 0s,transform .3s .2s,background-color .2s 0s
}
.navbar-toggler[aria-expanded=true] .navbar-toggler-icon>i::after{
  bottom:0;transform:rotate(-45deg);transition:bottom .2s 0s,transform .2s .2s,background-color .2s 0s
}
.sbi-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:15px;font-weight:500;line-height:1.2;cursor:pointer}
.sbi-btn-success,.sbi-btn-cb-1{background:#f3bc1b;border:1px solid #f3bc1b;color:#080713}
.sbi-btn-sm{padding:.375rem .725rem;font-size:.875rem}
.sbi-btn-callback-padding{padding-left:1rem;padding-right:1rem}
.sbi-cabinet-link{color:#303337;text-decoration:none;font-size:14px;white-space:nowrap}
.sbi-social-img{width:28px;height:28px;vertical-align:middle}
.sbi-callback-phone{color:#303337;font-weight:600;text-decoration:none}
.sbi-callback-working{display:block;font-size:12px;color:#6c757d}
.sbi-d-none{display:none!important}
@media (min-width:768px){
  .sbi-d-md-block{display:block!important}
  .sbi-d-md-flex{display:flex!important}
  .sbi-d-md-none{display:none!important}
  .sbi-navbar-nav{display:flex;list-style:none;margin:0;padding:0;align-items:center}
  .sbi-nav-link{display:block;padding:.5rem 12px;color:#303337;text-decoration:none;font-size:15px;white-space:nowrap}
}
@media (max-width:767.98px){
  .sbi-d-sm-block{display:block!important}
  .sbi-container{min-height:64px}
  .sbi-navbar-brand-sticky,.sbi-navbar-brand-transparent{max-height:40px}
}

/* Hero */
.topPartsGray{background:#f7f7f9;border-bottom-right-radius:2000px 200px;border-bottom-left-radius:2000px 200px;padding-top:130px}
.no-radius{border-radius:0!important}
.firstSection{margin-top:60px;padding-bottom:80px}
.firstSectionDescription .h3,.firstSectionDescription h1,.firstSectionDescription .h1,.title-desc-mob{
  margin:0 0 16px;font-family:IBMPlexSans-Bold,sans-serif;font-size:56px;font-weight:bold;line-height:1.14;letter-spacing:.4px;color:#303337
}
.firstSectionDescription .h4,.topPartsGray .h4{
  height:auto;font-family:IBMPlexSans,sans-serif;font-size:20px;line-height:1.43;color:#303337
}
.firstSectionDescription button{
  width:320px;height:56px;border-radius:8px;border:solid 1px #fec311;background-color:#fec311;margin-top:35px;
  font-family:IBMPlexSans-Medium,sans-serif;font-size:18px;font-weight:500;line-height:1.11;text-align:center;color:#54420a
}
/* Reserve LCP image box — меньше CLS при подгрузке */
.topPartsGray picture,
.topPartsGray .firstSection img{
  display:block;width:100%;height:auto;aspect-ratio:544/521;max-width:100%
}
@media (max-width:767px){
  .topPartsGray{padding-top:90px}
  .firstSection{margin-top:24px;padding-bottom:40px}
  .title-desc-mob,.firstSectionDescription .h3,.firstSectionDescription h1{font-size:28px;line-height:1.2}
  .firstSectionDescription button{width:100%;max-width:320px;margin-top:16px}
}
@media (min-width:481px) and (max-width:991px){
  .firstSectionDescription .h3,.firstSectionDescription h1,.title-desc-mob{font-size:40px}
  .firstSectionDescription button{width:264px}
}
