/* SuperStampaSprint – Layout Prodotto Universale 1.0.0
   Riferimento visivo: configuratore Payper approvato.
   SOLO layout: nessuna modifica a prezzi, carrello, checkout o logica. */

body.sss-universal-product-layout{
  --sss-u-blue:#102b86;
  --sss-u-text:#16213f;
  --sss-u-muted:#667189;
  --sss-u-line:#e6ebf2;
  --sss-u-soft:#f4f6f9;
  --sss-u-radius:26px;
  --sss-u-gap:34px;
}
body.sss-universal-product-layout *{box-sizing:border-box}

/* ============================================================
   1. PAYPER – riferimento: non cambiamo la struttura, fissiamo
      solo le metriche master così rimane la sorgente visiva.
   ============================================================ */
body.sss-universal-product-layout #sss-payper{
  max-width:1480px!important;
  margin:30px auto 60px!important;
  padding:26px 24px!important;
}
body.sss-universal-product-layout #sss-payper .sss-p-grid{
  grid-template-columns:minmax(0,1.92fr) minmax(330px,1fr)!important;
  gap:var(--sss-u-gap)!important;
}
body.sss-universal-product-layout #sss-payper .sss-p-card{
  border:1px solid var(--sss-u-line)!important;
  border-radius:var(--sss-u-radius)!important;
  background:#fff!important;
  box-shadow:0 8px 26px rgba(17,29,67,.025)!important;
}

/* ============================================================
   2. SPRINT / PROMIT FULL CATALOG – stessa gabbia Payper.
   ============================================================ */
body.sss-universal-product-layout #sss-sprint-master{
  max-width:1480px!important;
  margin:30px auto 60px!important;
  padding:26px 24px!important;
  color:var(--sss-u-text)!important;
}
body.sss-universal-product-layout #sss-sprint-master .sss-sm-grid{
  grid-template-columns:minmax(0,1.92fr) minmax(330px,1fr)!important;
  gap:var(--sss-u-gap)!important;
  align-items:start!important;
}
body.sss-universal-product-layout #sss-sprint-master .sss-sm-card{
  padding:clamp(24px,2.8vw,38px)!important;
  border:1px solid var(--sss-u-line)!important;
  border-radius:var(--sss-u-radius)!important;
  background:#fff!important;
  box-shadow:0 8px 26px rgba(17,29,67,.025)!important;
}
body.sss-universal-product-layout #sss-sprint-master .sss-sm-slider{
  height:540px!important;
  border-radius:18px!important;
  background:#fff!important;
}
body.sss-universal-product-layout #sss-sprint-master .sss-sm-slide img{
  object-fit:contain!important;
  object-position:center!important;
}
body.sss-universal-product-layout #sss-sprint-master .sss-sm-summary h2{
  font-size:clamp(30px,2.4vw,44px)!important;
  line-height:1.06!important;
  letter-spacing:-.04em!important;
}

/* ============================================================
   3. STAMPATI – manteniamo campi e calcoli, cambiamo la gabbia.
   ============================================================ */
body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell{
  display:grid!important;
  grid-template-columns:minmax(0,1.92fr) minmax(330px,1fr)!important;
  gap:var(--sss-u-gap)!important;
  width:min(1480px,calc(100vw - 48px))!important;
  max-width:1480px!important;
  margin:30px auto 60px!important;
  padding:0 24px!important;
  align-items:start!important;
  overflow:visible!important;
}
body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-config-card,
body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card{
  width:100%!important;
  min-width:0!important;
  padding:clamp(24px,2.8vw,38px)!important;
  border:1px solid var(--sss-u-line)!important;
  border-radius:var(--sss-u-radius)!important;
  background:#fff!important;
  box-shadow:0 8px 26px rgba(17,29,67,.025)!important;
}
body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card h1,
body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card h2{
  font-size:clamp(30px,2.4vw,44px)!important;
  line-height:1.06!important;
  letter-spacing:-.04em!important;
  color:#142044!important;
}

/* ============================================================
   4. INSEGNE – non tocchiamo il preventivatore; uniformiamo
      pannelli, foto e riepilogo alla gabbia Payper.
   ============================================================ */
