/* rm-pdp.css: scheda prodotto (piano 8,5, 15/09/2026). Solo token --rm-*: vale in chiaro e in scuro. */

/* --- prezzo del nuovo accanto al prezzo dell'usato ----------------------------------------- */
.rm-nuovo{margin:.4rem 0 0;font-size:var(--rm-fs-sm);line-height:1.45;color:var(--rm-ink-soft)}
.rm-nuovo strong{color:var(--rm-ink);font-weight:600;font-variant-numeric:tabular-nums}
.rm-nuovo-save{display:inline-block;margin-left:.35rem;padding:.08rem .55rem;border-radius:9999px;background:var(--rm-accent-soft);color:var(--rm-accent);font-weight:600;white-space:nowrap}

/* --- lista esemplari confrontabile --------------------------------------------------------- */
.rm-ex-list{margin-top:2.5rem}
.rm-ex-intro{margin:0 0 1rem}
.rm-ex-title{margin:0;font-size:var(--rm-fs-xl);line-height:1.15;letter-spacing:-.015em;font-weight:700;color:var(--rm-ink)}
.rm-ex-sub{margin:.35rem 0 0;font-size:var(--rm-fs-sm);color:var(--rm-ink-soft);max-width:60ch}
body .product-list-group.rm-ex{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;align-items:start;margin:0 0 12px;padding:14px;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg);box-shadow:none}
body .product-list-group.rm-ex .product-image{display:block;width:auto;border-radius:10px;overflow:hidden;background:var(--rm-card-photo)}
body .product-list-group.rm-ex .product-image img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;min-width:0}
body .product-list-group.rm-ex .description{width:auto;min-width:0;margin:0;padding:0}
body .product-list-group.rm-ex .product-name{margin:0 0 .45rem;font-size:var(--rm-fs-base);line-height:1.3}
body .product-list-group.rm-ex .product-name a{color:var(--rm-ink);text-decoration:none}
.rm-ex-badges{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 .4rem}
.rm-ex-badge{padding:.12rem .55rem;border-radius:9999px;background:var(--rm-accent-soft);color:var(--rm-accent);font-size:var(--rm-fs-xs);font-weight:600}
.rm-ex-badge-sold{background:var(--rm-line);color:var(--rm-ink-soft)}
.rm-ex-specs{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0 0 .7rem;font-size:var(--rm-fs-sm)}
.rm-ex-specs>div{display:flex;gap:.35rem;margin:0}
.rm-ex-specs dt{margin:0;color:var(--rm-ink-soft);font-weight:400}
.rm-ex-specs dd{margin:0;color:var(--rm-ink);font-weight:600;font-variant-numeric:tabular-nums}
.rm-ex-specs .rm-ex-acc{flex-basis:100%}
body .product-list-group.rm-ex .rm-ex-buy.product-details.rm-child-actions{position:static;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;width:100%;margin:0}
body .product-list-group.rm-ex .product-price{margin:0}
body .product-list-group.rm-ex .product-price .price{font-size:var(--rm-fs-lg);font-weight:700;color:var(--rm-ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.rm-ex-cta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
body .product-list-group.rm-ex .rm-child-btn{min-height:44px}
body .product-list-group.rm-ex .rm-child-details{display:inline-flex;align-items:center;min-height:44px}
body .product-list-group.rm-ex-sold{opacity:.72}
@media (max-width:639px){
  body .product-list-group.rm-ex{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:12px}
  .rm-ex-cta{width:100%}
  body .product-list-group.rm-ex .rm-child-btn{width:100%;min-height:48px}
}

/* --- recensioni: voto del negozio al posto di "Sii il primo" -------------------------------- */
.rm-rev-empty{max-width:640px;margin:2rem auto;padding:1.5rem 1.25rem;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg);text-align:center;color:var(--rm-ink)}
.rm-rev-eyebrow{margin:0 0 .5rem;font-size:var(--rm-fs-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rm-ink-soft)}
.rm-rev-score{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.25rem .6rem}
.rm-rev-num{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:2.6rem;font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--rm-ink);font-variant-numeric:tabular-nums}
.rm-rev-of{font-size:var(--rm-fs-md);color:var(--rm-ink-soft)}
.rm-rev-stars{position:relative;display:inline-block;align-self:center;font-size:1.35rem;line-height:1;letter-spacing:2px}
.rm-rev-stars::before{content:'\2605\2605\2605\2605\2605';color:var(--rm-line)}
.rm-rev-stars::after{content:'\2605\2605\2605\2605\2605';position:absolute;left:0;top:0;width:var(--rm-stars,90%);overflow:hidden;white-space:nowrap;color:var(--rm-accent-bg)}
.rm-rev-line{margin:.6rem 0 .6rem;font-size:var(--rm-fs-base);color:var(--rm-ink)}
.rm-rev-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600;color:var(--rm-accent);text-decoration:underline;text-underline-offset:3px}
.rm-rev-own{margin:.6rem 0 0;font-size:var(--rm-fs-sm);color:var(--rm-ink-soft)}
.rm-rev-own a{color:var(--rm-ink);text-decoration:underline;text-underline-offset:3px}

