/* Shop-specific styling: archive, single product, cart, checkout. */

/* ------------------------------------------------- Woo primary buttons */
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
#payment #place_order,
.woocommerce #place_order{
  background:var(--fq-grad);color:#fff;border:0;border-radius:999px;
  padding:15px 28px;font-size:15px;font-weight:700;line-height:1.2;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
#payment #place_order:hover{
  color:#fff;box-shadow:0 10px 24px rgba(230,0,126,.28);transform:translateY(-1px)
}
.woocommerce .cart_totals .checkout-button,
.woocommerce .wc-proceed-to-checkout .checkout-button{display:block;width:100%;text-align:center}
.woocommerce button.button.alt:disabled,.woocommerce button.button.alt[disabled]{opacity:.5;box-shadow:none;transform:none}

/* --------------------------------------------------------------- archive */
.fq-archive-head{padding:28px 0 8px;background:linear-gradient(180deg,#fff, #FBFBFC)}
.fq-archive-head h1{font-size:clamp(28px,3vw,42px);margin-bottom:10px}
.fq-archive-desc{max-width:760px;color:var(--fq-ink-2)}
.fq-cat-nav{display:flex;align-items:flex-start;gap:8px;margin:18px 0 6px}
.fq-cat-chips{display:flex;flex:1;flex-wrap:wrap;gap:8px}
.fq-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--fq-line);border-radius:999px;padding:9px 16px;font-size:14px;font-weight:600}
.fq-chip span{color:var(--fq-muted);font-size:12.5px}
.fq-chip:hover{border-color:var(--fq-pink);color:var(--fq-pink)}
.fq-chip.is-active{background:var(--fq-ink);border-color:var(--fq-ink);color:#fff}
.fq-chip.is-active span{color:rgba(255,255,255,.7)}
.fq-more-categories{position:relative}
.fq-more-categories summary{cursor:pointer;list-style:none}
.fq-more-categories summary::-webkit-details-marker{display:none}
.fq-more-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:20;display:grid;gap:2px;min-width:210px;padding:8px;background:#fff;border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm);box-shadow:var(--fq-shadow)}
.fq-more-menu a{padding:9px 12px;border-radius:8px;font-size:14px}
.fq-more-menu a:hover,.fq-more-menu a.is-active{background:var(--fq-soft);color:var(--fq-pink)}
/* Только вертикальные отступы: сокращённая запись перебивала боковой padding у .fq-wrap,
   и на телефоне сетка товаров прилипала к краям экрана. */
.fq-archive-body{padding-top:22px;padding-bottom:72px}
.fq-archive-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-bottom:20px;font-size:14px;color:var(--fq-muted)}
.fq-archive-toolbar .woocommerce-ordering select{padding:10px 14px;border-radius:999px;border:1px solid var(--fq-line);background:#fff;font-family:inherit}
.fq-empty{padding:40px 0;color:var(--fq-muted)}
.woocommerce nav.woocommerce-pagination ul{display:flex;gap:8px;list-style:none;padding:32px 0 0;justify-content:center;border:0}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:999px;border:1px solid var(--fq-line);font-weight:700}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--fq-grad);color:#fff;border-color:transparent}

/* -------------------------------------------------------- single product */
.single-product .fq-breadcrumbs{padding-top:18px;margin-bottom:18px}
.fq-single{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:52px;padding:18px 0 64px;align-items:start}
/* minmax(0,…) + min-width:0: иначе грид-колонка раздувается по min-content галереи
   (flexslider + миниатюры) и картинка уезжает за экран — «отлетают картинки». */
