/* Esprings: mobile-only repairs — 2026-11-04.
   Intentionally does not modify desktop layouts, forms, Metrika or Marquiz.
   Load AFTER template_03042025.css and esprings-original-header.css. */
@media screen and (max-width: 767px) {
  html, body { max-width: 100%; overflow-x: hidden; }

  /* Existing branded header. Preserve the current desktop logo and colors. */
  body .es-original-header {
    height: 160px !important;
    min-height: 0 !important;
    border-bottom-width: 10px !important;
    border-radius: 0 0 23px 23px !important;
    overflow: visible !important;
  }
  body .es-original-header .es-oh-inner {
    height: 150px !important;
    min-height: 0 !important;
    max-width: 100% !important;
    padding: 0 12px !important;
  }
  body .es-original-header .es-oh-phone {
    top: 12px !important;
    left: 14px !important;
    right: auto !important;
    font-size: 15px !important;
    line-height: 21px !important;
    white-space: nowrap;
  }
  body .es-original-header .es-oh-logo {
    top: 38px !important;
    left: 50% !important;
    width: 180px !important;
    height: auto !important;
    transform: translateX(-50%) !important;
  }
  body .es-original-header .es-oh-logo img {
    width: 180px !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
  }
  body .es-original-header .es-oh-actions {
    top: 50px !important;
    right: 11px !important;
    gap: 12px !important;
  }
  body .es-original-header .es-oh-action {
    font-size: 11px !important;
    line-height: 1.2 !important;
    gap: 3px !important;
  }
  body .es-original-header .es-oh-action svg {
    width: 21px !important;
    height: 21px !important;
  }
  body .es-original-header .es-oh-nav {
    left: 12px !important;
    right: 12px !important;
    bottom: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: 15px !important;
    width: auto !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    padding: 5px 0 !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  body .es-original-header .es-oh-nav::-webkit-scrollbar { display: none; }
  body .es-original-header .es-oh-nav a {
    flex: 0 0 auto;
    font-size: 13px !important;
    line-height: 22px !important;
    font-weight: 500 !important;
  }
  body .es-original-header .es-oh-search { display: none !important; }

  /* Sber banner: do not squeeze a desktop landscape photo into a narrow phone. */
  .header-banner.banner-sber {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 0 0 22px 22px !important;
  }
  .header-banner.banner-sber .header-banner-wrap {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }
  .header-banner.banner-sber .banner-block-right,
  .header-banner.banner-sber .banner-block-right img { display: none !important; }
  .header-banner.banner-sber .banner-block-left {
    width: 100% !important;
    max-width: none !important;
    padding: 15px 15px 12px !important;
    display: flex !important;
    flex-direction: column !important;
  }
  .header-banner.banner-sber .banner-block.banner-top { display: none !important; }
  .header-banner.banner-sber .banner-block.banner-middle {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
  }
  .header-banner.banner-sber .banner-title {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    font-family: Arial, sans-serif !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
  }
  .header-banner.banner-sber .banner-btn {
    flex: 0 0 130px !important;
    width: 130px !important;
    min-height: 40px !important;
    max-width: 43% !important;
    padding: 8px 10px !important;
    border-radius: 24px !important;
    font-size: 12px !important;
    line-height: 1.18 !important;
    text-align: center !important;
    justify-content: center !important;
    align-items: center !important;
    white-space: normal !important;
  }
  .header-banner.banner-sber .banner-block.banner-botttom {
    margin-top: 9px !important;
    padding: 0 !important;
  }
  .header-banner.banner-sber .notice {
    display: block !important;
    font-size: 9px !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
    text-align: left !important;
  }

  /* First screen: readable headline AND visible request buttons. */
  .block-manufacturing {
    position: relative !important;
    margin: 26px 0 32px !important;
    padding: 0 !important;
    min-height: 0 !important;
  }
  .block-manufacturing .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 16px !important;
  }
  .block-manufacturing .container-fluid::before { display: none !important; }
  .block-manufacturing .bm-title {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 14px !important;
    text-align: center !important;
  }
  .block-manufacturing .bm-title h1.big-title {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: clamp(23px, 6vw, 29px) !important;
    font-weight: 900 !important;
    line-height: 1.14 !important;
    letter-spacing: -0.45px !important;
    margin: 0 0 14px !important;
    overflow-wrap: break-word !important;
    text-align: center !important;
  }
  .block-manufacturing .bm-title .title-desc {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    text-align: center !important;
  }
  .block-manufacturing .bm-title .title-desc::before { display: none !important; }
  .block-manufacturing .bm-buttons {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 17px 0 0 !important;
    text-align: center !important;
  }
  .block-manufacturing .bm-buttons .re-btn,
  .block-manufacturing .bm-buttons .re-link {
    box-sizing: border-box !important;
    display: flex !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.3 !important;
    font-size: 14px !important;
  }
  .block-manufacturing::after {
    content: '';
    display: block;
    width: min(320px, 90%);
    height: 150px;
    margin: 20px auto 0;
    background: url('/templates/esprings/img/bg_springs_schema.png') center / contain no-repeat;
    pointer-events: none;
  }

  /* Below-the-fold blocks: prevent desktop columns from squeezing mobile text/forms. */
  .block-onmarket > .container-fluid > .row,
  .block-mainform .row,
  .block-delivery > .container-fluid > .row:first-child,
  .block-contacts > .container-fluid.width-1450 > .row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 20px !important;
  }
  .block-onmarket > .container-fluid > .row { padding: 24px 0 !important; }
  .block-onmarket .bo-desc { padding: 22px !important; }
  .block-justintime .row .row { grid-template-columns: 1fr !important; gap: 18px !important; }
  .block-justintime .col-md-8 { grid-template-columns: 1fr !important; gap: 18px !important; }
  .re-calc-grid { grid-template-columns: minmax(0, 1fr) !important; }
  .block-mainform .panel-body,
  .block-contacts .panel-body,
  .block-delivery .panel-body { padding: 18px !important; }
  #mainform input, #mainform textarea, #mainform button { max-width: 100%; }
}