/* --- banner permuta nel linguaggio del sito ------------------------------------------------ */
.rm-permuta{margin:28px 0;padding:18px 20px;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-photo);color:var(--rm-ink)}
.rm-permuta-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px}
.rm-permuta-title{margin:0;font-size:var(--rm-fs-md);font-weight:700;line-height:1.25;color:var(--rm-ink)}
.rm-permuta-sub{margin:.3rem 0 0;max-width:56ch;font-size:var(--rm-fs-sm);color:var(--rm-ink-soft)}
.rm-permuta-toggle{min-height:44px;padding:0 18px;border:1.5px solid var(--rm-ink);border-radius:10px;background:transparent;color:var(--rm-ink);font-weight:600;cursor:pointer}
.rm-permuta-toggle:hover,.rm-permuta-toggle:focus-visible{border-color:var(--rm-accent);color:var(--rm-accent)}
.rm-permuta-body{margin-top:16px}
.rm-permuta-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.rm-permuta-grid label{display:flex;flex-direction:column;gap:4px;margin:0;font-size:var(--rm-fs-sm);color:var(--rm-ink-soft)}
.rm-permuta-wide{grid-column:1/-1}
.rm-permuta-grid input,.rm-permuta-grid select,.rm-permuta-grid textarea{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--rm-card-line);border-radius:10px;background:var(--rm-card-bg);color:var(--rm-ink);font-size:16px}
.rm-permuta-error{margin:10px 0 0;padding:8px 12px;border-radius:10px;background:var(--rm-accent-soft);color:var(--rm-ink);font-size:var(--rm-fs-sm)}
.rm-permuta-captcha{margin:12px 0}
.rm-permuta-submit{width:100%;min-height:48px}
.rm-permuta-done{margin:12px 0 0;color:var(--rm-ink)}
@media (max-width:639px){.rm-permuta-grid{grid-template-columns:1fr}.rm-permuta-toggle{width:100%}}

/* --- telefono: nome, prezzo e bottone prima della galleria; promessa e resto dopo ------------
   Struttura Hyvä child: .row(flex, wrap) > .col-gallery (colonna galleria) + .small-12.medium-4.columns > .ct-info.
   La riga passa in colonna, la colonna info "sparisce" (display:contents) e i suoi figli si ordinano
   insieme alla galleria; i 10px di margine replicano il padding della colonna tolta. */