.fq-single>*{min-width:0}
.single-product .fq-single-gallery .woocommerce-product-gallery{float:none!important;width:100%!important;max-width:100%!important;margin:0!important}
.single-product .fq-single-gallery .flex-viewport{max-width:100%}
.single-product .fq-single-gallery .woocommerce-product-gallery__wrapper{overflow:hidden}
.single-product .fq-single-gallery img{max-width:100%;height:auto}
.woocommerce div.product .fq-tiers,.woocommerce div.product .related.products,.woocommerce div.product .upsells.products{clear:both}
.woocommerce-product-gallery__wrapper{border:1px solid var(--fq-line);border-radius:var(--fq-radius);background:var(--fq-soft);padding:26px}
.woocommerce-product-gallery__image img{border-radius:12px}
.woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:10px;margin-top:14px;padding:0;list-style:none}
/* WooCommerce задаёт миниатюрам width:25% селектором с большей специфичностью */
.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce-product-gallery .flex-control-thumbs li{width:72px!important;flex:0 0 72px}
.woocommerce-product-gallery .flex-control-thumbs img{border-radius:10px;border:1px solid var(--fq-line);cursor:pointer}
.woocommerce-product-gallery .flex-control-thumbs img{cursor:pointer}

.fq-single-summary{margin:0;float:none!important;width:100%!important}
.fq-single-summary .fq-card-cat{display:inline-block;margin-bottom:10px}
.single-product .product_title{font-size:clamp(26px,2.6vw,38px);margin-bottom:8px}
.single-product .price{display:flex;align-items:baseline;gap:8px;font-size:30px;font-weight:800;color:var(--fq-ink);margin:6px 0 18px}
.single-product .price small{font-size:13px;color:var(--fq-muted)}
.single-product .woocommerce-product-details__short-description{color:var(--fq-ink-2)}
.single-product form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}
.single-product .quantity input[type=number]{width:96px;padding:13px 14px;border-radius:999px;border:1px solid var(--fq-line);font-family:inherit;font-weight:700}
.single-product .single_add_to_cart_button{min-width:220px}
.fq-whatsapp-order{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border:1px solid #24a85b;border-radius:999px;background:#effbf3;color:#146b3d;font-size:14px;font-weight:800;line-height:1.2}
.fq-whatsapp-order:hover{background:#dcf7e5;color:#105832}
.fq-whatsapp-order:focus-visible{outline:2px solid #18744a;outline-offset:2px}
.single-product .variations{width:100%;margin:0 0 18px;border-collapse:collapse}
.single-product .variations th,.single-product .variations td{padding:10px 0;text-align:left;vertical-align:middle;border-bottom:1px solid var(--fq-line)}
.single-product .variations th{width:38%;font-size:14px;font-weight:700;color:var(--fq-ink-2)}
.single-product .variations select{
  width:100%;padding:12px 14px;border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm);
  font-family:inherit;font-size:15px;background:#fff;color:var(--fq-ink)
}
.single-product .variations select:focus{outline:none;border-color:var(--fq-pink);box-shadow:0 0 0 3px rgba(230,0,126,.12)}
.single-product .variations select.fq-select-enhanced{display:none!important}
.fq-variation-options{display:flex;flex-wrap:wrap;gap:8px}
.fq-variation-option{background:#fff;color:var(--fq-ink);border:1px solid var(--fq-line);border-radius:999px;padding:10px 15px;font-size:14px;font-weight:700;box-shadow:none;transform:none}
.fq-variation-option:hover{background:var(--fq-soft);color:var(--fq-ink);box-shadow:none;transform:none}
.fq-variation-option.is-active{background:#fff0f7;border-color:var(--fq-pink);color:var(--fq-pink)}
.fq-variation-option:focus-visible{outline:2px solid var(--fq-pink);outline-offset:2px}
.fq-variation-option:disabled{opacity:.45;cursor:not-allowed}
.single-product .reset_variations{font-size:13px;color:var(--fq-muted)}
.single-product .woocommerce-variation-description{display:none}
.single-product .woocommerce-variation-price{margin-bottom:12px;font-size:20px;font-weight:800}
.single-product .single_add_to_cart_button.disabled,.single-product .single_add_to_cart_button[disabled]{opacity:.55}
.fq-price-req{color:var(--fq-orange);font-size:20px;font-weight:800}
.fq-quote{background:var(--fq-soft);border:1px solid var(--fq-line);border-radius:var(--fq-radius);padding:20px;margin:18px 0}
.fq-quote-text{font-size:14.5px;color:var(--fq-ink-2);margin-bottom:14px}

.single-product .product_meta{font-size:13px;color:var(--fq-muted)}
.fq-facts{width:100%;border-collapse:collapse;margin:22px 0;font-size:14.5px}
.fq-facts th,.fq-facts td{text-align:left;padding:10px 0;border-bottom:1px solid var(--fq-line);vertical-align:top}
.fq-facts th{width:42%;color:var(--fq-muted);font-weight:600}
.fq-ship-note{display:flex;gap:10px;align-items:flex-start;background:var(--fq-soft);border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm);padding:14px 16px;font-size:14px;color:var(--fq-ink-2);margin:18px 0}
.fq-ship-icon{font-size:16px;line-height:1.4}
.fq-tiers{margin:8px 0 36px}
.fq-tiers h2{font-size:22px;margin-bottom:14px}
.fq-tiers table,.fq-tiers th,.fq-tiers td{border:1px solid var(--fq-line);border-collapse:collapse}
.fq-tiers table{width:100%;max-width:520px;font-size:15px}
.fq-tiers th,.fq-tiers td{padding:12px 16px;text-align:left}
.fq-tiers thead th{background:var(--fq-soft);font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--fq-muted)}
.fq-tiers-note{font-size:14px;color:var(--fq-muted);margin-top:10px}
.fq-full-description{clear:both;margin:0 0 36px}
.fq-full-description details{border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm);background:#fff}
.fq-full-description summary{position:relative;cursor:pointer;list-style:none;padding:18px 48px 18px 20px;font-size:18px;font-weight:800}
.fq-full-description summary::-webkit-details-marker{display:none}
.fq-full-description-title{display:inline;margin:0;font-size:inherit;font-weight:inherit;letter-spacing:0;line-height:inherit}
.fq-full-description summary::after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);color:var(--fq-pink);font-size:24px;font-weight:500}
.fq-full-description details[open] summary::after{content:'−'}
.fq-full-description summary:focus-visible{outline:2px solid var(--fq-pink);outline-offset:2px}
.fq-full-description-content{padding:0 20px 20px;color:var(--fq-ink-2);line-height:1.7}
.fq-full-description-content>*:last-child{margin-bottom:0}
.related.products,.upsells.products{margin-top:48px}
.related.products h2,.upsells.products h2{margin-bottom:22px}
.single-product .product > .fq-wrap{padding-bottom:64px}

