/*
Theme Name: Boutique dello Sport
Theme URI: https://laboutiquedellosport.it/
Description: Tema WooCommerce su misura per La Boutique dello Sport. Nessun page builder, nessun framework: sei template, un solo foglio di stile. Catalogo denso, prodotto protagonista, mobile-first.
Author: La Boutique dello Sport
Version: 1.0.1
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 8.0
Text Domain: boutique
Tags: woocommerce, e-commerce, custom-menu, featured-images, translation-ready
*/

/* ============================================================
   1. TOKEN — colori e font del sito
   ============================================================ */
:root{
  --bq-bg:#FFFFFF;
  --bq-page:#F5F5F5;
  --bq-sub:#F2F5F7;
  --bq-sub2:#E6EBEF;
  --bq-ink:#161616;
  --bq-ink2:#4B4F58;
  --bq-ink3:#878C96;
  --bq-line:#E2E7EB;
  --bq-line2:#C8D0D7;
  --bq-brand:#DF453E;
  --bq-brand-dark:#B62D25;
  --bq-ok:#15683F;
  --bq-ok-soft:#EAF4EE;
  --bq-warn:#8A5608;
  --bq-r:12px;
  --bq-r-s:8px;
  --bq-disp:"Lexend","Helvetica Neue",Arial,sans-serif;
  --bq-body:"DM Sans","Helvetica Neue",Arial,sans-serif;
  --bq-wrap:1240px;
}

/* ============================================================
   2. RESET E FONDAMENTA
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bq-page);color:var(--bq-ink2);
  font-family:var(--bq-body);font-size:16px;line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5{font-family:var(--bq-disp);color:var(--bq-ink);margin:0 0 .4em;line-height:1.15;font-weight:600;text-wrap:balance}
h1{font-size:clamp(28px,5vw,42px)}
h2{font-size:clamp(22px,3.4vw,28px)}
h3{font-size:20px}
p{margin:0 0 1em}
a{color:inherit;text-decoration:none}
a:hover{color:var(--bq-brand)}
img{max-width:100%;height:auto;display:block}
ul{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--bq-brand);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

.bq-wrap{max-width:var(--bq-wrap);margin:0 auto;padding:0 20px}
@media (max-width:640px){.bq-wrap{padding:0 14px}}
.bq-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ============================================================
   3. TESTATA
   ============================================================ */
.bq-announce{background:var(--bq-ink);color:#fff;font-size:12.5px;text-align:center;padding:8px 14px;line-height:1.4}
.bq-announce b{color:#fff}

.bq-header{position:sticky;top:0;z-index:60;background:var(--bq-bg);border-bottom:1px solid var(--bq-line)}
.bq-header-in{display:flex;align-items:center;gap:20px;max-width:var(--bq-wrap);margin:0 auto;padding:12px 20px}
.bq-logo{font-family:var(--bq-disp);font-weight:700;font-size:19px;line-height:1;color:var(--bq-ink);white-space:nowrap}
.bq-logo img{max-height:46px;width:auto}
.bq-logo em{font-style:normal;color:var(--bq-brand);display:block}

.bq-nav{display:flex;gap:22px;align-items:center;flex:1}
.bq-nav a{font-family:var(--bq-disp);font-size:15px;font-weight:500;color:var(--bq-ink);padding:6px 0;border-bottom:2px solid transparent;white-space:nowrap}
.bq-nav a:hover,.bq-nav .current-menu-item>a{border-bottom-color:var(--bq-brand);color:var(--bq-ink)}
.bq-nav .sub-menu{display:none}

.bq-search{position:relative;flex:0 1 300px}
.bq-search input{width:100%;background:var(--bq-sub);border:1px solid var(--bq-line);border-radius:99px;padding:9px 14px 9px 36px;font-size:14px}
.bq-search input::placeholder{color:var(--bq-ink3)}
.bq-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);opacity:.45}
.bq-search button{position:absolute;right:0;top:0;height:100%;background:none;border:0;padding:0 14px;cursor:pointer;font-size:0}

.bq-tools{display:flex;align-items:center;gap:16px}
.bq-tools a{display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;color:var(--bq-ink2)}
.bq-cartn{background:var(--bq-brand);color:#fff;border-radius:99px;min-width:19px;height:19px;font-size:11px;font-weight:700;display:inline-grid;place-items:center;padding:0 5px}

.bq-burger{display:none;background:none;border:0;font-size:22px;line-height:1;cursor:pointer;padding:4px}

.bq-leaguebar{display:none;gap:8px;padding:10px 14px;overflow-x:auto;border-top:1px solid var(--bq-line);scrollbar-width:none}
.bq-leaguebar::-webkit-scrollbar{display:none}
.bq-leaguebar a{white-space:nowrap;font-family:var(--bq-disp);font-size:14px;border:1px solid var(--bq-line2);border-radius:99px;padding:5px 13px;color:var(--bq-ink2)}

@media (max-width:900px){
  .bq-header-in{flex-wrap:wrap;gap:12px;padding:10px 14px}
  .bq-burger{display:block;order:1}
  .bq-logo{order:2;flex:1;font-size:17px}
  .bq-tools{order:3}
  .bq-search{order:5;flex:1 1 100%}
  .bq-nav{display:none;order:6;flex:1 1 100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:8px}
  .bq-nav.is-open{display:flex}
  .bq-nav a{padding:12px 0;border-bottom:1px solid var(--bq-line);font-size:17px}
  .bq-leaguebar{display:flex}
}

/* ============================================================
   4. HOME
   ============================================================ */
.bq-hero{background:var(--bq-bg);border-bottom:1px solid var(--bq-line)}
.bq-hero-in{max-width:var(--bq-wrap);margin:0 auto;padding:36px 20px 40px;display:grid;gap:26px;grid-template-columns:1fr}
.bq-eyebrow{font-family:var(--bq-disp);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--bq-ink3);margin-bottom:10px}
.bq-hero h1{font-size:clamp(30px,6vw,52px);margin-bottom:12px}
.bq-hero .bq-lead{max-width:46ch;font-size:16.5px;margin-bottom:0}
@media (min-width:980px){.bq-hero-in{grid-template-columns:1.05fr minmax(380px,.95fr);gap:48px;align-items:center;padding:54px 20px 60px}}