@media (max-width:767px){
  .catalog-product-view .row:has(> .col-gallery){flex-direction:column;flex-wrap:nowrap}
  .catalog-product-view .row > .col-gallery{order:3;width:100%;max-width:100%}
  .catalog-product-view .row > .small-12.medium-4.columns:has(> .ct-info),
  .catalog-product-view .row > .small-12.medium-4.columns > .ct-info{display:contents}
  .catalog-product-view .row:has(> .col-gallery) > :not(.col-gallery):not(.small-12){order:6}
  .catalog-product-view .ct-info > *{order:5;margin-left:10px;margin-right:10px}
  .catalog-product-view .ct-info > h1.title-1{order:1;margin-top:.5rem;margin-bottom:.35rem}
  /* titolo: peso e misura veri (la classe font-semibold non esiste nel CSS compilato), niente riga sotto, allineato al prezzo */
  .catalog-product-view .ct-info > h1.title-1{margin-left:10px;margin-right:10px;padding-bottom:0;border-bottom:0;font-size:1.65rem;line-height:1.15;letter-spacing:-.015em}
  .catalog-product-view .ct-info > h1.title-1 strong{font-weight:700}
  /* meno vuoto tra header e titolo */
  .catalog-product-view .breadcrumbs{margin-top:12px}
  .catalog-product-view .first-block-product{margin-top:0}
  .catalog-product-view .ct-info > .rm-buybox{order:2;margin-bottom:.75rem}
  .catalog-product-view .rm-buybox .rm-cta-top{margin:.5rem 0}
  .catalog-product-view .rm-buybox .rm-cta-top .inner-add-to-cart{width:100%;margin:0}
  .catalog-product-view .rm-buybox #product-addtocart-button,
  .catalog-product-view .rm-buybox .rm-parent-direct,
  .catalog-product-view .rm-buybox .btn-permuta{width:100%;justify-content:center;min-height:52px}
}