/* ------------------------------------------------------------ cart page */
.woocommerce-cart .woocommerce,.woocommerce-checkout .woocommerce{padding:40px 0 72px}
.woocommerce-cart .fq-page-body,.woocommerce-checkout .fq-page-body{display:block}
.woocommerce-cart .fq-shop-page,.woocommerce-checkout .fq-shop-page{max-width:var(--fq-wrap)}
.woocommerce-cart .woocommerce>h1,.woocommerce-checkout .woocommerce>h1{margin-bottom:18px}
.woocommerce-cart .woocommerce-cart-form{float:none;width:100%}
.woocommerce-cart .cart-collaterals{float:none;width:100%}
/* Корзина и чекаут: две колонки на гриде (layout.css WooCommerce отключён) */
.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:40px;align-items:start}
.woocommerce-cart .woocommerce>h1,
.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart .cart-empty,
.woocommerce-cart .return-to-shop{grid-column:1/-1}
.woocommerce-cart form.woocommerce-cart-form{grid-column:1}
.woocommerce-cart .cart-collaterals{grid-column:2}
/* У классического чекаута поля и блок заказа лежат внутри form.checkout,
   поэтому сетка задаётся на форме, а не на внешнем контейнере. */
.woocommerce-checkout form.checkout.woocommerce-checkout{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:44px;align-items:start
}
.woocommerce-checkout form.checkout .woocommerce-account-fields,
.woocommerce-checkout form.checkout #customer_details{grid-column:1;min-width:0}
.woocommerce-checkout form.checkout #order_review_heading,
.woocommerce-checkout form.checkout #order_review{grid-column:2;min-width:0;width:100%}
.woocommerce-checkout form.checkout #customer_details{width:100%;max-width:none}
.woocommerce-checkout form.checkout #order_review_heading{margin-top:0;grid-row:1}
.woocommerce-checkout #customer_details{grid-row:1/span 2}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{float:none;width:100%}
.woocommerce-checkout .woocommerce-additional-fields{grid-column:1}
.woocommerce-cart table.shop_table{border:1px solid var(--fq-line);border-radius:var(--fq-radius);border-collapse:separate;border-spacing:0;overflow:hidden}
.woocommerce-cart table.shop_table th{background:var(--fq-soft);padding:14px 16px;text-align:left;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--fq-muted)}
.woocommerce-cart table.shop_table td{padding:16px;border-top:1px solid var(--fq-line);vertical-align:middle}
.woocommerce-cart table.shop_table img{width:72px;border-radius:10px}
.woocommerce-cart .cart_totals{background:var(--fq-soft);border:1px solid var(--fq-line);border-radius:var(--fq-radius);padding:26px}
.woocommerce-cart .cart_totals h2{font-size:20px}
.woocommerce-cart .cart_totals table{width:100%}
.woocommerce-cart .cart_totals th,.woocommerce-cart .cart_totals td{padding:8px 0;text-align:left}
.woocommerce-cart .cart_totals .order-total td,.woocommerce-cart .cart_totals .order-total th{font-size:19px;font-weight:800}
.woocommerce-cart .actions .coupon{display:flex;gap:10px}

