/* ================= Телефон: исправления вёрстки ================= */

/* шапка на узких экранах */
@media (max-width:420px){
  .g-header-in{gap:8px}
  .g-logo img.logo{height:30px}
  .g-catalog-btn{padding:0 12px!important;height:42px;gap:6px}
  .g-icons{gap:12px}
  .g-burger{padding:2px}
}

/* личный кабинет: колонка не шире экрана */
@media (max-width:991px){
  .g-cab{grid-template-columns:minmax(0,1fr)}
  .g-cab-side,.g-cab-main{min-width:0;max-width:100%}
  .g-cab-nav{max-width:100%}
}

/* услуги: быстрые ссылки в сетку, без горизонтальной прокрутки */
@media (max-width:640px){
  .g-squick{display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:visible;margin-inline:0;padding-inline:0}
  .g-squick a{flex:none;height:auto;min-height:48px;padding:10px 12px;font-size:13px;line-height:1.25;gap:8px}
  .g-squick a svg{flex:none}
}

/* популярные товары: на телефоне сетка 2×2 (4 товара), без слайдера */
@media (max-width:768px){
  .slider-popular{display:grid!important;grid-template-columns:1fr 1fr;gap:10px;margin:0!important}
  .slider-popular .g-slide{padding:0!important;display:block}
  .slider-popular .g-slide:nth-child(n+5){display:none}
  .slider-popular .product{padding:12px}
  .slider-popular .product-image{height:120px}
  .slider-popular .product-name{font-size:13px;min-height:34px}
  .slider-popular .product-price{font-size:16px}
  .slider-popular .product-action .btn{height:40px;font-size:13px!important}
}

