/* ================= Корзина ================= */
.g-cartpage{padding-bottom:20px}
.g-cart-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.g-cart-main{display:grid;gap:18px;min-width:0}
.g-cartcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(18px,2vw,28px)}
.g-cartcard>h2{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:800;margin:0 0 18px}
.g-cartcard .step-number{width:34px;height:34px;border-radius:11px;background:var(--accent);color:#fff;display:grid;place-items:center;font-family:var(--head);font-weight:800;font-size:15px;flex:none}
.g-cartpage .accordion-body{padding:0}
.g-cartpage .product{display:grid;grid-template-columns:84px minmax(0,1fr) auto auto 34px;gap:16px;align-items:center;background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:12px 16px;margin-bottom:10px;height:auto}
.g-cartpage .product .product-image{width:84px;height:84px;border-radius:12px;background-color:#fff;background-size:contain;background-repeat:no-repeat;background-position:center;margin:0}
.g-cartpage .product-detail{min-width:0}
.g-cartpage .product-name{font-family:var(--head);font-weight:700;font-size:15px;line-height:1.3;margin:0 0 4px;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.g-cartpage .product-sku{color:#8b96a8;font-size:12.5px;margin:0}
.g-unit{color:var(--muted);font-size:13px;margin-top:3px}
.g-cartpage .quantity-input{display:inline-flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.g-cartpage .quantity-input button{width:36px;height:40px;border:0;background:transparent;display:grid;place-items:center;font-size:18px;color:var(--ink);border-radius:0}
.g-cartpage .quantity-input button:hover{background:var(--soft2);color:var(--accent)}
.g-cartpage .quantity-input input{width:48px;height:40px;border:0;border-left:1px solid var(--line);border-right:1px solid var(--line);text-align:center;font-weight:700;font-family:var(--head);background:#fff}
.g-cartpage .product-price{font-family:var(--head);font-weight:800;font-size:18px;white-space:nowrap;min-width:110px;text-align:right}
.g-cartpage .product-remove .icon{font-size:22px;color:#98a3b6;cursor:pointer;transition:.15s}
.g-cartpage .product-remove .icon:hover{color:#d93025}
.g-cart-total{display:flex;justify-content:flex-end;align-items:baseline;gap:12px;padding-top:14px;margin-top:6px;border-top:1px solid var(--line);font-size:16px;color:var(--muted)}
.g-cart-total b{font-family:var(--head);font-size:24px;color:var(--ink);font-weight:800}
.g-cart-empty{text-align:center;padding:30px 10px 20px}
.g-cart-empty h3{font-size:22px;font-weight:800;margin:14px 0 6px}
.g-cart-empty p{color:var(--muted);margin:0 0 18px}
.g-cart-empty .g-btn{height:46px;padding:0 24px;text-decoration:none}

.g-seg{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.g-seg-item{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:14px;padding:14px 16px;cursor:pointer;background:#fff;transition:.15s;margin:0}
.g-seg-item:hover{border-color:#b9cbef}
.g-seg-item:has(input:checked){border-color:var(--accent);background:#f2f7ff;box-shadow:0 0 0 3px rgba(22,100,245,.10)}
.g-seg-item input{margin:0;flex:none;width:1.2em;height:1.2em;float:none}
.g-seg-item span{display:flex;flex-direction:column;gap:2px}
.g-seg-item b{font-family:var(--head);font-size:15px}
.g-seg-item small{color:var(--muted);font-size:12.5px}
.g-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.g-fields .g-wide{grid-column:1/-1}
.g-cartpage .form-label{font-weight:600;font-size:13.5px;color:#33405a;margin-bottom:6px}
.g-cartpage .form-control{height:48px;font-size:15px}
.g-cartpage .form-control.is-invalid{border-color:#d93025;background-image:none;background-color:#fff6f5}
.g-pickup{display:flex;gap:14px;align-items:flex-start;background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.g-pickup svg{color:var(--accent);flex:none;margin-top:2px}
.g-pickup div{display:flex;flex-direction:column;gap:2px}
.g-pickup b{font-family:var(--head)}
.g-pickup span{font-size:15px}
.g-pickup small{color:var(--muted)}
.g-deliv-methods{background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-top:6px}
.g-deliv-methods>b{font-family:var(--head);display:block;margin-bottom:8px}
.g-deliv-methods ul{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:6px}
.g-deliv-methods li{display:flex;justify-content:space-between;gap:10px;font-size:14px}
.g-deliv-methods em{font-style:normal;font-weight:700;color:var(--accent);white-space:nowrap}
.g-deliv-methods small{color:var(--muted)}

.g-cart-side{display:grid;gap:14px;position:sticky;top:92px}
.g-sumcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 10px 30px rgba(22,60,140,.08)}
.g-sumcard h3{font-size:20px;font-weight:800;margin:0 0 14px}
.g-sum-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:14.5px;color:var(--muted)}
.g-sum-row b{color:var(--ink);font-family:var(--head);text-align:right}
.g-sum-note{margin:6px 0 0;font-size:12.5px;color:#7a4b00;background:#fff7e8;border:1px solid #fde5b6;border-radius:10px;padding:8px 10px}
.g-sum-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);margin-top:10px;padding-top:14px}
.g-sum-total span{font-weight:600}
.g-sum-total b{font-family:var(--head);font-size:26px;font-weight:800;color:var(--accent)}
.g-sumcard #create_order_button{width:100%;margin:16px 0 0!important;height:52px;display:flex;align-items:center;justify-content:center;font-size:16px!important}
.g-sum-agree{margin:10px 0 0;font-size:12px;color:var(--muted);text-align:center}
.g-infocard{background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:18px 20px}
.g-infocard h4{font-size:15px;font-weight:800;margin:0 0 12px}
.g-infocard ul{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:10px}
.g-infocard li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.g-infocard li i{width:34px;height:34px;border-radius:10px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--accent);flex:none;font-style:normal}
.g-helpcard{display:flex;flex-direction:column;gap:6px;background:linear-gradient(120deg,#0d2a63,#1456d8);border:0;color:#fff}
.g-helpcard h4{color:#fff}
.g-help-phone{font-family:var(--head);font-weight:800;font-size:22px;color:#fff!important}
.g-helpcard span{color:#cfe0ff;font-size:13.5px;margin-bottom:8px}
.g-helpcard .g-btn-o{background:rgba(255,255,255,.14)!important;color:#fff!important;border-color:rgba(255,255,255,.4)!important;height:44px;text-decoration:none}
.g-helpcard .g-btn-o:hover{background:#fff!important;color:var(--accent)!important}

@media (max-width:1199px){.g-cart-grid{grid-template-columns:minmax(0,1fr) 330px}}
@media (max-width:991px){
  .g-cart-grid{grid-template-columns:1fr}
  .g-cart-side{position:static}
}
@media (max-width:640px){
  .g-cartpage .product{grid-template-columns:64px minmax(0,1fr) 30px;gap:8px 12px;padding:12px}
  .g-cartpage .product .product-image{width:64px;height:64px;grid-row:span 2}
  .g-cartpage .product-quantity{grid-column:2;grid-row:2}
  .g-cartpage .product-price{grid-column:2;grid-row:3;text-align:left;min-width:0}
  .g-cartpage .product-remove{grid-column:3;grid-row:1}
  .g-seg,.g-fields{grid-template-columns:1fr}
}

/* перекрытие старых стилей корзины */
.cart-page .g-cartcard .step-number{border:0!important;background:var(--accent)!important;color:#fff!important;width:34px;height:34px;border-radius:11px;margin:0}
.cart-page .g-seg,.cart-page #step-contact-info .contact-info-client-type,.cart-page #step-grab-type .grab-types{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;justify-content:stretch}
.cart-page #step-contact-info .contact-info-client-type .form-check,.cart-page #step-grab-type .grab-types .form-check{display:flex}
.g-cartpage .product .product-name{font-size:15px!important;font-weight:700!important}
.g-cartpage .product .product-price{font-size:18px!important}
.g-cartpage .quantity-input{width:auto}
.g-cartpage .product .product-image{border:1px solid var(--line)}

/* выбор способа доставки */
.g-methods{display:grid;gap:10px;margin-bottom:10px}
.g-method{display:grid;grid-template-columns:auto 44px minmax(0,1fr) auto;gap:14px;align-items:center;background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:12px 16px;cursor:pointer;transition:.15s;margin:0}
.g-method:hover{border-color:#b9cbef}
.g-method:has(input:checked){border-color:var(--accent);background:#f2f7ff;box-shadow:0 0 0 3px rgba(22,100,245,.10)}
.g-method input{margin:0;width:1.2em;height:1.2em;float:none}
.g-method-ico{width:44px;height:44px;border-radius:12px;background:var(--soft);display:grid;place-items:center;color:var(--accent)}
.g-method:has(input:checked) .g-method-ico{background:#fff}
.g-method-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.g-method-t b{font-family:var(--head);font-size:14.5px;line-height:1.25}
.g-method-t small{color:var(--muted);font-size:12.5px}
.g-method em{font-style:normal;font-family:var(--head);font-weight:700;font-size:13.5px;color:var(--accent);white-space:nowrap}
.g-deliv-methods{background:transparent;border:0;padding:0;margin-top:6px}
.g-deliv-methods>b{font-size:16px;margin-bottom:10px}
@media (max-width:560px){.g-method{grid-template-columns:auto minmax(0,1fr);}.g-method-ico{display:none}.g-method em{grid-column:2}}
.g-cart-login{margin:-6px 0 16px;font-size:14px;color:var(--muted)}
.g-cart-login a{color:var(--accent);font-weight:700}
.g-cart-login-ok{color:var(--green)}

/* реквизиты юридического лица */
.g-company{background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:16px}
.g-company-head{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.g-company-ico{width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;color:var(--accent);flex:none}
.g-company-head div{display:flex;flex-direction:column;gap:2px}
.g-company-head b{font-family:var(--head);font-size:16px}
.g-company-head small{color:var(--muted);font-size:12.5px}
.g-company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px}
.g-company-grid .g-c-wide{grid-column:1/-1}
.g-company-grid>div:nth-of-type(3){grid-column:span 2}
.g-company-grid>div:nth-of-type(4){grid-column:span 2}
.g-company-grid>div:nth-of-type(5),.g-company-grid>div:nth-of-type(6){grid-column:span 1}
.g-company .form-control{background:#fff}
.g-company .form-label{margin-bottom:5px}
@media (max-width:760px){.g-company-grid{grid-template-columns:1fr 1fr}.g-company-grid>div:nth-of-type(3),.g-company-grid>div:nth-of-type(4){grid-column:1/-1}}
@media (max-width:480px){.g-company-grid{grid-template-columns:1fr}.g-company-grid>div:nth-of-type(n){grid-column:1/-1}}
.g-company-grid>div:nth-of-type(7){grid-column:span 2}
@media (max-width:760px){.g-company-grid>div:nth-of-type(7){grid-column:1/-1}}