/* -------------------------------------------------------- checkout page */
.woocommerce-checkout .col2-set{float:left;width:60%}
.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{float:right;width:36%;clear:right}
.woocommerce-checkout .woocommerce::after{content:'';display:table;clear:both}
.woocommerce-checkout #order_review{background:var(--fq-soft);border:1px solid var(--fq-line);border-radius:var(--fq-radius);padding:26px}
.woocommerce-checkout table.shop_table{border:0;border-collapse:collapse;width:100%}
.woocommerce-checkout table.shop_table th,.woocommerce-checkout table.shop_table td{padding:10px 0;border-bottom:1px solid var(--fq-line);text-align:left}
.woocommerce-checkout .form-row{margin-bottom:14px}
.fq-checkout-note{font-size:14px;color:var(--fq-ink-2);background:#fff;border:1px dashed var(--fq-line);border-radius:var(--fq-radius-sm);padding:12px 14px}
#payment .fq-professional-use.form-row{margin:16px 0;padding:14px 16px;background:#fff;border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm)}
#payment .fq-professional-use label{display:flex;align-items:flex-start;gap:10px;margin:0;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer}
#payment .fq-professional-use input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:var(--fq-pink)}
#payment .fq-professional-use .required{color:var(--fq-pink);visibility:visible}
#payment .wc_payment_methods{list-style:none;padding:0;margin:0 0 16px}
#payment .wc_payment_method{background:#fff;border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm);padding:14px 16px;margin-bottom:10px}
#payment .wc_payment_method label{font-weight:700}

/* ---------------------------------------------------------- forms/notices */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text,.woocommerce-page form .form-row textarea{
  width:100%;padding:12px 14px;border:1px solid var(--fq-line);border-radius:var(--fq-radius-sm);
  font-family:inherit;font-size:15px;background:#fff;color:var(--fq-ink);
}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus{
  outline:none;border-color:var(--fq-pink);box-shadow:0 0 0 3px rgba(230,0,126,.12)
}
.woocommerce form .form-row label{font-size:13.5px;font-weight:700;color:var(--fq-ink-2);margin-bottom:4px;display:block}
.woocommerce form .password-input{position:relative;display:block}
.woocommerce form .show-password-input{
  position:absolute;right:12px;top:50%;transform:translateY(-50%);
  width:22px;height:22px;padding:0;margin:0;border:0;background:none;cursor:pointer;opacity:.55
}
.woocommerce form .show-password-input:hover{opacity:1;box-shadow:none;transform:translateY(-50%)}
.woocommerce form .show-password-input::after{
  content:'';display:block;width:22px;height:22px;background-repeat:no-repeat;background-position:center;background-size:20px 20px;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20fill='none'%20stroke='%2314171B'%20stroke-width='2'%3E%3Cpath%20d='M2%2012s4-7%2010-7%2010%207%2010%207-4%207-10%207-10-7-10-7z'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='3'/%3E%3C/svg%3E")
}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  list-style:none;border:1px solid var(--fq-line);border-top:3px solid var(--fq-pink);background:#fff;
  border-radius:var(--fq-radius-sm);padding:16px 20px;margin:0 0 20px;display:flex;align-items:center;gap:14px;flex-wrap:wrap
}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}
.woocommerce-message .button,.woocommerce-info .button{margin-left:auto}
.woocommerce-error{border-top-color:var(--fq-red)}
.woocommerce-notices-wrapper{padding:0}