/* подвал на телефоне */
@media (max-width:640px){
  footer.g-footer{margin-top:28px;text-align:left}
  .g-footer .g-ft{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px;padding-block:26px 8px}
  .g-footer .g-ft>*{min-width:0;text-align:left}
  .g-footer .g-brand{grid-column:1/-1;order:1;display:flex;align-items:center;justify-content:space-between;gap:14px}
  .g-footer .g-brand img.logo{height:36px;margin:0}
  .g-footer .g-brand p{display:none}
  .g-footer .g-soc{margin:0}
  .g-footer .g-ft>div:nth-child(2){grid-column:1/-1;order:2;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
  .g-footer .g-ft>div:nth-child(2) h4{margin-bottom:12px}
  .g-footer .g-ct{gap:10px}
  .g-footer .g-ct a,.g-footer .g-ct div{font-size:14px;text-align:left;justify-content:flex-start}
  .g-footer .g-ft>div:nth-child(3){order:3}
  .g-footer .g-ft>div:nth-child(5){order:4}
  .g-footer .g-ft>div:nth-child(4){grid-column:1/-1;order:5}
  .g-footer h4{font-size:14px;margin:0 0 10px;text-align:left}
  .g-footer ul{gap:9px;text-align:left}
  .g-footer ul li,.g-footer ul a{text-align:left;font-size:14px}
  .g-legal{padding-block:14px 22px;text-align:left}
}

/* сетки не должны растягиваться содержимым */
.g-cart-grid{grid-template-columns:minmax(0,1fr) 380px}
@media (max-width:1199px){.g-cart-grid{grid-template-columns:minmax(0,1fr) 330px}}
@media (max-width:991px){.g-cart-grid{grid-template-columns:minmax(0,1fr)}}
.g-cart-main,.g-cart-side,.g-cartcard{min-width:0;max-width:100%}
.g-wsteps{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1199px){.g-wsteps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.g-wsteps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.g-wsteps{grid-template-columns:minmax(0,1fr)}}
.g-wsteps li{min-width:0;overflow-wrap:anywhere}
@media (max-width:640px){
  .cart-page .g-seg,.cart-page #step-contact-info .contact-info-client-type,.cart-page #step-grab-type .grab-types{grid-template-columns:minmax(0,1fr)!important}
  .g-seg-item{min-width:0}
}

/* популярные товары на телефоне: одна строка, видно 3, остальные листаются пальцем */
@media (max-width:768px){
  .slider-popular{display:flex!important;flex-wrap:nowrap;grid-template-columns:none;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -16px!important;padding:2px 16px 8px;scrollbar-width:none}
  .slider-popular::-webkit-scrollbar{display:none}
  .slider-popular .g-slide{flex:0 0 calc((100% - 32px - 16px)/3);min-width:0;scroll-snap-align:start;padding:0!important}
  .slider-popular .g-slide:nth-child(n+5){display:none}
  .slider-popular .product{padding:8px 8px 10px;border-radius:14px}
  .slider-popular .product-image{height:84px;margin:2px 0 8px}
  .slider-popular .product-name{font-size:11.5px;line-height:1.25;min-height:29px;margin-bottom:4px;-webkit-line-clamp:2}
  .slider-popular .product-sku{display:none}
  .slider-popular .product-price{font-size:13px;margin:0 0 8px}
  .slider-popular .product-action .btn{height:32px;font-size:11px!important;padding:0 4px!important;border-radius:9px!important}
  .slider-popular .product-action .favorite-icon{display:none}
}
@media (max-width:768px){
  .slider-popular{scroll-padding-left:16px}
  .slider-popular .product-price{white-space:nowrap;font-size:12.5px;letter-spacing:-.2px}
  .slider-popular .product-name{text-align:left;padding-left:2px}
  .slider-popular .product-price{text-align:left;padding-left:2px}
  .slider-popular .product{align-items:stretch}
}

/* ===== Популярные: ровно 3 карточки в строку, без выезда за края ===== */
.g-all-mob{display:none}
@media (max-width:768px){
  .g-all-desk{display:none}
  .slider-popular{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible;margin:0!important;padding:0;scroll-snap-type:none}
  .slider-popular .g-slide{flex:none;min-width:0}
  .slider-popular .g-slide:nth-child(n+4){display:none}
  .slider-popular .product{padding:8px 7px 9px}
  .slider-popular .product-price{font-size:12px}
  .slider-popular .product-name{font-size:11px}
  .g-all-mob{display:flex;width:100%;height:46px;margin-top:12px;text-decoration:none}
}

/* ===== Личный кабинет на телефоне: аккуратная сетка кнопок ===== */
@media (max-width:991px){
  .g-cab-side{padding:14px}
  .g-cab-user{padding:2px 2px 12px;margin-bottom:12px}
  .g-cab-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible!important;margin:0!important;padding:0!important}
  .g-cab-link{width:100%!important;height:46px;padding:0 12px;border:1.5px solid var(--line);border-radius:12px;background:#fff;font-size:14px;white-space:normal;justify-content:flex-start;gap:8px;min-width:0}
  .g-cab-link.active{border-color:var(--accent);background:#e4edff}
  .g-cab-link svg{width:18px;height:18px}
  .g-cab-out{grid-column:1/-1;margin:0!important;border:1.5px solid #f3c9c4!important;border-radius:12px!important;justify-content:center;height:46px}
  .g-cab-hero{padding:18px}
  .g-cab-stats{width:100%;gap:8px}
  .g-cab-stats div{flex:1;min-width:0;padding:10px 12px}
  .g-cab-stats b{font-size:17px;word-break:break-word}
  .g-cab-sec{padding:16px}
  .g-order-head{padding:12px 14px}
  .g-order-items{padding:4px 14px}
  .g-order-sum{margin-left:0;width:100%}
  .g-cabform .g-btn{width:100%;justify-self:stretch}
}

/* ===== Популярные на телефоне: аккуратные карточки (v2) ===== */
@media (max-width:768px){
  .slider-popular{gap:10px}
  .slider-popular .product{position:relative;padding:10px 10px 52px;border-radius:16px;min-height:0}
  .slider-popular .product>a{display:block}
  .slider-popular .product-image{height:104px;margin:0 0 10px;background-origin:content-box}
  .slider-popular .product-name{font-size:12px;line-height:1.3;min-height:31px;margin:0 0 6px;padding:0;font-weight:700}
  .slider-popular .product-price{font-size:13.5px;margin:0;padding:0;line-height:36px;height:36px;display:block}
  .slider-popular .product-action{position:absolute;left:auto;right:8px;bottom:8px;margin:0;display:block}
  .slider-popular .product-action .btn{width:36px;height:36px!important;padding:0!important;border-radius:11px!important;font-size:0!important;color:transparent!important;display:block;position:relative;overflow:hidden}
  .slider-popular .product-action .btn::after{content:"";position:absolute;inset:0;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l2.5 12h11L21 7H6'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3C/svg%3E") center/20px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h3l2.5 12h11L21 7H6'/%3E%3Ccircle cx='9' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3C/svg%3E") center/20px no-repeat}
  .slider-popular .product-price.g-onrequest{font-size:11px}
}
@media (max-width:380px){
  .slider-popular{gap:8px}
  .slider-popular .product{padding:8px 8px 50px}
  .slider-popular .product-price{font-size:12.5px}
}
@media (max-width:640px){
  .g-sc{padding:12px 10px}
  .g-sc h3{font-size:12.5px;overflow-wrap:normal;word-break:normal;hyphens:manual}
}

/* Решения под ключ: шаги переносятся на следующую строку, без прокрутки вбок */
@media (max-width:991px){
  .g-steps{flex-wrap:wrap!important;overflow:visible!important;gap:6px}
  .g-steps li{flex:0 1 auto!important;font-size:13px;padding:3px 10px 3px 3px}
  .g-steps b{width:20px;height:20px;font-size:11px}
}

/* iPhone/iPad увеличивают страницу при фокусе на поле с шрифтом меньше 16px: поля ввода всегда 16px */
@media (max-width:991px),(pointer:coarse){
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]):not([type=submit]):not([type=button]):not(.g-codeinput),
  select,textarea{font-size:16px!important}
}

/* ===== Каталог в мобильной версии: плитки разделов 2×2, подразделы компактными группами ===== */
@media (max-width:991px){
  header.g-header .menu.g-menu .menu-inner{margin:8px 10px 0!important;max-height:calc(100vh - 96px)!important;max-height:calc(100dvh - 96px)!important;min-height:0!important;border-radius:20px!important;overflow:hidden!important;flex-direction:column!important;box-shadow:0 20px 50px rgba(10,25,60,.3)}
  header.g-header .menu .menu-inner>.nav{display:grid!important;margin:0!important;box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px!important;padding:10px!important;width:100%!important;min-width:0!important;flex:none;overflow:visible!important;border-radius:0!important}
  header.g-header .menu .menu-inner .nav-pills .nav-link{display:flex!important;align-items:center;justify-content:center!important;text-align:center!important;min-height:46px;width:auto!important;margin:0!important;padding:8px 10px!important;font-size:13.5px!important;line-height:1.2;white-space:normal;border-radius:12px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2)!important}
  header.g-header .menu .menu-inner .nav-pills .nav-link.active{background:#fff!important;color:var(--accent)!important}
  header.g-header .menu .menu-inner .nav-pills .nav-link svg{display:none!important}
  header.g-header .menu .menu-inner .tab-content{padding:12px 12px 18px!important;flex:1 1 auto;min-height:0;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .g-pane-head{margin-bottom:10px;padding-bottom:10px;gap:10px}
  .g-pane-head b{font-size:17px;line-height:1.2}
  .g-pane-head a{font-size:13px}
  .g-pane-grid{grid-template-columns:1fr!important;gap:10px!important}
  header.g-header .menu .g-pane-grid .category-box{display:block!important;padding:12px!important;border-radius:14px}
  header.g-header .menu .g-pane-grid .category-image{display:none!important}
  header.g-header .menu .g-pane-grid .category-list{display:flex!important;flex-wrap:wrap;gap:6px!important}
  header.g-header .menu .g-pane-grid .category-list .category-parent{flex:0 0 100%;font-size:15px!important;margin:0 0 4px!important}
  header.g-header .menu .g-pane-grid .category-list .category-child{padding:6px 11px!important;font-size:13px!important;line-height:1.25;border-radius:999px;background:#fff;border:1px solid var(--line)}
  header.g-header .menu .g-pane-grid.g-pane-one .category-child{font-size:13px!important;padding:6px 11px!important}
}

/* сворачиваемые группы подразделов в мобильном каталоге */
.g-acc-toggle{display:none}
@media (max-width:991px){
  header.g-header .menu .g-pane-grid .category-list{position:relative}
  header.g-header .menu .g-pane-grid .category-list .category-parent{flex:0 0 100%;min-width:0;padding-right:70px;box-sizing:border-box}
  .g-acc-toggle{display:inline-flex;align-items:center;gap:6px;position:absolute;right:0;top:-2px;margin:0;height:30px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font:600 12.5px/1 var(--font)}
  .g-acc-toggle svg{transition:.2s}
  .category-box.g-open .g-acc-toggle{background:var(--accent);border-color:var(--accent);color:#fff}
  .category-box.g-open .g-acc-toggle svg{transform:rotate(180deg)}
  header.g-header .menu .g-pane-grid .category-box:not(.g-open) .category-child{display:none!important}
  header.g-header .menu .menu-inner .tab-content{padding-bottom:28px!important}
}
@media (max-width:991px){
  header.g-header .menu .g-pane-grid .category-box:not(.g-open) .category-parent{border-bottom:0!important;padding-bottom:0!important;margin-bottom:0!important}
}
@media (max-width:991px){
  /* старые стили ограничивали внешний блок меню по высоте и прятали нижние подразделы */
  header.g-header .menu.g-menu{max-height:none!important;overflow:visible!important;height:auto!important}
}
