.elementor-1072 .elementor-element.elementor-element-d6c5f3f{--display:flex;--min-height:200px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:flex-end;--padding-top:40px;--padding-bottom:40px;--padding-left:70px;--padding-right:70px;}.elementor-1072 .elementor-element.elementor-element-d6c5f3f:not(.elementor-motion-effects-element-type-background), .elementor-1072 .elementor-element.elementor-element-d6c5f3f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-1072 .elementor-element.elementor-element-553d2f7{text-align:left;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1072 .elementor-element.elementor-element-a97e443{text-align:right;}.elementor-1072 .elementor-element.elementor-element-a97e443 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:50px;font-weight:600;text-transform:uppercase;color:#FFFFFF;}.elementor-1072 .elementor-element.elementor-element-014b4ea{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:70px;--padding-bottom:70px;--padding-left:70px;--padding-right:70px;}.elementor-1072 .elementor-element.elementor-element-4b1b399{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-1072 .elementor-element.elementor-element-4b1b399:not(.elementor-motion-effects-element-type-background), .elementor-1072 .elementor-element.elementor-element-4b1b399 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1072 .elementor-element.elementor-element-632402e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;}.elementor-1072 .elementor-element.elementor-element-632402e .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;}.elementor-1072 .elementor-element.elementor-element-487dac0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1072 .elementor-element.elementor-element-13e6ece{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 40px) 0px;}.elementor-1072 .elementor-element.elementor-element-13e6ece .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:600;}.elementor-1072 .elementor-element.elementor-element-5cfee4f{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1072 .elementor-element.elementor-element-4b1b399{--width:25%;}.elementor-1072 .elementor-element.elementor-element-487dac0{--width:75%;}}@media(max-width:1024px){.elementor-1072 .elementor-element.elementor-element-d6c5f3f{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}}@media(max-width:767px){.elementor-1072 .elementor-element.elementor-element-d6c5f3f{--min-height:200px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-1072 .elementor-element.elementor-element-a97e443{text-align:center;}}/* Start custom CSS for container, class: .elementor-element-4b1b399 */.retrofit-cats {
    list-style: none;
    margin: 0;
    padding: 0;
    margin-inline-start: 25px;
}
.retrofit-cats li { 
    margin: .35rem 0;
}
.retrofit-cats li a {
    color: #656565;
}
.retrofit-cats a:hover {
    color: #AF2136;
}
.retrofit-cats a.is-active { font-weight: 600; 
    text-decoration: underline;
    text-decoration: none;
    color: #AF2136;
}
.retrofit-filters h3 {
    font-size: 16px;
    margin-top: 40px;
    text-transform: uppercase;
}

.retrofit-searchform {
  --bg: #f5f5f7;              /* sfondo input */
  --bg-hover: #f0f0f2;
  --bg-focus: #ffffff;
  --bd: #e6e6ea;              /* bordo input */
  --bd-focus: #cfd0d4;        /* bordo in focus */
  --ring: rgba(0,0,0,.06);    /* focus ring */
  --txt: #2a2a2a;             /* testo */
  --muted: #8a8f98;           /* placeholder/icona */
  --btn-bg: #e9e9ec;          /* bottone "chiaro" (se visibile) */
  --btn-bg-hover: #e2e2e6;
  --btn-txt: #444;

  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}

/* Contenitore per input + icona (pill) */
.retrofit-searchform .search-field {
  appearance: none;
  width: 100%;
  height: 46px;
  padding: 0 14px 0 42px;       /* spazio per icona a sinistra */
  border: none;
  border-radius: 999px;         /* effetto "pill" */
  background: var(--bg);
  color: var(--txt);
  line-height: 46px;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
  outline: none;
}

/* Icona lente (resta dentro l'input) */
.retrofit-searchform .retrofit-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--muted);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px; height: 18px;
  pointer-events: none;
}

/* Stati */
.retrofit-searchform .search-field:hover {
  background: var(--bg-hover);
  border-color: var(--bd);
}
.retrofit-searchform .search-field:focus {
  background: var(--bg-focus);
  border-color: var(--bd-focus);
  box-shadow: 0 0 0 4px var(--ring);
}

/* Placeholder */
.retrofit-searchform .search-field::placeholder {
  color: var(--muted);
  opacity: 1;
}

/* Bottone (opzionale): se usi search_button="Cerca" */
.retrofit-searchform .search-submit {
  height: 46px;
  padding: 0 16px;
  border: 1px solid var(--bd);
  border-radius: 999px;
  background: var(--btn-bg);
  color: var(--btn-txt);
  font-weight: 600;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.retrofit-searchform .search-submit:hover {
  background: var(--btn-bg-hover);
  border-color: var(--bd-focus);
}
.retrofit-searchform .search-submit:focus {
  box-shadow: 0 0 0 4px var(--ring);
  outline: none;
}

/* Se il bottone è vuoto (solo invio con Enter), nascondilo senza rompere il layout */
.retrofit-searchform .search-submit:empty {
  width: 0; padding: 0; border: 0; background: transparent;
}

/* Accessibilità: nasconde la label solo visivamente, resta per screen reader */
.retrofit-searchform .screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); border: 0;
}