@media screen and (max-width: 370px) {
  body .es-original-header .es-oh-logo { width: 150px !important; }
  body .es-original-header .es-oh-logo img { width: 150px !important; }
  body .es-original-header .es-oh-actions { right: 8px !important; gap: 9px !important; }
  body .es-original-header .es-oh-phone { font-size: 14px !important; }
  .header-banner.banner-sber .banner-title { font-size: 16px !important; }
  .header-banner.banner-sber .banner-btn { flex-basis: 116px !important; width: 116px !important; font-size: 11px !important; }
}


/* ESPRINGS mobile v2 / 2026-11-04
   Changes only for small screens. The desktop header, logo and forms remain untouched. */
@media screen and (max-width: 767px) {
  /* Phone first. The catalog/cart/profile are temporarily unavailable. */
  body .es-original-header {
    height: 130px !important;
    min-height: 0 !important;
    border-bottom-width: 10px !important;
    border-radius: 0 0 23px 23px !important;
    overflow: visible !important;
  }
  body .es-original-header .es-oh-inner {
    position: relative !important;
    height: 120px !important;
    min-height: 0 !important;
    max-width: 100% !important;
    padding: 0 12px !important;
  }
  body .es-original-header .es-oh-phone {
    position: absolute !important;
    left: 13px !important;
    top: 9px !important;
    right: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #0d0d0d !important;
    font: 800 17px/28px Arial, Helvetica, sans-serif !important;
    white-space: nowrap !important;
    letter-spacing: -0.2px;
    text-decoration: none !important;
    z-index: 4;
  }
  body .es-original-header .es-oh-phone::before {
    content: '\260E';
    font: 400 19px/1 Arial, Helvetica, sans-serif;
  }
  body .es-original-header .es-oh-logo {
    top: 42px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 214px !important;
    height: auto !important;
    z-index: 2;
  }
  body .es-original-header .es-oh-logo img {
    display: block !important;
    width: 214px !important;
    height: auto !important;
    max-width: 100% !important;
  }
  /* The cart and account are currently unavailable; their labels are in the menu. */
  body .es-original-header .es-oh-actions { display: none !important; }
  /* If JS doesn't load, retain normal nav rather than leaving customers without links. */
  body .es-original-header .es-oh-nav {
    left: 10px !important;
    right: 10px !important;
    bottom: 4px !important;
    width: auto !important;
    gap: 11px !important;
  }
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav {
    display: none !important;
    position: absolute !important;
    top: 42px !important;
    right: 10px !important;
    left: auto !important;
    bottom: auto !important;
    z-index: 130 !important;
    box-sizing: border-box !important;
    width: min(285px, calc(100vw - 20px)) !important;
    max-height: min(70vh, 450px);
    margin: 0 !important;
    padding: 9px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    white-space: normal !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #fffdf4 !important;
    border: 2px solid #111 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.2) !important;
  }
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav.is-open {display:flex !important;}
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav a {
    display: block !important;
    padding: 10px 12px !important;
    min-height: 22px !important;
    font: 600 15px/1.4 Arial, Helvetica, sans-serif !important;
    white-space: normal !important;
    border-radius: 7px !important;
  }
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav a:hover,
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav a:focus-visible { background: #fbc42c !important; }
  .es-mobile-menu-disabled {
    display: block;
    padding: 8px 12px;
    font: 13px/1.35 Arial, Helvetica, sans-serif;
    color: #777;
  }
  .es-mobile-menu-toggle {
    position: absolute !important;
    right: 12px !important;
    top: 6px !important;
    width: 42px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 5px !important;
    border: 1.5px solid #111 !important;
    border-radius: 8px !important;
    background: transparent !important;
    color: #0e0e0e !important;
    cursor: pointer !important;
    z-index: 140 !important;
  }
  .es-mobile-menu-toggle span {
    display: block;
    width: 20px;
    height: 2px;
    background: currentColor;
    border-radius: 2px;
  }
  .es-mobile-menu-toggle[aria-expanded="true"] { background: rgba(255,255,255,.5) !important; }
  /* Let the green Sber backdrop show through both lower rounded header corners. */
  body .header-banner.banner-sber {
    position: relative !important;
    z-index: 0 !important;
    margin-top: -23px !important;
    padding-top: 23px !important;
    background: linear-gradient(105deg, #49df00 0%, #c9ec00 100%) !important;
    border-radius: 0 0 22px 22px !important;
    overflow: hidden !important;
  }
  body .header-banner.banner-sber .header-banner-wrap {
    background: transparent !important;
  }
  body .header-banner.banner-sber .banner-block-left {
    padding: 14px 14px 10px !important;
  }
  body .header-banner.banner-sber .banner-block.banner-botttom {
    margin-top: 5px !important;
  }
  body .header-banner.banner-sber .notice {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 7.6px !important;
    line-height: 1.09 !important;
    letter-spacing: 0 !important;
    font-weight: 400 !important;
  }
}
@media screen and (max-width: 370px) {
  body .es-original-header .es-oh-phone {font-size: 15px !important;}
  body .es-original-header .es-oh-logo,
  body .es-original-header .es-oh-logo img {width: 188px !important;}
}
@media screen and (min-width: 768px) {
  .es-mobile-menu-toggle {display:none !important;}
}

/* ESPRINGS final approved mobile header.  DESKTOP UNAFFECTED. */
@media (max-width:767px) {
  body .es-original-header {height:86px!important;min-height:0!important;border-bottom:10px solid #000!important;border-radius:0 0 22px 22px!important;overflow:visible!important;z-index:33!important;}
  body .es-original-header .es-oh-inner {height:76px!important;min-height:0!important;max-width:100%!important;position:relative!important;padding:0 10px!important;}
  body .es-original-header .es-oh-logo {position:absolute!important;top:16px!important;left:9px!important;right:auto!important;transform:none!important;width:clamp(124px,40vw,174px)!important;height:auto!important;z-index:3!important;}
  body .es-original-header .es-oh-logo img {display:block!important;width:100%!important;max-width:100%!important;height:auto!important;}
  body .es-original-header .es-oh-phone {position:absolute!important;top:24px!important;left:auto!important;right:49px!important;display:inline-flex!important;align-items:center!important;gap:5px!important;width:auto!important;color:#000!important;text-decoration:none!important;font:800 clamp(11.5px,3.25vw,15px)/23px Arial,sans-serif!important;letter-spacing:-.35px!important;white-space:nowrap!important;z-index:5!important;}
  body .es-original-header .es-oh-phone::before {content:''!important;display:block!important;flex:0 0 17px!important;width:17px!important;height:17px!important;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='m6.6 2.7 3.7 4.5-2 2a15.4 15.4 0 0 0 6.5 6.5l2-2 4.5 3.7c.5.4.6 1.1.4 1.7l-1.1 2.3c-.3.5-.8.8-1.4.8A19 19 0 0 1 1.9 5c0-.5.3-1.1.8-1.4L5 2.5c.6-.3 1.3-.2 1.6.2Z'/%3E%3C/svg%3E") center / contain no-repeat!important;}
  body .es-original-header .es-oh-actions,body .es-original-header .es-oh-search {display:none!important;}
  body .es-original-header .es-oh-nav {display:none!important;position:absolute!important;top:76px!important;right:8px!important;left:auto!important;bottom:auto!important;width:min(290px,calc(100vw - 16px))!important;max-height:min(68vh,440px)!important;margin:0!important;padding:9px!important;z-index:300!important;box-sizing:border-box!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;border:2px solid #111!important;border-radius:12px!important;background:#fffcf1!important;box-shadow:0 12px 26px #0003!important;white-space:normal!important;overflow-y:auto!important;overflow-x:hidden!important;}
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav.is-open {display:flex!important;}
  body .es-original-header .es-oh-nav a,body .es-original-header .es-oh-nav .es-mobile-menu-disabled {display:block!important;width:100%!important;min-height:40px!important;margin:0!important;padding:10px 12px!important;font:600 15px/1.35 Arial,sans-serif!important;white-space:normal!important;box-sizing:border-box!important;}
  body .es-original-header .es-oh-nav .es-mobile-menu-disabled {color:#777!important;font-weight:400!important;}
  body .es-original-header .es-mobile-menu-toggle {display:flex!important;position:absolute!important;right:7px!important;top:18px!important;width:37px!important;height:42px!important;border:0!important;border-radius:6px!important;background:transparent!important;box-shadow:none!important;padding:0!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:5px!important;color:#000!important;z-index:310!important;}
  body .es-original-header .es-mobile-menu-toggle span {display:block!important;width:25px!important;height:3px!important;border-radius:2px!important;background:#000!important;}
  body .es-original-header .es-mobile-menu-toggle[aria-expanded='true'] {background:#fff5!important;}
  body .header-banner.banner-sber {position:relative!important;z-index:0!important;margin-top:-23px!important;padding-top:23px!important;width:100%!important;overflow:hidden!important;border-radius:0 0 22px 22px!important;background:linear-gradient(105deg,#49df00 0%,#c9ec00 100%)!important;}
  body .header-banner.banner-sber .header-banner-wrap {background:transparent!important;}
  body .header-banner.banner-sber .banner-block-left {box-sizing:border-box!important;padding:5px 13px 9px!important;width:100%!important;}
  body .header-banner.banner-sber .banner-block.banner-middle {display:flex!important;gap:8px!important;align-items:center!important;justify-content:space-between!important;}
  body .header-banner.banner-sber .banner-title {font:400 clamp(16px,4.6vw,20px)/1.14 Arial,sans-serif!important;color:#fff!important;flex:1 1 auto!important;margin:0!important;}
  body .header-banner.banner-sber .banner-btn {display:inline-flex!important;flex:0 0 clamp(115px,36vw,145px)!important;width:clamp(115px,36vw,145px)!important;min-height:40px!important;max-width:44%!important;border-radius:30px!important;padding:6px 8px!important;font-size:clamp(10.5px,3vw,12.5px)!important;line-height:1.15!important;text-align:center!important;white-space:normal!important;}
  body .header-banner.banner-sber .banner-block.banner-botttom {margin-top:3px!important;}
  body .header-banner.banner-sber .notice {display:block!important;font:400 8px/1.1 Arial,sans-serif!important;letter-spacing:0!important;text-align:left!important;}
  body .block-manufacturing {margin-top:21px!important;margin-bottom:26px!important;}
  body .block-manufacturing .bm-title h1.big-title {font-size:clamp(24px,6.45vw,30px)!important;}
  body .block-manufacturing .bm-buttons {margin-top:15px!important;}
  body .block-manufacturing .bm-buttons .re-btn {min-height:48px!important;}
  body .block-manufacturing .bm-buttons .re-link {min-height:38px!important;}
  body .block-onmarket img,body .block-justintime img,body .block-mainform img,body .block-delivery img {max-width:100%!important;height:auto!important;}
}
@media(max-width:350px){body .es-original-header .es-oh-logo{width:124px!important;top:20px!important;}body .es-original-header .es-oh-phone{right:45px!important;gap:2px!important;font-size:11.2px!important;}body .es-original-header .es-oh-phone::before{width:14px!important;height:14px!important;flex-basis:14px!important;}body .es-original-header .es-mobile-menu-toggle{right:3px!important;}body .header-banner.banner-sber .notice{font-size:7.5px!important;}}
@media(min-width:768px){.es-mobile-menu-toggle,.es-mobile-menu-disabled{display:none!important;}}

/* Additional quick mobile polish, no changes to forms/logic. */
@media(max-width:767px){
  /* Retain approved artwork, remove its previous white-corner background. */
  body .es-original-header .es-oh-logo img{}
  /* The old desktop interactive dots create a long blank canvas on phones. */
  body .block-quality {height:auto!important;min-height:0!important;margin:0!important;padding:23px 0 25px!important;background:#fff!important;}
  body .block-quality>.container-fluid{height:auto!important;min-height:0!important;padding:0 18px!important;}
  body .block-quality .row {height:auto!important;min-height:0!important;display:block!important;margin:0!important;}
  body .block-quality .row>[class*='col-']{height:auto!important;min-height:0!important;width:100%!important;padding:0!important;}
  body .block-quality .bq-text {height:auto!important;min-height:0!important;margin:0!important;padding:0!important;}
  body .block-quality .bq-text .big-title{font:800 23px/1.14 Arial,sans-serif!important;text-align:left!important;margin:0 0 10px!important;text-transform:uppercase!important;}
  body .block-quality .bq-text .bq-desc {font:400 15px/1.45 Arial,sans-serif!important;padding:0!important;margin:0!important;}
  body .block-quality .bq-img{display:none!important;}
  /* The history and Just in Time sections remain readable without huge gaps. */
  body .block-onmarket {margin:0!important; padding:0!important;min-height:0!important;}
  body .block-justintime{height:auto!important;min-height:0!important;margin:0!important;padding:22px 0!important;}
  body .block-justintime .container-fluid {padding:0 18px!important;}
  body .block-justintime .jit-desc {font:400 15px/1.45 Arial,sans-serif!important;}
  body .block-justintime .jit-item {min-height:0!important;height:auto!important;display:flex!important;align-items:center!important;gap:13px!important;margin:0!important;padding:11px 0!important;}
  body .block-justintime .jit-item .icon{position:static!important;flex:0 0 42px!important;max-width:42px!important;}
  body .block-justintime .jit-title{margin:0!important;font:500 14px/1.35 Arial,sans-serif!important;}
  /* Compact steps and advantages, preserving existing content/icons. */
  body .block-workstages{height:auto!important;min-height:0!important;padding:22px 0!important;margin:0!important;}
  body .block-workstages .container-fluid{padding:0 18px!important;}
  body .block-workstages .big-title{font:800 23px/1.2 Arial,sans-serif!important;margin:0 0 18px!important;}
  body .block-workstages .bws-items{height:auto!important;min-height:0!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important;align-items:start!important;padding:0!important;}
  body .block-workstages .bws-item{position:static!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;flex-direction:column!important;gap:4px!important;}
  body .block-workstages .bws-item .icon{width:34px!important;height:34px!important;margin:0!important;background-size:contain!important;}
  body .block-workstages .bws-title{font:500 10px/1.25 Arial,sans-serif!important;text-align:center!important;margin:0!important;word-break:normal!important;}
  body .block-advantages{height:auto!important;min-height:0!important;padding:18px 0 24px!important;margin:0!important;}
  body .block-advantages .container-fluid{padding:0 14px!important;}
  body .block-advantages .row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin:0!important;}
  body .block-advantages .row>[class*='col-']{width:auto!important;padding:0!important;min-width:0!important;}
  body .block-advantages .badv-item{position:relative!important;min-height:96px!important;width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;margin:0!important;padding:12px 7px!important;border-radius:12px!important;background:#fff!important;box-shadow:0 1px 6px #0001!important;}
  body .block-advantages .badv-item .icon{position:static!important;width:35px!important;height:35px!important;margin:0!important;background-size:contain!important;}
  body .block-advantages .badv-title{font:600 12px/1.3 Arial,sans-serif!important;text-align:center!important;margin:0!important;}
  /* Forms and footer: keep existing forms, make spacing and fields friendly. */
  body .block-mainform {padding:20px 0!important;margin:0!important;}
  body .block-mainform .container-fluid {padding:0 15px!important;}
  body .block-mainform .bmf-desc .bmf-title {font:800 22px/1.2 Arial,sans-serif!important;}
  body .block-mainform .bmf-desc p:not(.bmf-title){font:400 14px/1.45 Arial,sans-serif!important;}
  body .block-mainform .panel-body{padding:16px!important;}
  body .block-delivery{padding:18px 0!important;}
  body .block-delivery .container-fluid{padding:0 15px!important;}
  body .block-delivery .bd-del-logo{row-gap:12px!important;}
}

@media(max-width:767px){
html:not(.es-mobile-menu-ready) body .es-original-header{height:116px!important;}
html:not(.es-mobile-menu-ready) body .es-original-header .es-oh-nav{display:flex!important;top:73px!important;left:8px!important;right:8px!important;width:auto!important;max-height:36px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;flex-direction:row!important;align-items:center!important;gap:9px!important;overflow-x:auto!important;overflow-y:hidden!important;}
html:not(.es-mobile-menu-ready) body .es-original-header .es-oh-nav a{display:inline-block!important;min-height:22px!important;width:auto!important;padding:4px!important;white-space:nowrap!important;font-size:12px!important;}
}


/* Esprings — selected mobile header, 2026-11-04. Desktop unaffected.
   Yellow #fbc42c, larger aligned black phone, logo left, original three-line menu right. */
@media screen and (max-width: 767px) {
  body .es-original-header {
    background: #fbc42c !important;
    height: 86px !important;
    min-height: 0 !important;
    border-bottom: 10px solid #000 !important;
    border-radius: 0 0 22px 22px !important;
    position: relative !important;
    z-index: 33 !important;
    overflow: visible !important;
  }
  body .es-original-header .es-oh-inner {
    height: 76px !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 8px !important;
    box-sizing: border-box !important;
    position: relative !important;
  }
  body .es-original-header .es-oh-logo {
    top: 21px !important;
    left: 8px !important;
    right: auto !important;
    width: clamp(112px, 36vw, 158px) !important;
    height: auto !important;
    transform: none !important;
    display: block !important;
    z-index: 3 !important;
  }
  body .es-original-header .es-oh-logo img {
    
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
  }
  /* Prevent legacy hanging spring decoration overlapping the new logo. */
  body .es-original-header .es-oh-logo::after { display: none !important; }
  body .es-original-header .es-oh-phone {
    position: absolute !important;
    top: 22px !important;
    left: auto !important;
    right: 48px !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    color: #000 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: clamp(16px, 5.15vw, 21.5px) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: -0.35px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    z-index: 5 !important;
  }
  body .es-original-header .es-oh-phone::before {
    content: '' !important;
    display: inline-block !important;
    flex: 0 0 19px !important;
    width: 19px !important;
    height: 19px !important;
    margin: 0 !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='m6.6 2.7 3.7 4.5-2 2a15.4 15.4 0 0 0 6.5 6.5l2-2 4.5 3.7c.5.4.6 1.1.4 1.7l-1.1 2.3c-.3.5-.8.8-1.4.8A19 19 0 0 1 1.9 5c0-.5.3-1.1.8-1.4L5 2.5c.6-.3 1.3-.2 1.6.2Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }
  body .es-original-header .es-oh-actions,
  body .es-original-header .es-oh-search {display: none !important;}
  /* Navigation remains hidden while the existing menu script supplies a toggle. */
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav {display: none !important;}
  html.es-mobile-menu-ready body .es-original-header .es-oh-nav.is-open {
    display: flex !important;
    top: 76px !important;
    right: 8px !important;
    left: auto !important;
    bottom: auto !important;
    width: min(292px, calc(100vw - 16px)) !important;
    background: #fffdf4 !important;
  }
  body .es-original-header .es-mobile-menu-toggle {
    position: absolute !important;
    top: 19px !important;
    right: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    width: 36px !important;
    height: 42px !important;
    padding: 0 !important;
    gap: 5px !important;
    border: 0 !important;
    border-radius: 6px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #000 !important;
    z-index: 310 !important;
  }
  body .es-original-header .es-mobile-menu-toggle span {
    width: 25px !important;
    height: 3px !important;
    border-radius: 3px !important;
    background: #000 !important;
  }
  /* Green banner extends beneath rounded bottom corners, no white triangular gaps. */
  body .header-banner.banner-sber {
    margin-top: -23px !important;
    padding-top: 23px !important;
    background: linear-gradient(105deg,#49df00,#c9ec00) !important;
  }
  body .header-banner.banner-sber .banner-block-left {
    padding-top: 5px !important;
  }
  /* Avoid the old script-less desktop navigation line visually colliding with the header. */
  html:not(.es-mobile-menu-ready) body .es-original-header .es-oh-nav {
    display: none !important;
  }
}
@media screen and (max-width: 350px) {
  body .es-original-header .es-oh-logo { width: 111px !important; }
  body .es-original-header .es-oh-phone {font-size: 16px !important; right: 44px !important; gap: 2px !important;letter-spacing:-.45px!important;}
  body .es-original-header .es-oh-phone::before {width: 15px !important;height: 15px !important;flex-basis: 15px !important;}
  body .es-original-header .es-mobile-menu-toggle {right: 3px !important;}
}


/* Esprings — alignment adjustment, 2026-11-04.
   Only mobile header; preserve the existing logo path and notice content. */
@media screen and (max-width: 767px) {
  body .es-original-header .es-oh-logo {
    top: 50% !important;
    left: 8px !important;
    width: clamp(116px, 39.5vw, 169px) !important;
    transform: translateY(-50%) !important;
  }
  body .es-original-header .es-oh-logo img {
    width: 100% !important;
    height: auto !important;
  }
  body .es-original-header .es-oh-phone {
    top: 50% !important;
    right: 48px !important;
    height: 38px !important;
    transform: translateY(-50%) !important;
    gap: 3px !important;
    font-size: clamp(16px, 4.65vw, 20px) !important;
  }
  body .es-original-header .es-oh-phone::before {
    width: 26px !important;
    height: 26px !important;
    flex: 0 0 26px !important;
  }
  body .es-original-header .es-mobile-menu-toggle {
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 36px !important;
    height: 42px !important;
  }
}
@media screen and (max-width: 370px) {
  body .es-original-header .es-oh-logo { width: clamp(112px, 37vw, 136px) !important; }
  body .es-original-header .es-oh-phone { font-size: 16px !important; right: 44px !important; gap: 2px !important; }
  body .es-original-header .es-oh-phone::before { width: 24px !important; height: 24px !important; flex-basis: 24px !important; }
}

/* 2026-11-05: Contact details ONLY on mobile; unchanged logo and menu. */
@media screen and (max-width: 767px) {
  body .es-original-header .es-oh-logo::after {
    display: none !important; /* hanging spring only on desktop */
  }
  body .es-original-header .es-oh-call-note {
    display: block !important;
    position: absolute !important;
    right: 54px !important;
    bottom: 4px !important;
    font: 600 11px/1 Arial, sans-serif !important;
    color: #000 !important;
    white-space: nowrap !important;
    z-index: 6 !important;
  }
  body .es-original-header .es-oh-email-desktop {display: none !important;}
  body .es-original-header .es-oh-email-mobile {
    position: absolute !important;
    right: 11px !important;
    bottom: 1px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 20px !important;
    color: #000 !important;
    z-index: 311 !important;
  }
  body .es-original-header .es-oh-email-mobile svg {width: 22px !important;height: 22px !important;}
}
@media screen and (max-width: 350px) {
  body .es-original-header .es-oh-call-note {font-size: 10px !important;right: 49px !important;}
  body .es-original-header .es-oh-email-mobile {right: 6px !important;}
}

/* 2026-11-05: Mobile contact stack under phone, no email icon.
   Desktop appearance, logo filename, notice text, and forms unchanged. */
@media screen and (max-width: 767px) {
  body .es-original-header { background: #fbc42c !important; height: 100px !important; }
  body .es-original-header .es-oh-inner { height: 90px !important; }
  body .es-original-header .es-oh-logo { top: 45px !important; }
  body .es-original-header .es-oh-phone {
    top: 8px !important;
    right: 46px !important;
    height: 32px !important;
    transform: none !important;
    font-weight: 800 !important;
  }
  body .es-original-header .es-oh-call-note {
    display: block !important;
    position: absolute !important;
    top: 39px !important;
    bottom: auto !important;
    right: 46px !important;
    width: 180px !important;
    text-align: center !important;
    font: 600 10px/12px Arial,sans-serif !important;
    color: #000 !important;
    white-space: nowrap !important;
    z-index: 6 !important;
  }
  body .es-original-header .es-oh-email-mobile {
    position: absolute !important;
    top: 53px !important;
    bottom: auto !important;
    right: 46px !important;
    width: 180px !important;
    height: 20px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    font: 700 14px/18px Arial,sans-serif !important;
    text-decoration: underline !important;
    color: #000 !important;
    z-index: 6 !important;
  }
  body .es-original-header .es-oh-email-mobile svg {display: none !important;}
  body .es-original-header .es-mobile-menu-toggle {top: 18px !important;}
}
@media screen and (max-width: 370px) {
  body .es-original-header .es-oh-call-note,
  body .es-original-header .es-oh-email-mobile {right: 40px !important; width: 163px !important;}
  body .es-original-header .es-oh-phone {right: 41px !important;}
}

/* 2026-11-05: phone labels from esprings-mobile-menu.js.
   Free call above number; email below; all aligned to same center line. */
@media screen and (max-width: 767px) {
  body .es-original-header .es-oh-phone {
    top: 25px !important;
    right: 46px !important;
    width: 180px !important;
    height: 28px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    transform: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }
  body .es-original-header .es-oh-call-note {
    top: 12px !important;
    right: 46px !important;
    bottom: auto !important;
    width: 180px !important;
    margin: 0 !important;
    text-align: center !important;
    font: 600 10px/12px Arial, sans-serif !important;
  }
  body .es-original-header .es-oh-email-mobile {
    top: 54px !important;
    right: 46px !important;
    bottom: auto !important;
    width: 180px !important;
    height: 20px !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    font: 700 14px/18px Arial, sans-serif !important;
  }
}
@media screen and (max-width: 370px) {
  body .es-original-header .es-oh-phone,
  body .es-original-header .es-oh-call-note,
  body .es-original-header .es-oh-email-mobile {
    right: 40px !important;
    width: 163px !important;
  }
}
@media (max-width: 767px) {
    body .es-original-header .es-mobile-menu-toggle {
        top: 39px !important;
        transform: translateY(-50%) !important;
    }
}
/* Цвет кнопки «Рассчитать стоимость» на телефонах */
@media (max-width: 767px) {
    .bm-buttons .re-btn {
        background: #fbc42c !important;
        background-color: #fbc42c !important;
        background-image: none !important;
        color: #000 !important;
    }
}