@media (min-width:901px){
  body.sss-universal-product-layout.sss-sign-product .content-single-wrapper{
    grid-template-columns:minmax(0,1.92fr) minmax(330px,1fr)!important;
    column-gap:var(--sss-u-gap)!important;
    row-gap:28px!important;
    max-width:1480px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:24px!important;
    padding-right:24px!important;
  }
}
body.sss-universal-product-layout.sss-sign-product .woocommerce-product-gallery,
body.sss-universal-product-layout.sss-sign-product form[id^="sss-product-form-"]{
  border-radius:var(--sss-u-radius)!important;
}
body.sss-universal-product-layout.sss-sign-product .woocommerce-product-gallery{
  background:#fff!important;
  border:1px solid var(--sss-u-line)!important;
  padding:clamp(20px,2.3vw,32px)!important;
  box-shadow:0 8px 26px rgba(17,29,67,.025)!important;
}
body.sss-universal-product-layout.sss-sign-product #sss-sign-right-summary{
  background:#fff!important;
  border:1px solid var(--sss-u-line)!important;
  border-radius:var(--sss-u-radius)!important;
  padding:clamp(24px,2.5vw,34px)!important;
  box-shadow:0 8px 26px rgba(17,29,67,.025)!important;
}

/* ============================================================
   5. WOO STANDARD – fallback per prodotti che non hanno un
      configuratore SSS dedicato. Mantiene i controlli Woo nativi.
   ============================================================ */
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product{
  display:grid!important;
  grid-template-columns:minmax(0,1.92fr) minmax(330px,1fr)!important;
  gap:var(--sss-u-gap)!important;
  max-width:1480px!important;
  margin:30px auto 60px!important;
  padding:26px 24px!important;
  align-items:start!important;
  overflow:visible!important;
}
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.woocommerce-product-gallery,
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.summary.entry-summary{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  min-width:0!important;
  background:#fff!important;
  border:1px solid var(--sss-u-line)!important;
  border-radius:var(--sss-u-radius)!important;
  padding:clamp(24px,2.8vw,38px)!important;
  box-shadow:0 8px 26px rgba(17,29,67,.025)!important;
}
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.woocommerce-product-gallery{
  grid-column:1!important;
  background:#fff!important;
}
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.summary.entry-summary{
  grid-column:2!important;
  position:sticky!important;
  top:86px!important;
  align-self:start!important;
}
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.woocommerce-tabs,
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.related,
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.upsells,
body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.woocommerce-tabs~*{
  grid-column:1/-1!important;
}
body.sss-universal-product-layout div.product .product_title,
body.sss-universal-product-layout div.product .summary h1{
  color:#142044!important;
  font-weight:800!important;
  letter-spacing:-.04em!important;
  line-height:1.08!important;
}
body.sss-universal-product-layout div.product .single_add_to_cart_button{
  width:100%!important;
  min-height:64px!important;
  border-radius:16px!important;
  background:var(--sss-u-blue)!important;
  color:#fff!important;
  font-weight:800!important;
  font-size:16px!important;
  text-transform:none!important;
  letter-spacing:0!important;
  box-shadow:none!important;
}
body.sss-universal-product-layout div.product .single_add_to_cart_button:hover{
  background:#183caa!important;
}

/* ============================================================
   6. Regole comuni: nessun impatto su header/footer/carrello.
   ============================================================ */
body.sss-universal-product-layout.single-product #content,
body.sss-universal-product-layout.single-product .site-content{
  overflow:visible!important;
}
body.sss-universal-product-layout.single-product .woocommerce-message,
body.sss-universal-product-layout.single-product .woocommerce-error,
body.sss-universal-product-layout.single-product .woocommerce-info{
  max-width:1432px;
  margin-left:auto!important;
  margin-right:auto!important;
}

@media(max-width:1100px){
  body.sss-universal-product-layout #sss-payper .sss-p-grid,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-grid,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product{
    grid-template-columns:minmax(0,1fr) 360px!important;
    gap:24px!important;
  }
}
@media(max-width:900px){
  body.sss-universal-product-layout #sss-payper .sss-p-grid,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-grid,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product{
    display:block!important;
    width:calc(100vw - 24px)!important;
    max-width:760px!important;
    padding:0!important;
    margin:18px auto 40px!important;
  }
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.summary.entry-summary{
    position:static!important;
    margin-top:18px!important;
  }
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card{
    margin-top:18px!important;
  }
}
@media(max-width:680px){
  body.sss-universal-product-layout #sss-payper,
  body.sss-universal-product-layout #sss-sprint-master{
    padding:15px!important;
    margin:14px auto 40px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-card,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-card,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-config-card,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.woocommerce-product-gallery,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.summary.entry-summary{
    padding:20px!important;
    border-radius:18px!important;
  }
}