.bq-finder{border:1px solid var(--bq-line);border-radius:16px;padding:20px;background:var(--bq-bg);box-shadow:0 2px 4px rgba(22,22,22,.04),0 24px 44px -34px rgba(22,22,22,.5)}
.bq-finder h2{font-size:18px;margin-bottom:14px}
.bq-step{margin-bottom:16px}
.bq-step-lab{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bq-ink3);font-weight:700;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.bq-step-lab i{font-style:normal;width:18px;height:18px;border-radius:50%;background:var(--bq-sub2);color:var(--bq-ink2);font-size:10px;display:grid;place-items:center;font-weight:700}
.bq-chips{display:flex;flex-wrap:wrap;gap:8px}
.bq-chip{border:1px solid var(--bq-line2);border-radius:99px;padding:7px 14px;font-family:var(--bq-disp);font-size:14.5px;background:var(--bq-bg);color:var(--bq-ink);cursor:pointer;display:inline-flex;gap:7px;align-items:center}
.bq-chip small{font-family:var(--bq-body);font-size:11.5px;color:var(--bq-ink3);font-weight:600;font-variant-numeric:tabular-nums}
.bq-chip[aria-pressed="true"]{background:var(--bq-ink);border-color:var(--bq-ink);color:#fff}
.bq-chip[aria-pressed="true"] small{color:#fff;opacity:.7}
.bq-empty-step{color:var(--bq-ink3);font-size:13.5px}

.bq-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--bq-brand);color:#fff;font-family:var(--bq-disp);font-size:16px;font-weight:600;padding:14px 26px;border:0;border-radius:99px;cursor:pointer;text-align:center}
.bq-btn:hover{background:var(--bq-brand-dark);color:#fff}
.bq-btn[disabled]{background:var(--bq-sub2);color:var(--bq-ink3);cursor:not-allowed}
.bq-btn--block{width:100%}
.bq-btn--ghost{background:transparent;color:var(--bq-ink);border:1px solid var(--bq-line2)}
.bq-btn--ghost:hover{background:var(--bq-sub);color:var(--bq-ink)}

.bq-section{padding:36px 0;border-bottom:1px solid var(--bq-line);background:var(--bq-bg)}
.bq-section:nth-child(even){background:var(--bq-page)}
.bq-section-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.bq-section-head h2{margin:0}
.bq-section-head p{margin:0;color:var(--bq-ink3);font-size:13.5px}
.bq-section-head .bq-more{margin-left:auto;font-size:13.5px;font-weight:600;color:var(--bq-ink2);border-bottom:1px solid var(--bq-line2)}

.bq-leagues{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.bq-league{border:1px solid var(--bq-line);border-radius:var(--bq-r);padding:16px;background:var(--bq-bg);display:block}
.bq-league:hover{border-color:var(--bq-ink);color:inherit}
.bq-league b{display:block;font-family:var(--bq-disp);font-size:18px;color:var(--bq-ink);margin-bottom:2px}
.bq-league small{color:var(--bq-ink3);font-size:12.5px;font-variant-numeric:tabular-nums}
@media (min-width:900px){.bq-leagues{grid-template-columns:repeat(5,1fr)}}

.bq-teams{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.bq-team-card{border:1px solid var(--bq-line);border-radius:var(--bq-r);padding:12px;background:var(--bq-bg);display:flex;align-items:center;gap:12px}
.bq-team-card:hover{border-color:var(--bq-ink);color:inherit}
.bq-crest{width:38px;height:38px;flex:none;border-radius:10px;background:var(--bq-sub2);display:grid;place-items:center;font-family:var(--bq-disp);font-weight:700;font-size:14px;color:var(--bq-ink2)}
.bq-team-card b{display:block;font-size:14.5px;color:var(--bq-ink);font-weight:600;line-height:1.2}
.bq-team-card small{color:var(--bq-ink3);font-size:12px;font-variant-numeric:tabular-nums}
@media (min-width:900px){.bq-teams{grid-template-columns:repeat(4,1fr)}}

.bq-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bq-line);border:1px solid var(--bq-line);border-radius:var(--bq-r);overflow:hidden}
.bq-trust>div{background:var(--bq-bg);padding:16px}
.bq-trust b{display:block;font-family:var(--bq-disp);font-size:15px;color:var(--bq-ink);margin-bottom:4px}
.bq-trust small{color:var(--bq-ink3);font-size:12.5px;line-height:1.45;display:block}
@media (min-width:900px){.bq-trust{grid-template-columns:repeat(4,1fr)}}

/* ============================================================
   5. GRIGLIA CATALOGO E CARD
   ============================================================ */
.woocommerce ul.products,
ul.products{
  display:grid!important;grid-template-columns:repeat(2,1fr);gap:14px;
  margin:0 0 28px;padding:0;list-style:none;
}
ul.products::before,ul.products::after{content:none!important}
@media (min-width:760px){ul.products{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1080px){ul.products{grid-template-columns:repeat(4,1fr)}}

ul.products li.product{
  width:100%!important;margin:0!important;float:none!important;
  display:flex;flex-direction:column;position:relative;overflow:hidden;
  background:var(--bq-bg);border:1px solid var(--bq-line);border-radius:var(--bq-r);
  transition:border-color .18s ease,box-shadow .18s ease;
}
ul.products li.product:hover{border-color:var(--bq-line2);box-shadow:0 2px 4px rgba(22,22,22,.05),0 18px 34px -22px rgba(22,22,22,.45)}
.bq-card-media{position:relative;display:block;background:var(--bq-sub)}
.bq-card-media img{width:100%;aspect-ratio:1/1;object-fit:contain;padding:10px;background:var(--bq-sub)}
.bq-card-body{padding:12px 13px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.bq-card-team{font-family:var(--bq-disp);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bq-ink3);font-weight:600}
.bq-card-title{font-size:14px;font-weight:600;color:var(--bq-ink);line-height:1.3;margin:0}
.bq-card-meta{display:flex;flex-wrap:wrap;gap:6px}
.bq-card-meta span{border:1px solid var(--bq-line);border-radius:99px;padding:2px 9px;font-size:11.5px;color:var(--bq-ink3)}
.bq-card-price{margin-top:auto;padding-top:4px;font-family:var(--bq-disp);font-size:18px;font-weight:700;color:var(--bq-ink);font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:8px}
.bq-card-price del{font-family:var(--bq-body);font-size:13px;font-weight:400;color:var(--bq-ink3);opacity:1}
.bq-card-price ins{text-decoration:none}
.bq-card-sizes{display:flex;gap:5px;flex-wrap:wrap}
.bq-card-sizes span,.bq-card-sizes a{text-decoration:none;transition:background .15s,border-color .15s,color .15s;flex:1 0 auto;min-width:34px;text-align:center;border:1px solid var(--bq-line2);border-radius:var(--bq-r-s);padding:5px 0;font-size:11.5px;font-weight:600;color:var(--bq-ink2);line-height:1}
.bq-card-sizes span.is-out{opacity:.35;text-decoration:line-through}
.bq-card-sizes a.is-out{opacity:.35;text-decoration:line-through;pointer-events:none}
.bq-card-sizes a:hover{background:var(--bq-ink);border-color:var(--bq-ink);color:#fff}

.bq-stock{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--bq-warn)}
.bq-stock i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.bq-stock.is-ready{color:var(--bq-ok)}
.bq-stock.is-out{color:var(--bq-ink3)}

.bq-badges{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-direction:column;gap:5px;align-items:flex-start}
.bq-badge{font-family:var(--bq-disp);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 10px;border-radius:99px;background:var(--bq-ink);color:#fff}
.bq-badge--new{background:var(--bq-brand)}
.bq-badge--ready{background:var(--bq-ok)}
.bq-badge--sale{background:var(--bq-brand)}
.woocommerce span.onsale{display:none!important}

/* ============================================================
   6. PAGINA CATEGORIA
   ============================================================ */
.bq-catalog{display:grid;grid-template-columns:1fr;gap:26px;padding:22px 0 40px}
@media (min-width:1024px){.bq-catalog{grid-template-columns:250px 1fr;gap:32px}}

.bq-cat-head{padding:18px 0 14px;border-bottom:1px solid var(--bq-line)}
.bq-cat-head h1{margin-bottom:8px}
.bq-cat-head .bq-desc{color:var(--bq-ink2);font-size:15px;max-width:70ch;margin:0}
.bq-breadcrumb{font-size:12.5px;color:var(--bq-ink3);padding:14px 0 0}
.bq-breadcrumb a:hover{color:var(--bq-brand)}

.bq-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 0;border-bottom:1px solid var(--bq-line)}
.bq-count{font-size:13.5px;color:var(--bq-ink2);font-variant-numeric:tabular-nums}
.bq-count b{color:var(--bq-ink)}
.bq-toolbar form.woocommerce-ordering{margin:0 0 0 auto}
.bq-toolbar select{border:1px solid var(--bq-line2);border-radius:99px;padding:8px 14px;font-size:13.5px;background:var(--bq-bg)}
.bq-filter-toggle{display:inline-flex;align-items:center;gap:9px;background:var(--bq-ink);color:#fff;border:0;border-radius:99px;padding:10px 18px;font-family:var(--bq-disp);font-size:15px;cursor:pointer}
.bq-filter-toggle span{background:var(--bq-brand);color:#fff;border-radius:99px;min-width:19px;height:19px;font-family:var(--bq-body);font-size:11px;font-weight:700;display:inline-grid;place-items:center;padding:0 5px}
@media (min-width:1024px){.bq-filter-toggle{display:none}}

.bq-sidebar{display:none}
.bq-sidebar.is-open{display:block}
@media (min-width:1024px){.bq-sidebar{display:block}}
.bq-widget{border-bottom:1px solid var(--bq-line);padding:16px 0}
.bq-widget:first-child{padding-top:0}
.bq-widget h3,.bq-widget .widget-title{font-family:var(--bq-disp);font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:var(--bq-ink);margin-bottom:12px}
.bq-widget li{padding:5px 0;font-size:14px}
.bq-widget li a{color:var(--bq-ink)}
.bq-widget li .count{color:var(--bq-ink3);font-size:12px;font-variant-numeric:tabular-nums}
.bq-widget li.current-cat>a{font-weight:700;color:var(--bq-brand)}

.bq-seo{border-top:1px solid var(--bq-line);padding:26px 0 36px;max-width:72ch;color:var(--bq-ink2);font-size:15px}
.bq-seo h2{font-size:20px}

.woocommerce-pagination ul{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:20px 0 0}
.woocommerce-pagination a,.woocommerce-pagination span{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--bq-line2);border-radius:var(--bq-r-s);font-size:14px;font-weight:600}
.woocommerce-pagination .current{background:var(--bq-ink);color:#fff;border-color:var(--bq-ink)}

/* ============================================================
   7. SCHEDA PRODOTTO
   ============================================================ */
.bq-product{display:grid;grid-template-columns:1fr;gap:26px;padding:22px 0 34px}
@media (min-width:960px){.bq-product{grid-template-columns:1.05fr .95fr;gap:44px}}
.bq-gallery img{border:1px solid var(--bq-line);border-radius:var(--bq-r);background:var(--bq-sub)}
.flex-control-thumbs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px;padding:0}
.flex-control-thumbs li{width:auto!important;margin:0!important;float:none!important}
.flex-control-thumbs img{border-radius:var(--bq-r-s);opacity:.6}
.flex-control-thumbs img.flex-active{opacity:1;border-color:var(--bq-ink)}

.bq-buy .bq-card-team{font-size:12.5px;margin-bottom:6px}
.bq-buy h1{margin-bottom:10px}
.bq-metaline{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.bq-metaline span{border:1px solid var(--bq-line);border-radius:99px;padding:3px 11px;font-size:12px;color:var(--bq-ink3)}
.bq-buy .price{font-family:var(--bq-disp)!important;font-size:32px!important;font-weight:700;color:var(--bq-ink)!important;display:flex;align-items:baseline;gap:10px;margin:0 0 4px}
.bq-buy .price del{font-family:var(--bq-body);font-size:16px;color:var(--bq-ink3);opacity:1}
.bq-buy .price ins{text-decoration:none}
.bq-vat{font-size:12.5px;color:var(--bq-ink3);margin-bottom:16px}

.variations{width:100%;margin-bottom:12px}
.variations td,.variations th{display:block;width:100%;padding:0;text-align:left}
.variations th label{font-family:var(--bq-disp);font-size:14px;color:var(--bq-ink);display:block;margin:12px 0 8px}
.variations select{width:100%;border:1px solid var(--bq-line2);border-radius:var(--bq-r-s);padding:13px;background:var(--bq-bg);font-size:15px}
.reset_variations{font-size:12.5px;color:var(--bq-ink3)}

.single_add_to_cart_button,
.woocommerce button.button.alt,
.woocommerce a.button.alt{
  background:var(--bq-brand)!important;color:#fff!important;border:0!important;
  border-radius:99px!important;padding:15px 28px!important;
  font-family:var(--bq-disp);font-size:16px;font-weight:600;width:100%;cursor:pointer;
}
.single_add_to_cart_button:hover,.woocommerce button.button.alt:hover{background:var(--bq-brand-dark)!important}
.woocommerce a.button,.woocommerce button.button{
  background:var(--bq-sub);color:var(--bq-ink);border:1px solid var(--bq-line2);
  border-radius:99px;padding:11px 22px;font-weight:600;cursor:pointer;
}
.quantity input{border:1px solid var(--bq-line2);border-radius:var(--bq-r-s);padding:12px 8px;width:72px;text-align:center}

.bq-usp{display:grid;gap:9px;border-top:1px solid var(--bq-line);margin-top:20px;padding-top:16px}
.bq-usp li{display:flex;gap:10px;font-size:13.5px;color:var(--bq-ink2)}
.bq-usp li::before{content:"✓";color:var(--bq-ok);font-weight:700;flex:none}
.bq-usp b{color:var(--bq-ink);font-weight:600}

.woocommerce-tabs{border-top:1px solid var(--bq-line);padding-top:8px}
.woocommerce-tabs ul.tabs{display:flex;gap:22px;flex-wrap:wrap;border-bottom:1px solid var(--bq-line);margin:0 0 18px;padding:0}
.woocommerce-tabs ul.tabs li{padding:14px 0}
.woocommerce-tabs ul.tabs a{font-family:var(--bq-disp);font-size:15px;color:var(--bq-ink3)}
.woocommerce-tabs ul.tabs li.active a{color:var(--bq-ink);border-bottom:2px solid var(--bq-brand);padding-bottom:12px}
.woocommerce-tabs .panel{max-width:72ch;font-size:15px}
.shop_attributes th{text-align:left;color:var(--bq-ink3);font-weight:500;padding:8px 16px 8px 0;border-bottom:1px solid var(--bq-line)}
.shop_attributes td{padding:8px 0;border-bottom:1px solid var(--bq-line)}

.bq-sticky-buy{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:80;
  background:var(--bq-bg);border-top:1px solid var(--bq-line);
  padding:10px 14px;gap:14px;align-items:center;
  box-shadow:0 -8px 24px -20px rgba(22,22,22,.9);
}
.bq-sticky-buy .bq-sb-name{font-size:11.5px;color:var(--bq-ink3);line-height:1.2}
.bq-sticky-buy .bq-sb-price{font-family:var(--bq-disp);font-size:20px;font-weight:700;color:var(--bq-ink)}
.bq-sticky-buy .bq-btn{flex:1;padding:13px 18px}
@media (max-width:960px){
  body.single-product .bq-sticky-buy{display:flex}
  body.single-product .bq-main{padding-bottom:80px}
}

/* ============================================================
   8. FOOTER
   ============================================================ */
.bq-footer{background:var(--bq-ink);color:#C9CDD4;padding:34px 0 26px;font-size:14px}
.bq-footer h5{font-family:var(--bq-disp);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin:0 0 10px}
.bq-footer a{color:#C9CDD4;display:block;padding:4px 0}
.bq-footer a:hover{color:#fff}
.bq-footer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
@media (min-width:900px){.bq-footer-grid{grid-template-columns:repeat(4,1fr)}}
.bq-footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:26px;padding-top:16px;font-size:12px;color:#8E939C;display:flex;gap:16px;flex-wrap:wrap}

/* ============================================================
   9. MESSAGGI WOOCOMMERCE
   ============================================================ */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border:1px solid var(--bq-line);border-left:4px solid var(--bq-ok);
  background:var(--bq-bg);border-radius:var(--bq-r-s);padding:14px 16px;margin:0 0 20px;
  list-style:none;font-size:14.5px;
}
.woocommerce-error{border-left-color:var(--bq-brand)}
.woocommerce-info{border-left-color:var(--bq-ink3)}
.woocommerce-message .button{float:right}

.bq-main{min-height:50vh}


/* ============================================================
   9. Scheda prodotto: prezzo e selettore taglia a chip
   ============================================================ */
.woocommerce div.product p.price,
.woocommerce div.product span.price{color:var(--bq-ink);font-family:var(--bq-disp);font-size:30px;font-weight:700;line-height:1.2;margin:0 0 6px}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del{color:var(--bq-ink3);font-size:19px;font-weight:500;opacity:1;margin-right:8px}
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins{background:none;color:var(--bq-brand);text-decoration:none}

.bq-hidden-select{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none}
.bq-sizes-pick{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 10px}
.bq-size{min-width:58px;height:48px;padding:0 14px;border:1px solid var(--bq-line2);background:var(--bq-bg);border-radius:10px;font-family:var(--bq-body);font-size:15px;font-weight:600;color:var(--bq-ink);cursor:pointer}
.bq-size:hover{border-color:var(--bq-ink)}
.bq-size.is-on{background:var(--bq-ink);border-color:var(--bq-ink);color:#fff}
.bq-size.is-off,.bq-size[disabled]{color:var(--bq-ink3);border-color:var(--bq-line);text-decoration:line-through;cursor:not-allowed}
.woocommerce div.product form.cart .variations{margin-bottom:12px}
.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th{display:block;padding:0;border:0;text-align:left}
.woocommerce div.product form.cart .variations label{font-family:var(--bq-disp);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--bq-ink2);font-weight:700;margin-bottom:6px;display:block}


/* ============================================================
   10. Logo, animazione gol, carrello a tutto schermo, recensioni
   ============================================================ */
.bq-logo{flex:0 0 auto}
.bq-logo .custom-logo-link{display:block;line-height:0}
.bq-logo img.custom-logo{height:50px;width:50px;max-width:none;display:block}
@media (max-width:900px){.bq-logo img.custom-logo{height:40px;width:40px}}

.bq-goal{position:fixed;inset:0;z-index:220;display:none;place-items:center;background:rgba(12,14,16,.93)}
.bq-goal.is-on{display:grid}
.bq-goal-scene{position:relative;width:min(540px,86vw);aspect-ratio:16/11}
.bq-goal-net{position:absolute;inset:0;width:100%;height:100%}
.bq-goal-ball{position:absolute;left:50%;bottom:5%;width:clamp(54px,13.5%,84px);aspect-ratio:1;translate:-50% 0;border-radius:50%;
  background:radial-gradient(circle at 50% 52%,#1b1e22 0 13%,transparent 14%),radial-gradient(circle at 23% 27%,#1b1e22 0 9.5%,transparent 10.5%),radial-gradient(circle at 77% 27%,#1b1e22 0 9.5%,transparent 10.5%),radial-gradient(circle at 30% 78%,#1b1e22 0 9.5%,transparent 10.5%),radial-gradient(circle at 72% 78%,#1b1e22 0 9.5%,transparent 10.5%),radial-gradient(circle at 34% 28%,#fff 0 44%,#e6ebef 45% 100%);
  box-shadow:0 8px 20px rgba(0,0,0,.5),inset -5px -7px 12px rgba(0,0,0,.16)}
.bq-goal.is-on .bq-goal-ball{animation:bqShot .6s cubic-bezier(.2,.75,.3,1) forwards}
@keyframes bqShot{
  0%{transform:translateY(0) scale(1) rotate(0deg)}
  70%{transform:translateY(-165%) scale(.68) rotate(300deg)}
  100%{transform:translateY(-178%) scale(.62) rotate(360deg)}
}
.bq-goal.is-on .bq-net-shake{animation:bqNet .55s .5s ease-out}
@keyframes bqNet{0%{transform:translateY(0)}35%{transform:translateY(6px)}70%{transform:translateY(-3px)}100%{transform:translateY(0)}}
.bq-goal-text{position:absolute;left:0;right:0;bottom:-2%;margin:0;text-align:center;
  font-family:var(--bq-disp);font-weight:700;font-size:clamp(40px,10vw,80px);letter-spacing:.03em;color:#fff;
  text-shadow:0 12px 30px rgba(0,0,0,.55);opacity:0;transform:scale(.7)}
.bq-goal.is-on .bq-goal-text{animation:bqGoal .45s .55s cubic-bezier(.2,1.5,.4,1) forwards}
@keyframes bqGoal{to{opacity:1;transform:scale(1)}}
.bq-goal-sub{position:absolute;left:0;right:0;bottom:-16%;text-align:center;margin:0;color:rgba(255,255,255,.72);font-size:14.5px;opacity:0}
.bq-goal.is-on .bq-goal-sub{animation:bqGoal .4s .9s ease-out forwards}
@media (prefers-reduced-motion:reduce){
  .bq-goal.is-on .bq-goal-ball,.bq-goal.is-on .bq-net-shake{animation:none}
  .bq-goal.is-on .bq-goal-text,.bq-goal.is-on .bq-goal-sub{animation:none;opacity:1;transform:none}
}

.bq-cartwrap{position:fixed;inset:0;z-index:210;display:none}
.bq-cartwrap.is-on{display:block}
.bq-cart-veil{position:absolute;inset:0;background:rgba(12,14,16,.45)}
.bq-cart{position:absolute;inset:0;background:var(--bq-bg);display:flex;flex-direction:column;animation:bqUp .26s ease-out}
@keyframes bqUp{from{transform:translateY(2.5%);opacity:.5}to{transform:none;opacity:1}}
.bq-cart-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--bq-line);flex:0 0 auto}
.bq-cart-head b{font-family:var(--bq-disp);font-size:18px;color:var(--bq-ink)}
.bq-cart-x{background:none;border:0;font-size:20px;line-height:1;cursor:pointer;padding:8px;color:var(--bq-ink2)}
.bq-cart-scroll{flex:1;overflow:auto;background:var(--bq-page)}
.bq-cart-body{max-width:680px;margin:0 auto;padding:20px}
.bq-cart-foot{flex:0 0 auto;border-top:1px solid var(--bq-line);background:var(--bq-bg);padding:16px 20px 24px}
.bq-cart-foot-in{max-width:680px;margin:0 auto}
.bq-cart-line{font-family:var(--bq-disp);font-size:clamp(19px,2.6vw,24px);color:var(--bq-ink);text-align:center;margin:0 0 12px}
.bq-cart-line small{display:block;font-family:var(--bq-body);font-size:14px;font-weight:400;color:var(--bq-ink3);margin-top:4px}
.bq-cart-cont{display:block;text-align:center;margin-top:14px;font-size:14.5px;color:var(--bq-ink2);text-decoration:underline}

.bq-cart-body ul.woocommerce-mini-cart{margin:0;padding:0;list-style:none}
.bq-cart-body ul.woocommerce-mini-cart li{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:start;
  background:var(--bq-bg);border:1px solid var(--bq-line);border-radius:var(--bq-r);padding:12px;margin-bottom:10px;position:relative}
.bq-cart-body ul.woocommerce-mini-cart li img{width:64px;height:auto;border-radius:var(--bq-r-s);background:var(--bq-sub)}
.bq-cart-body ul.woocommerce-mini-cart li a{color:var(--bq-ink);font-weight:600;font-size:15px;line-height:1.3}
.bq-cart-body ul.woocommerce-mini-cart li .quantity{display:block;color:var(--bq-ink2);font-size:14px;margin-top:4px}
.bq-cart-body a.remove{position:absolute;top:8px;right:10px;color:var(--bq-ink3);font-size:18px;line-height:1;text-decoration:none}
.bq-cart-body a.remove:hover{color:var(--bq-brand)}
.bq-cart-body p.woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:baseline;
  border-top:1px solid var(--bq-line);margin:14px 0 0;padding-top:14px;font-size:15px;color:var(--bq-ink2)}
.bq-cart-body p.woocommerce-mini-cart__total strong{color:var(--bq-ink)}
.bq-cart-body p.woocommerce-mini-cart__total .amount{font-family:var(--bq-disp);font-size:22px;font-weight:700;color:var(--bq-ink)}
.bq-cart-body p.woocommerce-mini-cart__buttons{display:none}
.bq-cart-body p.woocommerce-mini-cart__empty-message{text-align:center;color:var(--bq-ink3);padding:40px 0}
.single_add_to_cart_button.is-loading{opacity:.6;pointer-events:none}

.bq-reviews{background:var(--bq-bg);border-top:1px solid var(--bq-line);border-bottom:1px solid var(--bq-line)}
.bq-reviews-in{max-width:var(--bq-wrap);margin:0 auto;padding:34px 20px}
.bq-reviews-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.bq-reviews-head h2{margin:0;font-size:clamp(20px,3vw,26px)}
.bq-reviews-head p{margin:0;color:var(--bq-ink3);font-size:14.5px}
.bq-reviews-link{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--bq-line2);border-radius:99px;
  padding:11px 20px;font-family:var(--bq-disp);font-weight:600;font-size:15px;color:var(--bq-ink)}
.bq-reviews-link:hover{border-color:var(--bq-ink);color:var(--bq-ink)}
.bq-reviews-star{width:18px;height:18px;flex:0 0 auto}


/* --- Correzioni 1.1.2 --------------------------------------- */
.bq-logo img.custom-logo{max-height:none}
body.admin-bar .bq-cartwrap,body.admin-bar .bq-goal{top:32px}
@media (max-width:782px){body.admin-bar .bq-cartwrap,body.admin-bar .bq-goal{top:46px}}
.bq-cart-body ul.woocommerce-mini-cart li{display:block;grid-template-columns:none;padding:12px 42px 12px 12px}
.bq-cart-body ul.woocommerce-mini-cart li a:not(.remove){display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center}
.bq-cart-body ul.woocommerce-mini-cart li img{width:64px;height:auto;grid-row:auto;margin:0}
.bq-cart-body ul.woocommerce-mini-cart li .quantity{margin:8px 0 0 78px}
.bq-cart-body dl.variation{margin:6px 0 0 78px;font-size:13px;color:var(--bq-ink3)}
.bq-cart-body dl.variation dt,.bq-cart-body dl.variation dd{display:inline;margin:0}
.bq-cart-body dl.variation dd p{display:inline;margin:0}


/* --- Correzioni 1.1.3: il pallone finisce dentro la rete ------ */
.bq-goal{background:rgba(10,12,14,.96)}
@keyframes bqShot{
  0%{transform:translateY(0) scale(1) rotate(0deg)}
  70%{transform:translateY(-225%) scale(.64) rotate(300deg)}
  100%{transform:translateY(-234%) scale(.58) rotate(360deg)}
}
.bq-goal-text{bottom:-8%}
.bq-goal-sub{bottom:-22%}

/* ===== BQ VARIANTI - extra scheda prodotto ===== */
.bqv{display:grid;gap:16px;margin:18px 0}
	.bqv-lab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#161616;margin-bottom:8px}
	.bqv-lab span.h{font-weight:400;letter-spacing:0;text-transform:none;color:#8A8F99;font-size:12.5px}
	.bqv-chips{display:flex;flex-wrap:wrap;gap:7px}
	.bqv-chip{position:relative;cursor:pointer;display:inline-flex;align-items:center;border:1.5px solid #E2E5E9;border-radius:99px;background:#fff;padding:9px 15px;font-size:13.5px;color:#161616;line-height:1}
	.bqv-chip input{position:absolute;opacity:0;width:1px;height:1px}
	.bqv-chip:hover{border-color:#C8CDD4}
	.bqv-chip.on{background:#161616;border-color:#161616;color:#fff}
	.bqv-perso{border:1px solid #E2E5E9;border-radius:10px;overflow:hidden}
	.bqv-head{display:flex;align-items:center;gap:12px;padding:12px 13px;background:#F2F5F7;cursor:pointer;margin:0}
	.bqv-head .t{flex:1;font-weight:700;color:#161616;font-size:13.5px}
	.bqv-head .t small{display:block;font-weight:400;color:#8A8F99;font-size:12.5px}
	.bqv-head input{position:absolute;opacity:0;width:1px;height:1px}
	.bqv-sw{position:relative;width:44px;height:25px;border-radius:99px;background:#C8CDD4;flex:none;transition:background .18s}
	.bqv-sw:after{content:"";position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:transform .18s}
	.bqv-head.on .bqv-sw{background:#15683F}
	.bqv-head.on .bqv-sw:after{transform:translateX(19px)}
	.bqv-body{padding:14px 13px;display:grid;gap:12px;border-top:1px solid #E2E5E9}
	.bqv-f{display:grid;grid-template-columns:1fr 100px;gap:9px}
	.bqv-f label{display:block;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#8A8F99;margin-bottom:5px}
	.bqv-f input[type=text]{width:100%;height:48px;border:1.5px solid #E2E5E9;border-radius:10px;padding:0 12px;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#161616;background:#fff}
	.bqv-note{display:flex;gap:10px;border-radius:10px;padding:11px 12px;font-size:12.8px;line-height:1.45;background:#FDF3E2;color:#6E4406;border:1px solid #F0DCB8}
	.bqv-consent{display:flex;gap:9px;align-items:flex-start;font-size:12.8px;color:#4B4F58;margin:0}
	.bqv-consent input{margin-top:3px;width:17px;height:17px;flex:none}
	.bqv-mode{display:grid;gap:9px;border-radius:10px;padding:13px;border:1px solid #CBE3D6;background:#E9F3ED}
	.bqv-mode.ord{border-color:#F0DCB8;background:#FDF3E2}
	.bqv-mode .mt{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#15683F}
	.bqv-mode.ord .mt{color:#8A5608}
	.bqv-mode p{font-size:13px;line-height:1.45;color:#3D4A43;margin:0}
	.bqv-mode.ord p{color:#6E4406}
	.bqv-mode button{justify-self:start;border:1.5px solid currentColor;background:transparent;border-radius:99px;padding:8px 16px;cursor:pointer;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#15683F}
	.bqv-mode.ord button{color:#8A5608}
	.bqv-extras.locked{opacity:.45;pointer-events:none;filter:saturate(.2)}
	@media(max-width:600px){.bqv-f{grid-template-columns:1fr}}
	.bqv-recap{border-top:1px solid #E2E5E9;padding-top:14px;display:grid;gap:7px;margin:18px 0 6px}
	.bqv-recap .rr{display:flex;justify-content:space-between;gap:12px;font-size:13.5px;color:#4B4F58}
	.bqv-recap .rr.add{color:#8A8F99}
	.bqv-recap .rr.tot{border-top:1px dashed #E2E5E9;padding-top:10px;margin-top:4px;align-items:baseline}
	.bqv-recap .rr.tot span{font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#161616}
	.bqv-recap .rr.tot b{font-size:28px;font-weight:700;color:#161616;font-variant-numeric:tabular-nums}
	.single-product form.cart .quantity{display:none!important}

/* ===== BQ CONSEGNA - tempi di consegna scheda prodotto ===== */
.bqc-box{margin:20px 0;padding:14px 16px;border:1px solid #E3E6EA;border-radius:12px;background:#FBFCFD}
.bqc-tit{margin:0 0 8px;font-size:11px;font-weight:600;line-height:1;letter-spacing:.10em;text-transform:uppercase;color:#6B7280}
.bqc-box p{margin:0 0 8px;font-size:14px;line-height:1.55;color:#4B4F58}
.bqc-box strong{color:#161616}
.bqc-r strong{color:#1B7F4B}
.bqc-steps{margin:0;padding-left:18px;font-size:13.5px;line-height:1.7;color:#4B4F58}
@media(max-width:600px){.bqc-box{padding:12px 14px}.bqc-box p,.bqc-steps{font-size:13.5px}}


/* ==========================================================================
   BQ MOBILE — 18/09/2026
   Blocco unico per il responsive. Tutto quello che c'e' qui dentro vive
   dentro media query: sopra i 900px il desktop non viene toccato.

   Perche' serviva: la scheda prodotto usava ancora i float di WooCommerce
   (galleria 48% + riepilogo 48%). A impilarli su mobile era
   woocommerce-smallscreen.css, tolto il 17/09 per alleggerire il sito.
   Da quel momento su un telefono da 390px la foto del prodotto era larga
   174px e il titolo andava a capo tre volte. Qui la colonna unica la fa
   flex: un elemento flex ignora il float, quindi non servono !important.
   ========================================================================== */

@media (max-width:900px){

  html{-webkit-text-size-adjust:100%}

  /* 1.1 Scheda prodotto: una colonna, ordine dichiarato */
  .woocommerce div.product{
    display:flex;
    flex-direction:column;
    align-items:stretch;
  }
  .woocommerce div.product > *{
    float:none;
    max-width:100%;
  }
  .woocommerce div.product div.images.woocommerce-product-gallery{
    order:1;
    width:100%;
    margin:0 0 18px;
  }
  .woocommerce div.product div.summary.entry-summary{
    order:2;
    width:100%;
    margin:0;
    clear:none;
  }
  .woocommerce div.product .woocommerce-tabs{order:3;width:100%;margin-top:28px}
  .woocommerce div.product section.related{order:4;width:100%}
  .woocommerce div.product section.bq-reviews{order:5;width:100%}
  .woocommerce div.product section.up-sells{order:6;width:100%}

  /* 1.2 Header: resta appiccicato solo cio' che serve.
     Prima: 169px di header sempre a schermo su 844px di telefono, il 20%
     dello schermo occupato per tutta la navigazione. Ora resta fissa solo
     la riga con menu, logo, account e carrello; la barra dei campionati
     scorre via con la pagina e si ritrova in cima. */
  .bq-header{position:static}
  .bq-header-in{
    position:sticky;
    top:0;
    z-index:60;
    background:var(--bq-bg);
    border-bottom:1px solid var(--bq-line);
  }
  body.admin-bar .bq-header-in{top:32px}

  .bq-announce{font-size:12px;line-height:1.35;padding:7px 14px}

  /* Nessun comando sotto i 44px: si usano col pollice */
  .bq-burger{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;margin-left:-10px}
  .bq-tools a,.bq-tools button{min-height:44px;display:inline-flex;align-items:center}

  /* 16px e' il minimo sotto cui iOS zooma da solo al tocco sul campo */
  .bq-search input{font-size:16px;min-height:46px}

  .bq-leaguebar{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
  }
  .bq-leaguebar::-webkit-scrollbar{display:none}
  .bq-leaguebar a{white-space:nowrap;scroll-snap-align:start;min-height:40px;display:inline-flex;align-items:center}

  /* 1.3 Barra acquisto fissa in basso */
  .bq-sticky-buy{
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  }
  .bq-sticky-buy > div{min-width:0}
  .bq-sb-name{
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
    font-size:13px;line-height:1.2;
  }
  .bq-sb-price{font-size:17px;font-weight:700;line-height:1.2;white-space:nowrap}
  .bq-sticky-buy .bq-btn{
    flex:0 0 auto;min-height:50px;min-width:132px;
    font-size:16px;font-weight:700;
  }
  body.single-product .bq-main{padding-bottom:calc(96px + env(safe-area-inset-bottom))}

  /* 1.4 Tabella varianti: etichetta sopra, comando sotto */
  .woocommerce div.product form.cart table.variations,
  .woocommerce div.product form.cart table.variations tbody,
  .woocommerce div.product form.cart table.variations tr,
  .woocommerce div.product form.cart table.variations th,
  .woocommerce div.product form.cart table.variations td{
    display:block;width:100%;padding:0;border:0;
  }
  .woocommerce div.product form.cart table.variations th{
    margin:0 0 8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;
  }
  .woocommerce div.product form.cart table.variations tr + tr{margin-top:20px}
  .woocommerce div.product form.cart table.variations select{
    width:100%;min-height:48px;font-size:16px;
  }
}

/* --------------------------------------------------------------------------
   2. SOTTO I 640px — IL TELEFONO VERO
   Qui .bq-wrap ha 14px di padding: le misure a filo schermo contano su questo.
   -------------------------------------------------------------------------- */
@media (max-width:640px){

  /* 2.1 Galleria a filo schermo. Le foto hanno tutte lo stesso fondo grigio
     scuro: da bordo a bordo il prodotto guadagna 28px di larghezza e la
     scheda smette di sembrare un desktop ristretto. */
  .woocommerce div.product div.images.woocommerce-product-gallery{
    margin-left:-14px;
    margin-right:-14px;
    width:calc(100% + 28px);
    max-width:calc(100% + 28px);
  }
  .woocommerce div.product div.images img{
    width:100%;height:auto;display:block;border-radius:0;
  }
  .woocommerce div.product div.images .woocommerce-product-gallery__trigger{
    width:44px;height:44px;line-height:44px;text-align:center;
    top:12px;right:12px;
  }

  /* Miniature: riga che scorre, non griglia schiacciata */
  .woocommerce div.product div.images ol.flex-control-thumbs{
    display:flex;
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:10px 14px 0;
    margin:0;
  }
  .woocommerce div.product div.images ol.flex-control-thumbs::-webkit-scrollbar{display:none}
  .woocommerce div.product div.images ol.flex-control-thumbs li{
    flex:0 0 64px;width:64px;margin:0;
  }
  .woocommerce div.product div.images ol.flex-control-thumbs img{
    border-radius:8px;border:1px solid var(--bq-line);
  }

  /* 2.2 Gerarchia sopra la piega: squadra, titolo, prezzo, disponibilita'.
     Niente altro prima della scelta della taglia. */
  .woocommerce div.product .summary .bq-card-team{
    display:block;margin:0 0 4px;
    font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  }
  .woocommerce div.product .summary h1.product_title{
    font-size:26px;line-height:1.14;margin:0 0 10px;letter-spacing:-.01em;
  }
  .woocommerce div.product .summary .bq-metaline{
    gap:6px;margin:0 0 14px;
  }
  .woocommerce div.product .summary .bq-metaline span{font-size:12.5px;padding:5px 10px}
  .woocommerce div.product .summary p.price{
    font-size:26px;line-height:1.1;margin:0 0 4px;
    white-space:nowrap;font-variant-numeric:tabular-nums;
  }
  .woocommerce div.product .summary .bq-vat{font-size:12.5px;margin:0 0 12px}
  .woocommerce div.product .summary .bq-stock{margin:0 0 16px;font-size:12.5px}
  .woocommerce div.product .summary .woocommerce-product-details__short-description{
    font-size:14.5px;line-height:1.5;margin:0 0 20px;
  }

  /* 2.3 Taglie e versione: griglia a pollice */
  .bq-sizes-pick{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(66px,1fr));
    gap:8px;
  }
  .woocommerce div.product form.cart table.variations tr:first-child .bq-sizes-pick{
    grid-template-columns:1fr 1fr;
  }
  .bq-sizes-pick .bq-size{
    width:100%;min-height:50px;margin:0;
    font-size:15px;font-weight:600;
    display:flex;align-items:center;justify-content:center;
    touch-action:manipulation;
  }
}

@media (max-width:640px){

  /* 2.4 Tempi di consegna: restano sopra il pulsante, ma compatti.
     Non li sposto e non li nascondo, le tre settimane vanno lette prima di
     comprare. A tutta larghezza il testo non va piu' a capo ogni due parole. */
  .bqc-box{padding:14px;margin:18px 0}
  .bqc-tit{font-size:12px;letter-spacing:.08em;margin:0 0 8px}
  .bqc-box p{font-size:13.5px;line-height:1.45;margin:0 0 8px}
  .bqc-steps{margin:6px 0 0;padding-left:18px}
  .bqc-steps li{font-size:13px;line-height:1.45;margin:0 0 3px}

  /* 2.5 Patch e personalizzazione */
  #bqv{gap:16px}
  .bqv-lab{font-size:12px;letter-spacing:.06em}
  .bqv-chips{display:flex;flex-wrap:wrap;gap:8px}
  .bqv-chips button,.bqv-chips label{min-height:44px;font-size:14px}
  .bqv-perso input,.bqv-perso select{min-height:48px;font-size:16px;width:100%}
  #bqv-mode{padding:12px 14px}
  #bqv-mode-p{font-size:13px;line-height:1.45}
  #bqv-mode-b{min-height:44px;width:100%;margin-top:8px}

  /* 2.6 Pulsante principale */
  .woocommerce div.product form.cart .single_add_to_cart_button{
    width:100%;min-height:54px;font-size:17px;font-weight:700;
    touch-action:manipulation;
  }

  /* 2.7 Rassicurazioni: due colonne, non quattro righe */
  .bq-usp{grid-template-columns:1fr 1fr;gap:10px}
  .bq-usp li{font-size:12.5px;line-height:1.35}

  /* 2.8 Schede informative */
  .woocommerce div.product .woocommerce-tabs ul.tabs{
    display:flex;gap:8px;overflow-x:auto;padding:0 0 4px;margin:0 0 14px;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;
  }
  .woocommerce div.product .woocommerce-tabs ul.tabs::-webkit-scrollbar{display:none}
  .woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
  .woocommerce div.product .woocommerce-tabs ul.tabs li{
    flex:0 0 auto;margin:0;border-radius:999px;white-space:nowrap;
  }
  .woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:11px 16px;font-size:14px}
  .woocommerce div.product .woocommerce-tabs .panel{font-size:14.5px;line-height:1.55}

  /* 2.9 Correlati: due colonne piene */
  .woocommerce div.product section.related ul.products,
  .woocommerce div.product section.up-sells ul.products{
    grid-template-columns:1fr 1fr;gap:12px;
  }

  /* 2.10 Header piu' basso */
  .bq-header-in{padding:8px 14px;gap:10px}
  .bq-logo img.custom-logo{height:36px;width:36px}
  .bq-announce{font-size:11.5px;padding:6px 12px}
}

/* --------------------------------------------------------------------------
   3. SOTTO I 380px — iPhone SE e simili
   -------------------------------------------------------------------------- */
@media (max-width:380px){
  .woocommerce div.product .summary h1.product_title{font-size:23px}
  .woocommerce div.product .summary p.price{font-size:23px}
  .bq-sizes-pick{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}
  .bq-usp{grid-template-columns:1fr}
  .bq-sticky-buy .bq-btn{min-width:112px;font-size:15px}
}

/* BQ MOBILE — correzioni */
@media (max-width:640px){

  /* Miniature: il tema le tiene a griglia con display:grid !important,
     quindi non provo a trasformarle in riga scorrevole: cambio solo la
     larghezza delle colonne, cosi' due foto non diventano due francobolli
     larghi mezzo schermo. */
  .woocommerce div.product div.images ol.flex-control-thumbs{
    grid-template-columns:repeat(auto-fill,minmax(64px,1fr));
    gap:8px;
    padding:10px 14px 0;
    margin:0;
  }
  .woocommerce div.product div.images ol.flex-control-thumbs li{
    width:auto;float:none;margin:0;
  }

  /* Squadra sopra il titolo. Nel codice la riga NAPOLI sta dopo l'H1:
     a leggerla si capisce di che squadra e' la maglia solo dopo aver letto
     il nome del prodotto. Con flex la rimetto al suo posto senza toccare
     il PHP. */
  .woocommerce div.product div.summary.entry-summary{
    display:flex;
    flex-direction:column;
  }
  .woocommerce div.product .summary .bq-card-team{order:-2;margin:0 0 6px}
  .woocommerce div.product .summary h1.product_title{order:-1}
}


/* BQ MOBILE — carrello, checkout e rifiniture (18/09/2026) */
@media (max-width:900px){

  /* Stesso problema della scheda prodotto: WooCommerce dispone a due
     colonne con i float (fatturazione/spedizione, carrello/totali) e il
     foglio che le impilava su mobile e' stato rimosso. Su un telefono il
     checkout aveva i campi larghi 106px. */
  .woocommerce .col2-set .col-1,
  .woocommerce .col2-set .col-2,
  .woocommerce-page .col2-set .col-1,
  .woocommerce-page .col2-set .col-2{
    float:none;width:100%;margin:0 0 22px;padding:0;
  }
  .woocommerce .cart-collaterals .cart_totals,
  .woocommerce .cart-collaterals .cross-sells,
  .woocommerce-page .cart-collaterals .cart_totals,
  .woocommerce-page .cart-collaterals .cross-sells{
    float:none;width:100%;
  }

  /* Un campo per riga. 16px e' il minimo: sotto, iOS zooma al tocco e
     l'utente si ritrova la pagina ingrandita a meta' compilazione. */
  .woocommerce form .form-row{width:100%;float:none;padding:0;margin:0 0 14px}
  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last{width:100%}
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row textarea,
  .woocommerce form .form-row select{
    width:100%;min-height:50px;font-size:16px;
  }
  .woocommerce form .form-row label{font-size:14px;margin-bottom:6px;display:block}

  /* Pulsanti di conferma a tutta riga */
  .woocommerce #place_order,
  .woocommerce .checkout-button,
  .woocommerce .wc-proceed-to-checkout .button{
    width:100%;min-height:52px;font-size:17px;font-weight:700;
  }

  /* Righe del carrello: da tabella a scheda, con l'etichetta a sinistra
     e il valore a destra. Solo la tabella degli articoli: i totali hanno
     le etichette nelle celle th e non vanno toccati. */
  .woocommerce table.shop_table_responsive.cart thead{display:none}
  .woocommerce table.shop_table_responsive.cart tr{
    display:block;padding:12px 0;border-bottom:1px solid var(--bq-line);
  }
  .woocommerce table.shop_table_responsive.cart tr td{
    display:flex;align-items:center;justify-content:space-between;gap:14px;
    width:100%;text-align:right;padding:5px 0;border:0;
  }
  .woocommerce table.shop_table_responsive.cart tr td::before{
    content:attr(data-title);font-weight:600;text-align:left;color:var(--bq-ink2);
  }
  .woocommerce table.shop_table_responsive.cart tr td.product-remove::before,
  .woocommerce table.shop_table_responsive.cart tr td.product-thumbnail::before{content:none}
  .woocommerce table.shop_table_responsive.cart tr td.product-thumbnail{justify-content:flex-start}
  .woocommerce table.shop_table_responsive.cart tr td.product-thumbnail img{width:84px;height:auto}
  .woocommerce table.shop_table_responsive.cart tr td.product-remove{justify-content:flex-end}
  .woocommerce table.shop_table_responsive.cart tr td.actions{display:block;text-align:left}
  .woocommerce a.remove{width:34px;height:34px;line-height:32px;font-size:22px}
  .woocommerce .quantity input.qty{min-height:48px;width:78px;font-size:16px;text-align:center}
}

@media (max-width:640px){

  /* La galleria a filo schermo esce di 14px dal contenitore: senza questo
     la pagina scorre di 4px in orizzontale (il classico rimbalzo laterale
     sul telefono). clip invece di hidden: non rompe gli elementi sticky. */
  body.single-product .bq-main .bq-wrap{overflow-x:clip}

  /* Barra strumenti della categoria: FILTRA e ordinamento sono i due
     comandi piu' usati su mobile, entrambi erano sotto i 44px. */
  .bq-toolbar{flex-wrap:wrap;gap:10px}
  .bq-toolbar .bq-count{flex:1 1 100%}
  .bq-filter-toggle{flex:1 1 45%;min-height:48px;font-size:15px;font-weight:600}
  .bq-toolbar form.woocommerce-ordering{flex:1 1 45%;margin:0}
  .bq-toolbar select.orderby{width:100%;min-height:48px;font-size:16px}
}


/* BQ MOBILE — rifiniture finali (18/09/2026) */
@media (max-width:640px){

  /* Taglie: sei per riga su un telefono da 390px, cosi' la XXXL non resta
     da sola su una riga tutta sua. Restano 53x50px, sopra i 44px minimi. */
  .bq-sizes-pick{grid-template-columns:repeat(auto-fill,minmax(52px,1fr))}

  /* Le schede informative andavano a capo su due righe: una riga sola che
     scorre in orizzontale. */
  .woocommerce div.product .woocommerce-tabs ul.tabs{flex-wrap:nowrap}

  /* Carrello: il nome del prodotto e' lungo (squadra + stagione + versione
     + taglia) e in riga con l'etichetta finiva schiacciato a destra.
     Etichetta sopra, nome sotto, allineato a sinistra. */
  .woocommerce table.shop_table_responsive.cart tr td.product-name{
    display:block;text-align:left;
  }
  .woocommerce table.shop_table_responsive.cart tr td.product-name::before{
    display:block;margin-bottom:2px;
  }
  .woocommerce table.shop_table_responsive.cart tr td.product-name a{
    font-weight:600;
  }

  .woocommerce a.reset_variations{display:inline-block;min-height:32px;line-height:32px}
}


/* ============================================================
   BQ DESKTOP XL — schermi grandi (12/10/2026)
   Sopra i 1600px il contenuto si allarga e il catalogo guadagna
   colonne. Sotto i 1600px non cambia nulla.
   Per annullare: cancellare da questo commento alla fine del file.
   ============================================================ */
@media (min-width:1600px){
  :root{--bq-wrap:1440px}
}
@media (min-width:1920px){
  :root{--bq-wrap:1680px}
  main.bq-main ul.products{grid-template-columns:repeat(5,1fr)}
  .bq-teams{grid-template-columns:repeat(8,1fr)}
  /* home e correlati mostrano 8 maglie: due righe piene da 4 */
  body.home ul.products,
  section.related ul.products,
  section.up-sells ul.products{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:2400px){
  :root{--bq-wrap:1960px}
  main.bq-main ul.products{grid-template-columns:repeat(6,1fr)}
  body.home ul.products,
  section.related ul.products,
  section.up-sells ul.products{grid-template-columns:repeat(4,1fr)}
}