/* Variante compatta (mobile) */
@media (max-width: 480px) {
  .retrofit-searchform .search-field { height: 42px; line-height: 42px; padding-left: 40px; }
  .retrofit-searchform .retrofit-icon { left: 12px; width: 16px; height: 16px; }
  .retrofit-searchform .search-submit { height: 42px; padding: 0 14px; }
}

/* Titoli: stessa resa per categoria e attributi */
.retrofit-filters h3,
.retrofit-attrs h3 {
  font-size: 16px;
  margin-top: 40px;
  text-transform: uppercase;
}

/* Layout VERTICALE dei filtri attributo */
.retrofit-attr-search {
  --bg:#f5f5f7; --bg-hover:#f0f0f2; --bg-focus:#ffffff;
  --bd:#e6e6ea; --bd-focus:#cfd0d4; --ring:rgba(0,0,0,.06);
  --txt:#2a2a2a; --muted:#8a8f98;

  display: flex;
  flex-direction: column;
  gap: 12px;              /* spazio tra i select */
}

/* niente label visibili: usiamo la prima option come placeholder */
.retrofit-attr-search .rf-label { display: none !important; }
.retrofit-attr-search .rf-row { margin: 0; }

/* Select moderni (verticali) */
.retrofit-attr-search .rf-select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  width: 100%;
  height: 46px;
  padding: 0 42px 0 14px;               /* spazio a destra per la freccia */
  border: none;
  border-radius: 12px;
  background: var(--bg);
  color: var(--txt);
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease;
  outline: none;

  /* freccia custom */
  background-image:
    url("data:image/svg+xml;utf8,<svg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M6 9l6 6 6-6' fill='none' stroke='%238a8f98' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  background-size: 18px 18px;
}

.retrofit-attr-search .rf-select:hover {
  background: var(--bg-hover);
  border-color: var(--bd);
}
.retrofit-attr-search .rf-select:focus {
  background: var(--bg-focus);
  border-color: var(--bd-focus);
  box-shadow: 0 0 0 4px var(--ring);
}

/* “Placeholder” grigio quando è selezionata la prima option (disabled) */
.retrofit-attr-search .rf-row:has(.rf-select option:checked[disabled]) .rf-select {
  color: var(--muted);
}

/* Pulsanti sotto, allineati a destra */
.retrofit-attr-search .rf-actions {
  margin-top: 4px;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.retrofit-attr-search .rf-submit {
  height: 46px;
  padding: 0 18px;
  border: none;
  border-radius: 999px;
  background: #e9e9ec;
  color: #444;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s, border-color .15s, box-shadow .15s;
}
.retrofit-attr-search .rf-submit:hover { background:#e2e2e6; border-color: var(--bd-focus); }
.retrofit-attr-search .rf-reset { align-self: center; font-size: 14px; color: #6b7280; text-decoration: underline; }

/* Mobile: niente cambia (già verticale) */
@media (max-width: 480px){
  .retrofit-attr-search .rf-select { height: 44px; }
  .retrofit-attr-search .rf-submit { height: 44px; padding: 0 16px; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-8f56786 *//* griglia */
#retrofit-products.retrofit-grid {
  display: grid;
  gap: 24px;
}
#retrofit-products.retrofit-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1024px) { #retrofit-products.retrofit-cols-3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px)  { #retrofit-products.retrofit-cols-3 { grid-template-columns: 1fr; } }

/* card */
#retrofit-products .retrofit-card {
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 14px;
  padding: 14px;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s;
}
#retrofit-products .retrofit-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

/* immagine */
#retrofit-products .retrofit-thumb { aspect-ratio: 4/3; overflow: hidden; border-radius: 10px; }
#retrofit-products .retrofit-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* CATEGORIA (grigio, sopra titolo) */
#retrofit-products .retrofit-term {
  color: #777;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .02em;
  margin-top: 10px;
  margin-bottom: 6px;
}

/* titolo */
#retrofit-products .retrofit-title {
  font-size: 16px;
  line-height: 1.3;
  margin: 0 0 6px;
}
#retrofit-products .retrofit-title a {
    color: #AF2136;
}

/* meta + bottoni */
#retrofit-products .retrofit-meta .price { font-weight: 600; margin-bottom: 8px; display: block; }
#retrofit-products .retrofit-actions .button { width: 100%; border-radius: 10px; padding: 10px 12px; }

/* paginazione */
#retrofit-products ~ .retrofit-pagination ul { display:flex; gap:8px; list-style:none; padding:0; }/* End custom CSS */