/* --- barra fissa anche sui tablet (768-1023: scheda a una colonna) ------------------------- */
@media (min-width:768px) and (max-width:1023px){
  .rm-sticky-buy{display:flex;align-items:center;gap:.7rem;position:fixed;left:0;right:0;bottom:0;z-index:900;padding:.65rem 1.5rem;padding-bottom:calc(.65rem + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--rm-card-line);box-shadow:0 -6px 24px rgba(28,24,21,.10);transform:translateY(110%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
  .rm-sticky-buy.rm-on{transform:translateY(0)}
  .rm-sticky-img{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:0 0 44px;background:var(--rm-card-photo)}
  .rm-sticky-info{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;line-height:1.2}
  .rm-sticky-name{font-size:.85rem;color:var(--rm-ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .rm-sticky-price{font-size:1.08rem;font-weight:700;color:var(--rm-ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
  .rm-sticky-btn{flex:0 0 auto;min-height:48px;padding:.8rem 1.4rem;border:0;border-radius:10px;background:var(--rm-accent-bg);color:#fff;font-size:.95rem;font-weight:700;white-space:nowrap}
  :root[data-theme=dark] .rm-sticky-buy{background:rgba(24,22,20,.94)}
}
@media (min-width:768px) and (max-width:1023px) and (prefers-color-scheme:dark){
  :root:not([data-theme=light]) .rm-sticky-buy{background:rgba(24,22,20,.94)}
}
@media (prefers-reduced-motion:reduce){.rm-sticky-buy{transition:none}}

/* --- scheda esaurita: le alternative "disponibili oggi" bastano, via i due slider che le ripetevano --- */
.catalog-product-view:has(.rm-oos-head) .upsell-product-slider,
/* [R41-ALTERNATIVE] RIMOSSA: nascondeva il carosello alternative proprio sulle schede
   esaurite, che nel testo lo promettono ("Qui sotto trovi i modelli simili disponibili
   oggi") e che sono l'ultimo aggancio per una base di visitatori che non torna.
   Il doppione con l'upsell resta gestito da rm-r7-brand.css:138. */

/* --- galleria con una sola foto: la riga miniature (100px) mostrava la stessa immagine una seconda volta --- */
.catalog-product-view .col-gallery .flex.items-center:has(.js_thumbs_slides > .js_thumbs_slide:only-child){display:none}

/* --- tema scuro: i separatori ">" del breadcrumb restavano grigio scuro su fondo scuro --- */

/* --- "cosa significa" accanto alla condizione dell'esemplare --- */
.rm-esemplare-help{margin-left:.35rem;font-size:var(--rm-fs-xs);font-weight:500;color:var(--rm-accent);text-decoration:underline;text-underline-offset:2px;white-space:nowrap}

/* --- scheda esaurita: la galleria veniva nascosta da JS dopo il caricamento (CLS 0,43). Ora sparisce subito dal CSS --- */
.catalog-product-view:has(.rm-oos-head) .col-gallery{display:none}
.catalog-product-view:has(.rm-oos-head) .small-12.medium-4.columns:has(> .ct-info){width:100%;max-width:100%;flex:1 1 100%}
.catalog-product-view:has(.rm-oos-head) .ct-info{width:100%;max-width:1100px;margin-left:auto;margin-right:auto}

/* --- titolo della scheda in grassetto a ogni larghezza (le classi font-semibold/md:font-bold non esistono nel CSS compilato) --- */
.catalog-product-view .ct-info h1.title-1 strong{font-weight:700}

/* --- riga metodi di pagamento al posto del banner Klarna --- */
.rm-pay-line{margin:.9rem 0 0;font-size:var(--rm-fs-sm);line-height:1.45;color:var(--rm-ink-soft)}

/* --- lista esemplari su desktop: tre zone (foto | dati | prezzo e bottone) in una colonna di lettura, non a tutta pagina --- */
@media (min-width:768px){
  .rm-ex-list{max-width:1040px}
  body .product-list-group.rm-ex{grid-template-columns:120px minmax(0,1fr);padding:16px 20px;align-items:center}
  body .product-list-group.rm-ex .description{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:28px;align-items:center}
  body .product-list-group.rm-ex .description > .rm-ex-badges,
  body .product-list-group.rm-ex .description > .product-name,
  body .product-list-group.rm-ex .description > .rm-ex-specs{grid-column:1}
  body .product-list-group.rm-ex .rm-ex-buy.product-details.rm-child-actions{grid-column:2;grid-row:1 / span 3;flex-direction:column;align-items:flex-end;justify-content:center;width:auto;gap:6px}
  body .product-list-group.rm-ex .rm-ex-cta{flex-direction:column;align-items:flex-end;gap:2px}
  body .product-list-group.rm-ex .rm-ex-specs{margin-bottom:0}
}

/* --- modulo recensioni: chiuso dietro un bottone, intestazione nei colori del sito (via arancio/ambra Tailwind) --- */
.rm-rev-form > div{background:var(--rm-card-bg);border:1px solid var(--rm-card-line);border-radius:14px;box-shadow:none}
.rm-rev-form > div > div:first-child{background:var(--rm-card-photo);border-bottom:1px solid var(--rm-card-line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}
.rm-rev-form > div > div:first-child h3{font-size:var(--rm-fs-md);color:var(--rm-ink)}
.rm-rev-form > div > div:first-child h3 svg{color:var(--rm-accent-bg)}
.rm-rev-form > div > div:first-child p{color:var(--rm-ink-soft);margin-top:0;flex-basis:100%;order:3}
.rm-rev-toggle{min-height:44px;padding:0 18px;border:1.5px solid var(--rm-ink);border-radius:10px;background:transparent;color:var(--rm-ink);font-weight:600;cursor:pointer}
.rm-rev-toggle:hover,.rm-rev-toggle:focus-visible{border-color:var(--rm-accent);color:var(--rm-accent)}

/* --- la larghezza massima della lista veniva scavalcata da un max-width:100% del tema --- */
@media (min-width:768px){ body .mb-6 > .my-12.rm-ex-list{max-width:1040px!important} }

/* ===== [R5] round 5: scheda prodotto ===================================================== */
/* voto Trustpilot e ritorno al modello sotto il blocco d'acquisto dell'esemplare */
.rm-buy-extra{display:flex;flex-direction:column;gap:6px;margin:.6rem 0 .2rem}
.rm-tp-mini{display:inline-flex;align-items:center;gap:.4rem;min-height:32px;font-size:var(--rm-fs-sm);color:var(--rm-ink);text-decoration:none}
.rm-tp-mini:hover{text-decoration:underline}
.rm-tp-stars{color:var(--rm-accent);letter-spacing:1px}
.rm-parent-link{display:inline-flex;align-items:center;min-height:44px;font-size:var(--rm-fs-sm);font-weight:600;color:var(--rm-accent);text-decoration:underline;text-underline-offset:3px}
/* difetti dichiarati dentro "Questo esemplare" */
.rm-esemplare .rm-esemplare-note strong{font-weight:500}
/* esemplare senza foto: si dichiara, niente segnaposto Magento */
body .product-list-group.rm-ex .rm-ex-nophoto{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border:1px dashed var(--rm-card-line);color:var(--rm-ink-soft);font-size:var(--rm-fs-xs);font-weight:600;text-align:center;text-decoration:none;padding:6px}
/* miniature: nascoste anche quando il binario è vuoto (0 o 1 immagini) */
.catalog-product-view .col-gallery .flex.items-center:has(.js_thumbs_slides):not(:has(.js_thumbs_slide:nth-child(2))){display:none}
/* aree di tocco: frecce galleria, fisarmoniche, link della scheda, "cosa significa" */
.catalog-product-view .col-gallery button{min-width:44px;min-height:44px}
.catalog-product-view .btn-toggle-accordion{min-width:44px;min-height:44px}
.catalog-product-view .ct-links .link-icon{display:inline-flex;align-items:center;min-height:44px}
.rm-esemplare-help{display:inline-block;padding:10px 4px;margin:-10px 0}
.rm-sticky-name{font-size:.8125rem}
/* scheda esaurita in tema scuro: testo del bottone e sottotitolo leggibili (stili inline del template) */
[x-data="stockAlertForm()"] button[type="submit"]{color:#fff!important}
[x-data="stockAlertForm()"] > p{color:var(--rm-accent)!important;font-size:14px!important}
[x-data="stockAlertForm()"] input[type="email"]{min-height:44px}

@media (max-width:767px){
  /* esemplare: "Questo esemplare" subito dopo il bottone, prima della foto */
  .catalog-product-view .ct-info > .rm-esemplare{order:2}
  /* modello: la lista esemplari subito dopo "Scegli l'esemplare", la foto generica dopo */
  .catalog-product-view .row:has(> .col-gallery) > .mb-6:has(.rm-ex-list){order:3}
  .catalog-product-view .row:has(.rm-ex-list) > .col-gallery{order:4}
  .catalog-product-view .mb-6 > .rm-ex-list{margin-top:.5rem}
}
@media (max-width:479px){
  /* card esemplare compatte: prezzo e bottone sulla stessa riga, specifiche strette */
  body .product-list-group.rm-ex{grid-template-columns:88px minmax(0,1fr);gap:10px;padding:10px}
  .rm-ex-specs{gap:2px 12px;font-size:13px;margin-bottom:.5rem}
  body .product-list-group.rm-ex .rm-ex-buy.product-details.rm-child-actions{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px}
  body .product-list-group.rm-ex .product-price .price{font-size:1.15rem}
  .rm-ex-cta{width:auto;flex-direction:row;align-items:center;gap:4px 10px}
  body .product-list-group.rm-ex .rm-child-btn{width:auto;min-height:44px;padding:.55rem .9rem}
  body .product-list-group.rm-ex .rm-child-details{font-size:13px}
}

/* [R5b] telefono: "Questo esemplare" con etichetta sopra e valore sotto (le etichette lunghe andavano a capo su tre righe);
   card esemplare con gli accessori su una riga sola */
@media (max-width:479px){
  .rm-esemplare .rm-esemplare-list li{display:block}
  .rm-esemplare .rm-esemplare-list li > span{display:block;font-size:13px;margin-bottom:1px}
  .rm-esemplare .rm-esemplare-list li > strong{display:block;text-align:left}
  body .product-list-group.rm-ex .rm-ex-acc dd{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
}

/* [R5c] la larghezza della lista esemplari veniva scavalcata da una regola con ID in last-style.css
   (.page-product-grouped #product_addtocart_form .my-12{max-width:100%!important}): stessa ancora, specificità maggiore */
@media (min-width:768px){ .page-product-grouped #product_addtocart_form .my-12.rm-ex-list{max-width:1040px!important} }


/* =============================================================================================
   [R7-MOB] 15/09/2026 round 7 mobile/CRO (agente mobile). Blocco in coda: non riscrive regole sopra.
   ============================================================================================= */

/* [R7-MOB] barra fissa "Acquista ora": il fondo del footer (P.IVA, REA) restava sotto la barra */
@media (max-width:1023px){
  body:has(#rm-sticky-buy) footer.page-footer{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
}

@media (max-width:767px){
  /* [R7-MOB] esemplare: la foto subito dopo prezzo e bottone (era a ~750px, sotto la prima schermata);
     "Questo esemplare" dopo la foto. Il modello (lista esemplari) resta com'e'. */
  .catalog-product-view .row:not(:has(.rm-ex-list)) .ct-info > .rm-esemplare{order:4}
  /* [R48-RITORNO] provato a portare la foto nel primo schermo (r47): la foto entrava a 189
     ma la CTA finiva a 919 su un viewport di 844, cioe' fuori. Scambio rifiutato: su una
     scheda che deve vendere, il bottone nel primo schermo vale piu' della foto.
     Il rilievo resta aperto; la mitigazione e' la barra fissa con miniatura allo scroll. */
  .catalog-product-view .row:not(:has(.rm-ex-list)) > .col-gallery{order:3;margin-top:.25rem}
  .catalog-product-view .row:not(:has(.rm-ex-list)) > .col-gallery #gallery .relative.mb-6{margin-bottom:.5rem}
  .catalog-product-view .row:not(:has(.rm-ex-list)) > .col-gallery #gallery .relative.mb-6 img{max-height:60vw}
  /* vuoti nel blocco d'acquisto */
  .catalog-product-view .ct-info > .rm-buybox{margin-bottom:.25rem}
  .catalog-product-view .rm-buybox .rm-buy-extra{margin:.15rem 0 0;gap:0}
  /* breadcrumb su una riga: si accorciano prima le categorie intermedie */
  .catalog-product-view .breadcrumbs .items{flex-wrap:nowrap;min-width:0;overflow:hidden}
  .catalog-product-view .breadcrumbs .items li{display:flex;align-items:center;flex:0 1 auto;min-width:0;white-space:nowrap}
  .catalog-product-view .breadcrumbs .items li:not(:last-child)::after{flex:none;margin:0 7px}
  .catalog-product-view .breadcrumbs .items li > a,.catalog-product-view .breadcrumbs .items li > strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .catalog-product-view .breadcrumbs .items li.home{flex-shrink:0}
  .catalog-product-view .breadcrumbs .items li[class*="category"]{flex-shrink:4;min-width:2.2em}
}

/* [R7-MOB] testi sotto i 13px */
.rm-ex-badge{font-size:13px}
.rm-esemplare-help{font-size:13px}
/* [R7-MOB] aree di tocco >=44px: voto Trustpilot, "cosa significa", preferiti */
.rm-tp-mini{min-height:44px}
.rm-esemplare-help{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;margin:-13px 0;vertical-align:middle}
#add-to-wishlist{width:44px!important;height:44px!important;min-width:44px;min-height:44px}

/* [R7-MOB] card esemplare: "Incluso" e' la differenza fra un esemplare e l'altro, va letto intero (era tagliato a una riga) */
@media (max-width:479px){
  body .product-list-group.rm-ex .rm-ex-acc dd{display:block;-webkit-line-clamp:unset;overflow:visible;min-width:0}
}
.rm-ex-specs .rm-ex-acc dd{min-width:0;overflow-wrap:anywhere}
/* [R7-MOB] reCAPTCHA v2: il widget (304x78) arrivava ~8 s dopo e spingeva giu' "Avvisami" e il blocco permuta (CLS scheda esaurita) */
.g-recaptcha[id^="grecaptcha-container-"]{min-height:78px}

/* [R7-MOB b] bottone wallet Stripe sotto "Acquista ora": il contenitore passava da 24 a 0 e poi a 50px dopo 5-11 s
   (CLS 0,028 su footer e banner). Spazio riservato all'altezza del bottone, solo contenitore del tema. */
@media (max-width:1023px){ .catalog-product-view .rm-buybox .rm-express{min-height:50px} }

/* [R9] 15/09/2026 ------------------------------------------------------------------------------------------
   Telefono: percorso -> un solo "torna a", niente buco sotto "Acquista ora", storico vendite che sta nella card,
   riga "Disponibile" doppione tolta, preferiti con etichetta, etichette maiuscole a 13px. */
.rm-bc-back{display:none}
@media (max-width:767px){
  .catalog-product-view .breadcrumbs .items{display:none!important}
  .catalog-product-view .breadcrumbs .rm-bc-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;max-width:100%;padding:0 6px 0 0;font-size:15px;font-weight:600;line-height:1.2;color:var(--rm-ink)!important;text-decoration:none}
  .catalog-product-view .breadcrumbs .rm-bc-back .rm-bc-arrow{flex:none;font-size:18px;line-height:1}
  .catalog-product-view .breadcrumbs .rm-bc-back .rm-bc-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
}
/* express (Link / Apple Pay / Google Pay): chiuso finche' Stripe non disegna bottoni veri (product_button.phtml) */
@media (max-width:1023px){
  .catalog-product-view .rm-buybox .rm-express{min-height:0}
  .catalog-product-view .rm-buybox .rm-express:not(.rm-express-on){height:0;margin-top:0!important;overflow:hidden}
}
/* storico vendite: data su una riga, colonna "Stato" (sempre "Venduto") tolta sotto i 600px */
.rm-oos-sales-table .rm-col-data{white-space:nowrap}
@media (max-width:599px){
  .rm-oos-sales-table .rm-col-stato{display:none}
  .rm-oos-sales-table th,.rm-oos-sales-table td{padding:6px 5px!important}
  .rm-oos-sales-table .rm-col-data{padding-left:0!important}
  .rm-oos-sales-table th:nth-child(2){padding-left:0!important}
  .rm-oos-sales-table th:last-child,.rm-oos-sales-table td:last-child{padding-right:0!important;white-space:nowrap}
}
.rm-rev-eyebrow{font-size:13px;letter-spacing:.04em}
/* modello con un solo esemplare: il bottone in alto compra gia' quello, la card non ripete "Acquista ora" */
body:has(.rm-buybox .rm-parent-direct) .rm-ex-list .rm-ex-cta .rm-child-btn{display:none}
.rm-ex-intro-one{margin:0 0 .6rem}
@media (max-width:767px){
  .catalog-product-view .flex.flex-col.justify-between.my-4:has(.available){display:none}
  .catalog-product-view .product-info-main .ct-links{display:flex!important;flex-wrap:wrap;column-gap:20px;margin-top:4px!important;margin-bottom:0!important}
  .catalog-product-view .product-info-main .ct-links .link-icon{margin:0!important}
  .catalog-product-view .flex.mt-4.justify-end:has(#add-to-wishlist){justify-content:flex-start;margin-top:4px}
  .catalog-product-view .flex.mt-4.justify-end #add-to-wishlist{width:auto!important;padding:0 16px 0 12px!important;gap:8px;border-radius:9999px}
  .catalog-product-view .flex.mt-4.justify-end #add-to-wishlist::after{content:"Salva tra i preferiti";font-size:14px;font-weight:600;white-space:nowrap;color:var(--rm-ink)}
}

/* [R9b] 15/09/2026: preferiti allineati ai link (il bottone aveva ml-4); fascia "Ulteriori informazioni" meno alta su telefono */
@media (max-width:767px){
  .catalog-product-view .flex.mt-4.justify-end #add-to-wishlist{margin-left:0!important}
  .catalog-product-view .ct-prod-other-info{padding-top:24px!important;padding-bottom:24px!important}
  .catalog-product-view .ct-prod-other-info .card{padding:20px!important}
}

/* [R51-DEDUP] sulle schede esaurite il carosello generico ripeteva prodotti gia' presenti nel
   blocco curato (il 700D compariva due volte). Sparisce SOLO se il blocco curato e' popolato:
   quando non lo e', resta l'unica rete di recupero e deve restare visibile (era il difetto
   corretto dal round 41, non lo si reintroduce). */
.catalog-product-view:has(.rm-oos-head):has(.rm-oos-alt-avail) .related-product-slider{display:none}

/* [R55-TAP] aree toccabili dei link secondari: le stesse regole nel round 45 stavano in
   rm-r7-brand.css, che sulle schede prodotto PERDE contro questo foglio (caricato dopo).
   Misurato prima: fonte 32x19, CTA telefonica 203x37, privacy footer 147x19. */
@media (max-width:767px){
  .rm-prezzo-fonte,
  .rm-ex-nophoto-note a,
  .rm-ex-nophoto a,
  a[href^="tel:"]{display:inline-block;min-height:44px;padding:12px 4px;margin:-12px 0;line-height:20px}
  footer.page-footer a[href*="privacy"],
  footer.page-footer .pie-footer a{display:inline-block;min-height:44px;padding:12px 2px;margin:-12px 0;line-height:20px}
}

/* [R57-STICKY] la barra prezzo+CTA esisteva solo fino a 1023px. Su desktop il bottone esce di
   scena scorrendo e non restava nulla: qui la stessa barra, piu' contenuta e allineata a destra
   per non occupare tutta la larghezza di uno schermo grande. */
@media (min-width:1024px){
  .rm-sticky-buy{display:flex;align-items:center;gap:.8rem;position:fixed;right:24px;left:auto;bottom:24px;z-index:900;
    padding:.7rem 1rem;border-radius:14px;max-width:420px;
    background:rgba(255,255,255,.97);border:1px solid var(--rm-card-line);
    box-shadow:0 10px 30px rgba(28,24,21,.16);transform:translateY(140%);
    transition:transform .28s cubic-bezier(.2,.8,.2,1)}
  .rm-sticky-buy.rm-on{transform:translateY(0)}
  .rm-sticky-img{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:0 0 44px}
  .rm-sticky-info{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;line-height:1.2}
  .rm-sticky-name{font-size:.85rem;color:var(--rm-ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .rm-sticky-price{font-size:1.08rem;font-weight:700;color:var(--rm-ink);font-variant-numeric:tabular-nums}
  .rm-sticky-btn{flex:0 0 auto;min-height:44px;padding:.7rem 1.2rem;border:0;border-radius:10px;
    background:var(--rm-accent-bg);color:#fff;font-weight:700;white-space:nowrap}
  :root[data-theme=dark] .rm-sticky-buy{background:rgba(24,22,20,.97);border-color:var(--rm-line)}
}

/* [R59-FONTE] r55 nominava .rm-prezzo-fonte, che non esiste: la classe vera e' .rm-nuovo-fonte
   (misurata a 32x19 sulla pagina modello). E il link legale si fermava a 43px: mancava 1px. */
@media (max-width:767px){
  .rm-nuovo-fonte{display:inline-block;min-height:44px;padding:12px 4px;margin:-12px 0;line-height:20px}
  footer.page-footer a[href*="privacy"],
  footer.page-footer .pie-footer a{padding:13px 2px;margin:-13px 0}
}