/* ============================================================
   7. RESPONSIVE UNIVERSALE 1.0.1
   Stesso linguaggio Payper su desktop, tablet e mobile.
   Nessuna modifica a logica/calcoli/carrello.
   ============================================================ */

/* Tablet / notebook stretti */
@media (max-width:1180px) and (min-width:901px){
  body.sss-universal-product-layout #sss-payper,
  body.sss-universal-product-layout #sss-sprint-master{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-grid,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-grid,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product{
    grid-template-columns:minmax(0,1fr) minmax(300px,36%)!important;
    gap:22px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-photo-stage,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-slider{
    height:460px!important;
  }
}

/* Tablet portrait e mobile: una sola colonna ordinata */
@media (max-width:900px){
  body.sss-universal-product-layout{
    --sss-u-radius:20px;
    --sss-u-gap:18px;
  }

  body.sss-universal-product-layout #sss-payper,
  body.sss-universal-product-layout #sss-sprint-master,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product{
    width:min(760px,calc(100vw - 24px))!important;
    max-width:760px!important;
    margin:16px auto 38px!important;
  }

  body.sss-universal-product-layout #sss-payper .sss-p-grid,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-grid,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
    align-items:start!important;
  }

  /* Il riepilogo non copre mai il contenuto su tablet/mobile */
  body.sss-universal-product-layout #sss-payper .sss-p-summary-slot>.sss-p-summary,
  body.sss-universal-product-layout #sss-sprint-master .sss-fc-summary-slot>.sss-sm-summary,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-summary,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card,
  body.sss-universal-product-layout.sss-sign-product #sss-sign-right-summary,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.summary.entry-summary{
    position:static!important;
    top:auto!important;
    transform:none!important;
    max-height:none!important;
    overflow:visible!important;
    width:100%!important;
    margin-top:0!important;
  }

  body.sss-universal-product-layout #sss-payper .sss-p-photo-stage,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-slider{
    height:clamp(340px,60vw,430px)!important;
  }

  body.sss-universal-product-layout.sss-sign-product .content-single-wrapper{
    display:block!important;
    width:min(760px,calc(100vw - 24px))!important;
    max-width:760px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* Telefono */
@media (max-width:680px){
  body.sss-universal-product-layout{
    --sss-u-radius:18px;
    --sss-u-gap:14px;
  }

  body.sss-universal-product-layout #sss-payper,
  body.sss-universal-product-layout #sss-sprint-master,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-sprint-shell,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product,
  body.sss-universal-product-layout.sss-sign-product .content-single-wrapper{
    width:calc(100vw - 16px)!important;
    max-width:none!important;
    margin:8px auto 30px!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  body.sss-universal-product-layout #sss-payper,
  body.sss-universal-product-layout #sss-sprint-master{
    padding:8px!important;
  }

  body.sss-universal-product-layout #sss-payper .sss-p-card,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-card,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-config-card,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card,
  body.sss-universal-product-layout.sss-sign-product .woocommerce-product-gallery,
  body.sss-universal-product-layout.sss-sign-product #sss-sign-right-summary,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.woocommerce-product-gallery,
  body.sss-universal-product-layout:not(.sss-sm-product):not(.sss-fc-product):not(.sss-sign-product):not(.sss-stampati-sprint-v031) div.product>.summary.entry-summary{
    padding:16px!important;
    border-radius:18px!important;
  }

  /* Titoli leggibili ma non enormi */
  body.sss-universal-product-layout #sss-payper .sss-p-page-title,
  body.sss-universal-product-layout #sss-sprint-master h1,
  body.sss-universal-product-layout div.product .product_title,
  body.sss-universal-product-layout div.product .summary h1{
    font-size:clamp(30px,9vw,40px)!important;
    line-height:1.05!important;
    margin-bottom:18px!important;
  }

  body.sss-universal-product-layout #sss-payper .sss-p-section h3,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-step-title,
  body.sss-universal-product-layout #sss-sprint-master h2{
    font-size:clamp(20px,6.2vw,25px)!important;
    line-height:1.15!important;
  }

  /* Foto: grandi, intere, senza crop */
  body.sss-universal-product-layout #sss-payper .sss-p-photo{
    padding:10px!important;
    border-radius:16px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-photo-stage,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-slider{
    height:min(92vw,360px)!important;
    min-height:280px!important;
    border-radius:14px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-photo img,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-slide img,
  body.sss-universal-product-layout div.product .woocommerce-product-gallery img{
    object-fit:contain!important;
    object-position:center!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-photo img{
    padding:10px!important;
  }

  /* Payper: colori e taglie a capo, niente overflow della pagina */
  body.sss-universal-product-layout #sss-payper .sss-p-colors{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
    overflow:visible!important;
    margin:0!important;
    padding:0!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-color{
    width:100%!important;
    min-width:0!important;
    min-height:90px!important;
    padding:10px 4px 8px!important;
    border-radius:12px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-color-dot{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    margin-bottom:7px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-color-label{
    font-size:10px!important;
    line-height:1.15!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-sizes-wrap{
    overflow:visible!important;
    padding:0!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-sizes{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-size{
    width:100%!important;
    min-width:0!important;
    gap:6px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-size strong,
  body.sss-universal-product-layout #sss-payper .sss-p-size input{
    height:44px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-methods{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-method{
    min-height:72px!important;
    padding:10px 8px!important;
    border-radius:12px!important;
    font-size:12px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-upload input[type=file]{
    width:100%!important;
    max-width:100%!important;
    padding:10px!important;
    font-size:12px!important;
  }

  /* Sprint/Promit: varianti e quantità ordinate su mobile */
  body.sss-universal-product-layout #sss-sprint-master .sss-fc-variants{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.sss-universal-product-layout #sss-sprint-master .sss-fc-variant{
    min-height:94px!important;
    padding:9px 6px!important;
  }
  body.sss-universal-product-layout #sss-sprint-master .sss-fc-variant img{
    width:54px!important;
    height:54px!important;
  }
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-quantities{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-quantities .sss-sm-choice{
    width:100%!important;
    min-width:0!important;
    min-height:54px!important;
  }
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-sides,
  body.sss-universal-product-layout #sss-sprint-master .sss-fc-graphic-services{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }

  /* Stampati: campi e riferimenti sempre entro lo schermo */
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-config-card input,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-config-card select,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-config-card textarea,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card input,
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-summary-card select{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    font-size:16px!important;
  }
  body.sss-universal-product-layout.sss-stampati-sprint-v031 .sss-stampati-reference-grid{
    grid-template-columns:1fr!important;
  }

  /* WooCommerce standard: variazioni e quantità senza overflow */
  body.sss-universal-product-layout div.product table.variations,
  body.sss-universal-product-layout div.product table.variations tbody,
  body.sss-universal-product-layout div.product table.variations tr,
  body.sss-universal-product-layout div.product table.variations th,
  body.sss-universal-product-layout div.product table.variations td{
    display:block!important;
    width:100%!important;
  }
  body.sss-universal-product-layout div.product table.variations th{
    padding-bottom:5px!important;
  }
  body.sss-universal-product-layout div.product table.variations td{
    padding-left:0!important;
  }
  body.sss-universal-product-layout div.product table.variations select,
  body.sss-universal-product-layout div.product .quantity,
  body.sss-universal-product-layout div.product .quantity input{
    max-width:100%!important;
  }

  /* Riepiloghi: righe leggibili e pulsante touch-friendly */
  body.sss-universal-product-layout #sss-payper .sss-p-row,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-price-row{
    gap:10px!important;
    min-height:48px!important;
    font-size:13px!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-row>span,
  body.sss-universal-product-layout #sss-payper .sss-p-row>strong,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-price-row>span,
  body.sss-universal-product-layout #sss-sprint-master .sss-sm-price-row>b{
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-add,
  body.sss-universal-product-layout #sss-sprint-master button[type=submit],
  body.sss-universal-product-layout div.product .single_add_to_cart_button{
    width:100%!important;
    min-height:56px!important;
    border-radius:13px!important;
    font-size:15px!important;
  }
}

/* Telefoni molto stretti */
@media (max-width:430px){
  body.sss-universal-product-layout #sss-payper .sss-p-colors,
  body.sss-universal-product-layout #sss-payper .sss-p-sizes{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.sss-universal-product-layout #sss-sprint-master .sss-fc-variants{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.sss-universal-product-layout #sss-payper .sss-p-methods{
    grid-template-columns:1fr!important;
  }
}

/* Nessun movimento inutile per chi preferisce animazioni ridotte */
@media (prefers-reduced-motion:reduce){
  body.sss-universal-product-layout *,
  body.sss-universal-product-layout *::before,
  body.sss-universal-product-layout *::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}