/* search + product search form */
.fq-search-bar .woocommerce-product-search{display:flex;gap:10px;max-width:640px}
.fq-search-bar input[type=search]{flex:1;padding:12px 16px;border:1px solid var(--fq-line);border-radius:999px;font-family:inherit}

@media (min-width:641px){
  .fq-single{padding-bottom:32px}
  .woocommerce div.product div.fq-single-summary{margin-bottom:0}
  .woocommerce div.product form.cart{
    display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;
    align-items:stretch;margin:20px 0 0;padding:20px;
    border:1px solid var(--fq-line);border-radius:20px;background:#fff;
    box-shadow:0 6px 24px rgba(20,23,27,.04);
  }
  .woocommerce div.product form.cart::before,
  .woocommerce div.product form.cart::after{content:none!important;display:none!important}
  .woocommerce div.product form.cart .variations{grid-column:1/-1;display:block;width:100%;margin:0}
  .woocommerce div.product form.cart .variations tbody,
  .woocommerce div.product form.cart .variations tr{display:block;width:100%}
  .woocommerce div.product form.cart .variations th,
  .woocommerce div.product form.cart .variations td{
    display:block;width:100%;padding:0;border:0;line-height:1.3;
  }
  .woocommerce div.product form.cart .variations th{margin-bottom:10px}
  .single-product .variations td.value{position:relative}
  .single-product .fq-variation-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:8px}
  .single-product .fq-variation-option{width:100%;min-height:44px;padding:8px 10px;border-radius:12px;font-size:14px;line-height:1.2}
  .single-product .reset_variations{position:absolute;right:0;top:-32px;font-size:12px}
  .single-product .single_variation_wrap{grid-column:1/-1;min-width:0}
  .single-product .woocommerce-variation-add-to-cart{
    display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:stretch;
  }
  .woocommerce div.product form.cart .quantity{float:none;margin:0;width:100%}
  .woocommerce div.product form.cart .quantity input.qty{width:100%;height:48px}
  .single-product form.cart .single_add_to_cart_button{min-width:0;width:100%;min-height:48px;padding:12px 16px}
  .single-product form.cart .fq-whatsapp-order{grid-column:1/-1;width:100%;min-height:48px}
  .single-product .fq-ship-note{margin:14px 0 0}
}

@media (max-width:1080px){
  .fq-single{grid-template-columns:minmax(0,1fr);gap:32px}
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout form.checkout.woocommerce-checkout{grid-template-columns:minmax(0,1fr)}
  .woocommerce-cart form.woocommerce-cart-form,.woocommerce-cart .cart-collaterals,
  .woocommerce-checkout form.checkout #customer_details,
  .woocommerce-checkout form.checkout .woocommerce-account-fields,
  .woocommerce-checkout form.checkout #order_review_heading,
  .woocommerce-checkout form.checkout #order_review{grid-column:1;grid-row:auto}
}
@media (max-width:640px){
  .single-product .product > .fq-wrap{padding-bottom:48px}
  .fq-cat-nav{display:block}
  /* Одна строка с прокруткой: 12 чипсов в 5 строк съедали весь первый экран. */
  .fq-cat-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .fq-cat-chips::-webkit-scrollbar{display:none}
  .fq-cat-chips .fq-chip{flex:0 0 auto;padding:8px 12px;font-size:13px;scroll-snap-align:start}
  .fq-more-categories{margin-top:8px}
  .fq-archive-toolbar{flex-direction:column;align-items:flex-start;gap:10px}
  .fq-single{gap:20px;padding:18px 0 20px}
  .woocommerce div.product div.fq-single-summary{margin-bottom:0}
  .single-product .price{font-size:24px}
  .single-product .fq-facts{margin:16px 0}
  .woocommerce div.product form.cart{
    display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;
    align-items:stretch;margin:16px 0 0;padding:16px;
    border:1px solid var(--fq-line);border-radius:20px;background:#fff;
    box-shadow:0 6px 24px rgba(20,23,27,.04);
  }
  .woocommerce div.product form.cart::before,
  .woocommerce div.product form.cart::after{content:none!important;display:none!important}
  .woocommerce div.product form.cart .variations{grid-column:1/-1;display:block;width:100%;margin:0}
  .woocommerce div.product form.cart .variations tbody,
  .woocommerce div.product form.cart .variations tr{display:block;width:100%}
  .woocommerce div.product form.cart .variations th,
  .woocommerce div.product form.cart .variations td{
    display:block;width:100%;padding:0;border:0;line-height:1.3;
  }
  .woocommerce div.product form.cart .variations th{margin-bottom:10px}
  .single-product .variations td.value{position:relative}
  .single-product .fq-variation-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px}
  .single-product .fq-variation-option{
    width:100%;min-height:44px;padding:8px 6px;border-radius:12px;
    font-size:14px;line-height:1.2;overflow-wrap:anywhere;
  }
  .single-product .reset_variations{position:absolute;right:0;top:-32px;font-size:12px}
  .single-product .single_variation_wrap{grid-column:1/-1;min-width:0}
  .single-product .woocommerce-variation-add-to-cart{
    display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:stretch;
  }
  .woocommerce div.product form.cart .quantity{float:none;margin:0;width:100%}
  .woocommerce div.product form.cart .quantity input.qty{width:100%;height:48px}
  .single-product form.cart .single_add_to_cart_button{min-width:0;width:100%;min-height:48px;padding:12px 16px}
  .single-product form.cart .fq-whatsapp-order{grid-column:1/-1;width:100%;min-height:48px}
  .single-product .fq-ship-note{margin:14px 0 0}
  .single-product .fq-full-description{margin-bottom:28px}
  /* На телефоне галерея товара должна занимать максимум ширины:
     убираем большие внутренние отступы рамки. */
  .woocommerce-product-gallery__wrapper{padding:8px}
  .single-product .woocommerce-product-gallery__image img{border-radius:8px}
  /* …но и не растягиваться на весь экран по высоте */
  .single-product .woocommerce-product-gallery .flex-viewport{height:auto!important}
  .single-product .woocommerce-product-gallery__image img{
    width:100%!important;
    height:min(58vh,340px)!important;
    object-fit:contain;
    margin:0 auto;
    display:block;
  }
}
