/*
Theme Name: OpenDoor Modern Child
Description: Modern, responsive visual layer for OpenDoorSM 1.3. Inherits all OpenDoor functionality and modernizes the presentation without replacing the parent templates or data model.
Version: 2.5.0-v10.17
Template: OpenDoor1.3
Author: Antonio Iazzetta
License: GPL-2.0-or-later
Text Domain: opendoor-modern-child
*/

:root {
  --od-bg: #f5f7fb;
  --od-surface: #ffffff;
  --od-surface-2: #f8fafc;
  --od-text: #111827;
  --od-muted: #667085;
  --od-border: #e6eaf0;
  --od-accent: #e11d2e;
  --od-accent-dark: #b91322;
  --od-accent-soft: #fff0f2;
  --od-dark: #101828;
  --od-success: #198754;
  --od-radius: 18px;
  --od-radius-sm: 12px;
  --od-shadow: 0 12px 35px rgba(16, 24, 40, .08);
  --od-shadow-hover: 0 20px 48px rgba(16, 24, 40, .13);
  --od-max: 1240px;
}/* =========================================================
   v10.30 — RICERCA LIBERA MAI VISIBILE + LOGIN FOOTER
   ========================================================= */

/* ---------- 1) RICERCA LIBERA: NASCOSTA PER SEMPRE ---------- */
html body #basicsearch,
html body #basicsearch *,
html body #basicsearch form,
html body #basicsearch fieldset,
html body #basicsearch input,
html body #basicsearch input#s,
html body #basicsearch #searchform,
html body #basicsearch form#searchform,
html body form#searchform + #basicsearch,
html body #searchform#searchform:not(#search .accordion-inner #searchform),
html body .widget_search,
html body .widget_search *,
html body .widget_search form,
html body .widget_search input,
html body #header .search-form,
html body #header #searchform,
html body #header form[role="search"],
html body form.search-form {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  width: 0 !important;
  max-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -99999px !important;
}

/* ---------- 2) FEEDBACK AUTO-SEARCH ---------- */
#search { position: relative !important; }

#search form.od-auto-searching {
  opacity: .6 !important;
  pointer-events: none !important;
  transition: opacity .12s ease !important;
}
#search form.od-auto-searching input,
#search form.od-auto-searching select,
#search form.od-auto-searching button,
#search form.od-auto-searching .btn {
  cursor: progress !important;
}

#search form.od-auto-searching::before {
  content: "Ricerca in corso…";
  position: absolute;
  top: -26px;
  left: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--od-accent, #e11d2e);
  background: #fff;
  padding: 3px 8px;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(225,29,46,.12);
  animation: odAutoSearchPulse .9s ease-in-out infinite;
  z-index: 5;
  pointer-events: none;
}
@keyframes odAutoSearchPulse {
  0%, 100% { opacity: .6; transform: translateY(0); }
  50%      { opacity: 1;  transform: translateY(-2px); }
}

/* ---------- 3) LOGIN NEL FOOTER: ALLINEATO E RESPONSIVE ---------- */

/* Contenitore principale */
#footer .od-top-login,
#belowfooter .od-top-login,
.od-top-login-in-footer {
  position: static !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;

  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  align-content: center !important;
  gap: 8px 12px !important;

  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;

  margin: 16px 0 0 !important;
  padding: 14px 0 0 !important;

  border-top: 1px solid rgba(255,255,255,.14) !important;
  background: transparent !important;
  box-shadow: none !important;

  font-size: 12px !important;
  line-height: 1.2 !important;
  text-align: center !important;
  overflow: visible !important;
  z-index: auto !important;
}

/* Ogni voce del login (link, item, form) */
#footer .od-top-login > *,
#belowfooter .od-top-login > *,
.od-top-login-in-footer > *,
#footer .od-top-login .od-top-login-item,
#belowfooter .od-top-login .od-top-login-item,
.od-top-login-in-footer .od-top-login-item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  min-height: 32px !important;
  margin: 0 !important;
  padding: 6px 14px !important;
  box-sizing: border-box !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  background: rgba(255,255,255,.06) !important;
  color: #e2e8f0 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-align: center !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease !important;
}

/* Link del login */
#footer .od-top-login a,
#belowfooter .od-top-login a,
.od-top-login-in-footer a {
  color: #e2e8f0 !important;
  text-decoration: none !important;
}

#footer .od-top-login a:hover,
#belowfooter .od-top-login a:hover,
.od-top-login-in-footer a:hover,
#footer .od-top-login > *:hover,
#belowfooter .od-top-login > *:hover,
.od-top-login-in-footer > *:hover {
  background: var(--od-accent, #e11d2e) !important;
  border-color: var(--od-accent, #e11d2e) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

/* Nasconde qualsiasi login rimasto nell'header */
#header .od-top-login:not(.od-top-login-in-footer) { display: none !important; }

/* Separatore visivo opzionale tra le voci del login */
#footer .od-top-login > * + *,
#belowfooter .od-top-login > * + *,
.od-top-login-in-footer > * + * {
  position: relative !important;
}
#footer .od-top-login > * + *::before,
#belowfooter .od-top-login > * + *::before,
.od-top-login-in-footer > * + *::before {
  content: none !important;
}

/* ---------- 4) RESPONSIVE ---------- */

/* Tablet */
@media (max-width: 900px) {
  #footer .od-top-login,
  #belowfooter .od-top-login,
  .od-top-login-in-footer {
    gap: 7px 10px !important;
    margin-top: 14px !important;
    padding-top: 12px !important;
  }
  #footer .od-top-login > *,
  #belowfooter .od-top-login > *,
  .od-top-login-in-footer > * {
    min-height: 30px !important;
    padding: 5px 12px !important;
    font-size: 11.5px !important;
  }
}

/* Smartphone */
@media (max-width: 640px) {
  #footer .od-top-login,
  #belowfooter .od-top-login,
  .od-top-login-in-footer {
    gap: 6px 8px !important;
    margin-top: 12px !important;
    padding: 10px 4px 0 !important;
    justify-content: center !important;
  }
  #footer .od-top-login > *,
  #belowfooter .od-top-login > *,
  .od-top-login-in-footer > * {
    min-height: 32px !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
    flex: 0 1 auto !important;
  }
}

/* Smartphone piccoli */
@media (max-width: 380px) {
  #footer .od-top-login,
  #belowfooter .od-top-login,
  .od-top-login-in-footer {
    gap: 5px 6px !important;
  }
  #footer .od-top-login > *,
  #belowfooter .od-top-login > *,
  .od-top-login-in-footer > * {
    padding: 6px 10px !important;
    font-size: 10.5px !important;
  }
}

html { scroll-behavior: smooth; }
body {
  margin: 0 !important;
  background: var(--od-bg) !important;
  color: var(--od-text) !important;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body:before {
  content: "";
  display: block;
  height: 4px;
  background: linear-gradient(90deg, var(--od-accent), #ff5a66 50%, #111827);
}

a, a:link, a:visited { color: var(--od-accent); transition: color .18s ease, background-color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
a:hover { color: var(--od-accent-dark); }
img { max-width: 100%; height: auto; }

.container {
  width: min(var(--od-max), calc(100% - 32px)) !important;
  max-width: var(--od-max) !important;
  margin: 18px auto 28px !important;
}
.outercontainer {
  margin-left: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.innerpadding { padding: 0 !important; }

#secondaryheadermenucontainer,
#header,
#menubar,
#content,
.bigheading,
#footer,
#belowfooter,
#calltoaction,
#social {
  width: 100% !important;
  box-sizing: border-box !important;
  border-left: 1px solid var(--od-border) !important;
  border-right: 1px solid var(--od-border) !important;
}

#secondaryheadermenucontainer {
  background: rgba(255,255,255,.88) !important;
  border-top: 1px solid var(--od-border) !important;
  border-bottom: 1px solid var(--od-border) !important;
  border-radius: var(--od-radius) var(--od-radius) 0 0;
  padding: 0 24px !important;
  backdrop-filter: blur(16px);
}
#secondaryheadermenu { height: auto !important; min-height: 40px; overflow: visible !important; }
#secondaryheadermenu li { float: none !important; display: inline-block; padding: 0 0 0 18px !important; font-size: 12px !important; line-height: 40px !important; }

#header {
  min-height: 102px;
  background: var(--od-surface) !important;
  padding: 22px 28px !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  position: relative;
  display: flex;
  align-items: center;
  gap: 24px;
  border-radius: 0 !important;
  box-shadow: 0 8px 30px rgba(16,24,40,.04);
}
#logo {
  width: 210px !important;
  height: 70px !important;
  margin: 0 !important;
  flex: 0 0 210px;
  position: relative;
  z-index: 2;
}
#logo a {
  width: 100% !important;
  height: 100% !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: contain !important;
  display: block !important;
}
#description { display: none !important; }
#logo2 { top: 16px !important; right: 28px !important; width: 180px !important; height: 70px !important; background-size: contain !important; background-position: center right !important; }
#headertextandsocialicons {
  position: static !important;
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 18px;
  color: var(--od-muted);
}
#headertext { margin: 0 !important; font-size: 14px; }
#socialheader { text-align: right; }
#socialheader a { filter: grayscale(100%); opacity: .7; }
#socialheader a:hover { filter: none; opacity: 1; }

#menubar {
  background: var(--od-dark) !important;
  border-color: var(--od-dark) !important;
  padding: 0 14px !important;
  border-radius: 0 0 var(--od-radius) var(--od-radius);
  min-height: 56px;
  box-shadow: 0 14px 35px rgba(16,24,40,.12);
  position: relative;
  z-index: 80;
}
ul.sf-menu { display: flex !important; align-items: stretch; gap: 2px; float: none !important; margin: 0 !important; padding: 0 !important; }
ul.sf-menu > li { float: none !important; margin: 0 !important; list-style: none; }
ul.sf-menu > li > a {
  display: flex !important;
  align-items: center;
  min-height: 56px;
  padding: 0 18px !important;
  border-radius: 10px;
  color: #e8edf5 !important;
  text-transform: none !important;
  letter-spacing: .01em;
  font-weight: 700 !important;
  font-size: 13px !important;
  line-height: 1 !important;
}
ul.sf-menu > li:hover > a,
ul.sf-menu > li.sfHover > a,
ul.sf-menu > li.current-menu-item > a,
ul.sf-menu > li.current-menu-ancestor > a,
ul.sf-menu > li.current_page_item > a {
  color: #fff !important;
  background: var(--od-accent) !important;
}
ul.sf-menu li ul {
  background: #fff !important;
  border: 1px solid var(--od-border) !important;
  border-radius: 14px !important;
  box-shadow: var(--od-shadow) !important;
  padding: 8px !important;
  min-width: 210px;
}
ul.sf-menu li li { background: transparent !important; }
ul.sf-menu li li a,
ul.sf-menu li li li a { color: var(--od-text) !important; background: transparent !important; padding: 10px 12px !important; border-radius: 9px; font-size: 13px !important; line-height: 1.2 !important; }
ul.sf-menu li li:hover > a,
ul.sf-menu li li.sfHover > a { color: var(--od-accent) !important; background: var(--od-accent-soft) !important; }

.bigheading {
  background: linear-gradient(135deg, #101828 0%, #1f2937 65%, #2e3441 100%) !important;
  border-color: #101828 !important;
  color: #fff !important;
  padding: 28px 30px !important;
  min-height: 104px;
  display: flex !important;
  align-items: center;
  gap: 22px;
  border-radius: var(--od-radius) !important;
  box-shadow: var(--od-shadow);
  overflow: hidden;
  position: relative;
}
.bigheading:after {
  content: "";
  position: absolute;
  width: 300px;
  height: 300px;
  right: -110px;
  top: -150px;
  background: radial-gradient(circle, rgba(225,29,46,.38), transparent 66%);
  pointer-events: none;
}
.bigheading > * { position: relative; z-index: 1; }
.bigheading .four.columns { width: 24% !important; margin: 0 !important; }
.bigheading .eight.columns { width: 52% !important; margin: 0 !important; }
.bigheading .twelve.columns { width: 76% !important; margin: 0 !important; }
.bigheading h2,
.bigheading h2#title { color: #fff !important; font-size: clamp(24px, 3vw, 34px) !important; line-height: 1.18 !important; margin: 0 !important; font-weight: 800 !important; text-transform: none !important; text-shadow: none !important; }
.bigheading h2.blogtitle { text-transform: none !important; }
.bigheading span { padding-left: 0 !important; }
#pricebig { color: #fff !important; text-align: right; font-weight: 800; }

#content {
  background: transparent !important;
  border: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(240px, 280px) minmax(0,1fr);
  gap: 24px;
  margin-top: 24px !important;
}
#content > .four.columns,
#content > #leftsidebar { width: auto !important; margin: 0 !important; min-width: 0; }
#content > .twelve.columns { width: auto !important; margin: 0 !important; min-width: 0; }

#leftsidebar,
#sidebar-left,
#sidebar-right,
#content .widget,
.widget {
  min-width: 0;
}
#leftsidebar > *,
#sidebar-left > *,
#sidebar-right > *,
#content > .four.columns > *,
#content > .twelve.columns > * {
  margin-bottom: 18px;
}

.widget,
#search,
#calculator_widget,
#loancalculator_cars,
#loancalculator_houses,
.homepagewidgets > div,
.agentbox,
#listingcontact,
#related,
#maps,
#details,
#listingcontent,
#videos,
#comments,
#homepageblog {
  background: var(--od-surface) !important;
  border: 1px solid var(--od-border) !important;
  border-radius: var(--od-radius) !important;
  box-shadow: var(--od-shadow) !important;
}
.widget { padding: 18px !important; }
.widget-title,
.widgettitle { color: var(--od-text) !important; font-size: 14px !important; font-weight: 800 !important; text-transform: none !important; letter-spacing: .01em; margin: 0 0 12px !important; }

#search {
  padding: 14px !important;
  position: relative;
  overflow: hidden;
}
#search .accordion-group { border: 0 !important; margin: 6px 0 !important; border-radius: 13px !important; overflow: hidden; }
#search .accordion-heading a,
#search .accordion-heading a:link,
#search .accordion-heading a:visited {
  display: flex !important;
  align-items: center;
  gap: 10px;
  color: #fff !important;
  background: var(--od-dark) !important;
  box-shadow: none !important;
  border-radius: 11px !important;
  padding: 12px 14px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase;
}
#search #accordionBrowseBy .accordion-heading a,
#search #accordionBrowseBy .accordion-heading a:visited { background: #eef2f6 !important; color: var(--od-text) !important; }
#search #accordionBrowseBy .accordion-heading a.alllistings { background: var(--od-accent) !important; color: #fff !important; }
#search .accordion-heading a:hover { transform: translateY(-1px); }
#search .accordion-inner { padding: 14px !important; background: var(--od-surface-2) !important; border: 1px solid var(--od-border); border-top: 0; border-radius: 0 0 11px 11px; }
#search label { color: var(--od-muted); font-size: 12px !important; font-weight: 700; display: block; margin-bottom: 5px; }

input[type=text], input[type=email], input[type=password], input[type=number], input[type=tel], input[type=url], select, textarea {
  width: 100% !important;
  box-sizing: border-box !important;
  min-height: 44px;
  border: 1px solid #d8dee8 !important;
  background: #fff !important;
  color: var(--od-text) !important;
  border-radius: 11px !important;
  padding: 9px 12px !important;
  outline: none !important;
  box-shadow: 0 1px 2px rgba(16,24,40,.03) inset;
  transition: border-color .18s ease, box-shadow .18s ease;
}
textarea { min-height: 120px; resize: vertical; }
input[type=text]:focus, input[type=email]:focus, input[type=password]:focus, input[type=number]:focus, input[type=tel]:focus, input[type=url]:focus, select:focus, textarea:focus {
  border-color: var(--od-accent) !important;
  box-shadow: 0 0 0 4px rgba(225,29,46,.10) !important;
}

.btn,
button,
input[type=submit],
input[type=button] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 42px;
  padding: 10px 16px !important;
  border: 1px solid var(--od-accent) !important;
  border-radius: 11px !important;
  background: var(--od-accent) !important;
  color: #fff !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  letter-spacing: .01em;
  text-shadow: none !important;
  box-shadow: 0 7px 16px rgba(225,29,46,.16) !important;
  cursor: pointer;
}
.btn:hover,
button:hover,
input[type=submit]:hover,
input[type=button]:hover { background: var(--od-accent-dark) !important; border-color: var(--od-accent-dark) !important; color: #fff !important; transform: translateY(-1px); box-shadow: 0 11px 24px rgba(225,29,46,.22) !important; }
.btn.btn-lightgray { background: #fff !important; color: var(--od-text) !important; border-color: var(--od-border) !important; box-shadow: none !important; }
.btn.btn-block { width: 100% !important; }

h1,h2,h3,h4,h5,h6 { color: var(--od-text) !important; text-transform: none !important; font-weight: 800 !important; }
.bar,
h2.bar, h3.bar, h4.bar {
  position: relative;
  color: var(--od-text) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--od-border) !important;
  padding: 0 0 12px !important;
  margin: 0 0 18px !important;
  line-height: 1.25 !important;
  text-shadow: none !important;
}
.bar span, h2.bar span, h3.bar span, h4.bar span { background: transparent !important; padding: 0 !important; }
.bar:after { content:""; position:absolute; left:0; bottom:-1px; width:48px; height:3px; background:var(--od-accent); border-radius:99px; }

#calltoaction { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; background: transparent !important; border: 0 !important; margin-top: 24px !important; }
#calltoaction > .one-third { width: auto !important; margin: 0 !important; }
#calltoaction .inner {
  min-height: 148px;
  padding: 26px !important;
  background: linear-gradient(180deg, #fff, #fafbfc) !important;
  border: 1px solid var(--od-border);
  border-radius: var(--od-radius);
  box-shadow: var(--od-shadow);
  transition: transform .18s ease, box-shadow .18s ease;
}
#calltoaction .inner:hover { transform: translateY(-3px); box-shadow: var(--od-shadow-hover); }

#listings { display: flex; flex-wrap: wrap; gap: 18px; }
#listings > h2 { width: 100%; }
.listingblock,
.listingblockgrid {
  position: relative;
  overflow: hidden;
  background: var(--od-surface) !important;
  border: 1px solid var(--od-border);
  border-radius: var(--od-radius) !important;
  box-shadow: var(--od-shadow) !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.listingblock:hover,
.listingblockgrid:hover { transform: translateY(-3px); box-shadow: var(--od-shadow-hover) !important; border-color: #d7dde7; }
.listingblock { display: grid; grid-template-columns: minmax(210px, 37%) minmax(0,1fr); gap: 0; width: 100%; margin: 0 !important; }
#content .twelve.columns .listingblock > .four.columns { width: auto !important; margin: 0 !important; }
.listingblocktext { width: auto !important; margin: 0 !important; padding: 0 !important; }
.listingblock .vignette:after { box-shadow: inset 0 -50px 70px rgba(0,0,0,.18) !important; }
.listingblock img,
.listingblockgrid img { display: block; width: 100%; }
.listingblocksection { padding: 18px !important; }
.listingblock h4.address { color: var(--od-muted) !important; font-size: 13px !important; font-weight: 600 !important; margin: 6px 0 9px !important; }
.listingblock h3, .listingblockgrid h3 { margin: 0 0 6px !important; }
.listingblock .price,
.listingblockgrid .price,
#pricebig { color: var(--od-accent) !important; font-weight: 900 !important; }
.comparelink { font-weight: 800; }

.listingblockgrid {
  width: calc(33.333% - 12px) !important;
  margin: 0 !important;
}
.listingblockgrid .four.columns { width: auto !important; margin: 0 !important; }
.listingblockgrid .listingblocksection { min-height: 174px; display: flex; flex-direction: column; }
.listingblockgrid .btn { margin-top: auto; }
.banner,
.listingblock .banner { border-radius: 9px !important; overflow: hidden; }

#details, #listingcontent, #videos, #maps, #related, #listingcontact, #comments { padding: 22px !important; }
#details .tabbable { display: grid; grid-template-columns: 170px minmax(0,1fr); gap: 18px; }
#details .nav-tabs { border: 0 !important; margin: 0 !important; }
#details .nav-tabs li { float: none !important; margin: 0 0 6px !important; }
#details .nav-tabs li a { display:block; padding: 10px 12px !important; border: 1px solid transparent !important; border-radius: 10px !important; color: var(--od-muted) !important; }
#details .nav-tabs li a:hover { color: var(--od-accent) !important; background: var(--od-accent-soft) !important; }
#details .nav-tabs li.active a { color: var(--od-text) !important; background: var(--od-accent-soft) !important; border-color: #ffd4d8 !important; font-weight: 800; }
.specslist { list-style: none !important; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 0 !important; padding: 0 !important; }
.specslist li { width: auto !important; margin: 0 !important; padding: 11px 12px !important; border: 1px solid var(--od-border); border-radius: 10px; background: var(--od-surface-2); }
.servicehistoryicon { color: var(--od-accent) !important; }
#slider2, #carousel { max-width: 100% !important; }
#slider2 { border-radius: 16px; overflow: hidden; background: #0c111d; }
#carousel { margin-top: 12px !important; }
#carousel .slides li { padding: 4px; }
#carousel img { border-radius: 9px; }
#maps #map,
#maps #streetview,
#searchresultsmapcontainer #map { min-height: 360px; border-radius: 14px; overflow: hidden; }
#searchresultsmapcontainer { padding: 0 !important; border: 0 !important; margin-bottom: 18px !important; }

.blogrow,
.homepageblogitem,
.blogpageblogitem { padding: 18px !important; background: var(--od-surface) !important; border: 1px solid var(--od-border); border-radius: var(--od-radius); box-shadow: var(--od-shadow); margin-bottom: 14px !important; }
.blogrow img { border-radius: 12px; margin-right: 18px !important; }
.postmeta { color: var(--od-muted) !important; font-size: 12px !important; font-style: normal !important; }

#orderresults { margin: 0 0 0 auto; width: min(300px,100%); }
#heading_searchresults { color:#fff !important; }
.alert { border-radius: 12px !important; border: 1px solid var(--od-border) !important; padding: 14px 16px !important; background: #fff !important; color: var(--od-muted) !important; }
.alert-error { border-color: #f4c2c7 !important; background: #fff6f7 !important; color: #842029 !important; }

#footer {
  background: #0f1724 !important;
  border-color: #0f1724 !important;
  border-radius: var(--od-radius) !important;
  color: #cbd5e1 !important;
  padding: 30px !important;
  margin-top: 26px !important;
  box-shadow: 0 18px 45px rgba(16,24,40,.18);
}
#footer .four.columns { width: 25% !important; margin: 0 !important; padding: 0 12px; box-sizing: border-box; }
#footer .widget, #footer h1, #footer h2, #footer h3, #footer h4, #footer h5, #footer h6 { color: #f8fafc !important; background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; }
#footer a { color: #e2e8f0 !important; }
#footer a:hover { color: #fff !important; }
#footer img { max-height: 55px; width: auto; opacity: .82; }
#belowfooter {
  margin-top: 12px !important;
  padding: 18px 4px 0 !important;
  border: 0 !important;
  color: var(--od-muted) !important;
  font-size: 12px;
}
#belowfooter p { margin: 0; }
#footermenu { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:12px 20px; margin:0; padding:0; }
#footermenu li { list-style:none; }
#footermenu a { color: var(--od-muted); }

#login { margin: 0 !important; }
#login .login a { color: #fff !important; }
.vignette:after { border-radius: inherit; }
#toTop { background: var(--od-accent) !important; border-radius: 999px !important; box-shadow: var(--od-shadow) !important; }
.top { float: right; }

.od-mobile-menu-toggle { display:none; margin-left:auto; }
@media (max-width: 980px) {
  .container { width: min(var(--od-max), calc(100% - 20px)) !important; }
  #content { grid-template-columns: 230px minmax(0,1fr); gap: 16px; }
  .listingblockgrid { width: calc(50% - 9px) !important; }
  .specslist { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  body { font-size: 14px !important; }
  .container { width: calc(100% - 16px) !important; margin: 8px auto 20px !important; }
  #header { min-height: 74px; padding: 14px 16px !important; gap: 12px; }
  #logo { width: 170px !important; height: 56px !important; flex-basis: 170px; }
  #logo2 { display:none !important; }
  #headertextandsocialicons { display:none !important; }
  #menubar { padding: 8px !important; min-height: 48px; }
  .od-mobile-menu-toggle { display:inline-flex !important; width:auto !important; margin-left:auto; min-height:40px; }
  ul.sf-menu { display:none !important; flex-direction:column; gap:3px; padding-top:7px !important; }
  #menubar.od-mobile-open ul.sf-menu { display:flex !important; }
  ul.sf-menu > li > a { min-height:44px; padding: 0 13px !important; }
  ul.sf-menu li ul { position: static !important; width: auto !important; min-width: 0 !important; margin-top: 4px !important; }
  #secondaryheadermenucontainer { padding:0 14px !important; }
  #secondaryheadermenu li { line-height:34px !important; padding-left:12px !important; }
  #content { display:block !important; margin-top: 16px !important; }
  #content > .four.columns,
  #content > .twelve.columns { width:100% !important; }
  #content > .four.columns { margin-bottom:16px !important; }
  .bigheading { min-height:0; padding: 22px 18px !important; display:block !important; }
  .bigheading .four.columns,
  .bigheading .eight.columns,
  .bigheading .twelve.columns { width:100% !important; }
  #pricebig { text-align:left; margin-top:8px !important; }
  #calltoaction { grid-template-columns:1fr; gap:12px; }
  .listingblock { grid-template-columns:1fr; }
  .listingblockgrid { width:100% !important; }
  #details .tabbable { display:block; }
  #details .nav-tabs { margin-bottom:12px !important; }
  #details .nav-tabs li { display:inline-block; margin-right:4px !important; }
  .specslist { grid-template-columns:1fr; }
  #footer { padding: 22px 18px !important; }
  #footer .four.columns { width:100% !important; padding:0 !important; margin-bottom:18px !important; }
  #footermenu { justify-content:flex-start; }
  .homepagewidgets { display:block !important; }
  .homepagewidgets > div { width:100% !important; margin:0 0 12px !important; }
  #slider { width:100% !important; margin-left:0 !important; }
  .html_content { position:static !important; max-width:none !important; margin-top:-2px; border-radius:0 0 12px 12px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *:before, *:after { transition:none !important; animation:none !important; }
}

#content:before,
#content:after,
#menubar:before,
#menubar:after,
#header:before,
#header:after,
#footer:before,
#footer:after { display: none !important; }

#slider2 {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #0b1220 !important;
  box-shadow: none !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}
#slider2 .flex-viewport {
  width: 100% !important;
  overflow: hidden !important;
  border-radius: 18px !important;
}
#slider2 .slides {
  margin: 0 !important;
  padding: 0 !important;
}
#slider2 .slides > li {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  background: #0b1220 !important;
}
#slider2 .slides > li > a {
  display: block !important;
  width: 100% !important;
  line-height: 0 !important;
}
#slider2 .slides img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: clamp(240px, 48vw, 620px) !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
  border-radius: 0 !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}
#slider2 .flex-direction-nav a {
  width: 42px !important;
  height: 42px !important;
  top: 50% !important;
  margin-top: -21px !important;
  background: rgba(15,23,36,.68) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 999px !important;
  text-indent: -9999px !important;
  opacity: .95 !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(8px);
}
#slider2 .flex-direction-nav .flex-prev { left: 12px !important; }
#slider2 .flex-direction-nav .flex-next { right: 12px !important; }
#slider2 .flex-direction-nav .flex-prev:after,
#slider2 .flex-direction-nav .flex-next:after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: 9px !important;
  height: 9px !important;
  margin: -5px 0 0 -4px !important;
  border-top: 2px solid #fff !important;
  border-right: 2px solid #fff !important;
}
#slider2 .flex-direction-nav .flex-prev:after { transform: rotate(-135deg); margin-left: -2px !important; }
#slider2 .flex-direction-nav .flex-next:after { transform: rotate(45deg); margin-left: -7px !important; }
#carousel {
  margin: 10px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
#carousel .flex-viewport { border-radius: 12px !important; overflow: hidden !important; }
#carousel .slides > li { margin-right: 7px !important; padding: 0 !important; border-radius: 10px !important; overflow: hidden !important; background: transparent !important; }
#carousel .slides img {
  width: 86px !important;
  height: 58px !important;
  object-fit: cover !important;
  border: 2px solid transparent !important;
  border-radius: 10px !important;
  opacity: .58 !important;
  transition: opacity .18s ease, border-color .18s ease, transform .18s ease !important;
}
#carousel .slides img:hover,
#carousel .flex-active-slide img { opacity: 1 !important; border-color: var(--od-accent) !important; }

.od-gallery-counter {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 20;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(15,23,36,.72);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .02em;
  backdrop-filter: blur(8px);
  pointer-events: none;
}
.od-gallery-dots { display: none; }

@media (max-width: 760px) {
  .container { width: calc(100% - 16px) !important; }
  #content { display: flex !important; flex-direction: column !important; gap: 14px !important; }
  #content > .twelve.columns { order: 1 !important; }
  #content > .four.columns,
  #content > #leftsidebar { order: 2 !important; }
  .bigheading { margin-bottom: 14px !important; border-radius: 15px !important; }
  .bigheading h2,
  .bigheading h2#title { font-size: 23px !important; }
  #pricebig { font-size: 24px !important; }
  #content > .twelve.columns,
  #content > .four.columns,
  #content > #leftsidebar,
  #content .columns,
  #content table,
  #content iframe,
  #content pre { max-width: 100% !important; box-sizing: border-box !important; }
  #slider2 { border-radius: 15px !important; touch-action: pan-y pinch-zoom !important; }
  #slider2 .flex-viewport { border-radius: 15px !important; }
  #slider2 .slides img {
    height: min(72vw, 430px) !important;
    min-height: 205px !important;
    object-fit: cover !important;
  }
  #slider2 .flex-direction-nav a {
    width: 38px !important;
    height: 38px !important;
    margin-top: -19px !important;
    top: 50% !important;
    opacity: .92 !important;
  }
  #slider2 .flex-direction-nav .flex-prev { left: 9px !important; }
  #slider2 .flex-direction-nav .flex-next { right: 9px !important; }
  #carousel { display: none !important; }
  .od-gallery-dots {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 22px;
    margin: 7px 0 0;
  }
  .od-gallery-dots button {
    width: 6px !important;
    min-width: 6px !important;
    height: 6px !important;
    min-height: 6px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #c8ced8 !important;
    box-shadow: none !important;
    font-size: 0 !important;
    transform: none !important;
  }
  .od-gallery-dots button.is-active {
    width: 20px !important;
    min-width: 20px !important;
    background: var(--od-accent) !important;
  }
}

@media (max-width: 390px) {
  #slider2 .slides img {
    height: 61vw !important;
    min-height: 195px !important;
  }
  #slider2 .flex-direction-nav a {
    width: 34px !important;
    height: 34px !important;
    margin-top: -17px !important;
  }
}

#search,
#leftsidebar #search,
#sidebar-left #search,
.sidebar #search { display: block !important; }
#basicsearch,
#basicsearch form,
#basicsearch input#s,
form#searchform + #basicsearch { display: none !important; }

#leftsidebar,
#sidebar-left,
#sidebar-right { top: 0 !important; }

.bigheading {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 24px !important;
  min-width: 0 !important;
}
.bigheading > .four.columns.alpha { display: none !important; }
.bigheading > .eight.columns,
.bigheading > .four.columns.omega,
.bigheading > .twelve.columns {
  float: none !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}
.bigheading > .eight.columns h2,
.bigheading > .twelve.columns h2,
.bigheading #title {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}
.bigheading > .four.columns.omega { justify-self: end !important; }
#pricebig { white-space: nowrap !important; }

#details .tabbable,
#details .tabbable.tabs-left {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: visible !important;
}
#details .tabs-left > .nav-tabs,
#details .tabs-left > .nav-tabs:first-child,
#details .nav-tabs {
  float: none !important;
  position: static !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
}
#details .nav-tabs > li,
#details .tabs-left > .nav-tabs > li {
  float: none !important;
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
#details .nav-tabs > li > a,
#details .tabs-left > .nav-tabs > li > a {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 42px !important;
  box-sizing: border-box !important;
  padding: 10px 15px !important;
  border: 1px solid var(--od-border) !important;
  border-radius: 12px !important;
  background: var(--od-surface-2) !important;
  color: var(--od-muted) !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}
#details .nav-tabs > li.active > a,
#details .nav-tabs > li.active > a:hover,
#details .tabs-left > .nav-tabs > li.active > a {
  color: var(--od-text) !important;
  background: var(--od-accent-soft) !important;
  border-color: #ffd4d8 !important;
  font-weight: 800 !important;
}
#details .tab-content {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
#details .tab-pane {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

#details ul.specslist,
#details ul.specslist.fourcolumns {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  box-sizing: border-box !important;
}
#details ul.specslist > li,
#details ul.specslist.fourcolumns > li,
#details ul.specslist > li.three.columns,
#details ul.specslist > li.four.columns {
  float: none !important;
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  border: 1px solid var(--od-border) !important;
  border-radius: 14px !important;
  background: var(--od-surface-2) !important;
  list-style: none !important;
}
#details ul.specslist > li > a,
#details ul.specslist > li > span,
#details ul.specslist > li > strong {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  white-space: normal !important;
  line-height: 1.35 !important;
  color: var(--od-muted) !important;
}
#details ul.specslist > li > a:hover { color: var(--od-accent) !important; }

#details > h3.bar {
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 0 18px !important;
  padding: 0 0 12px !important;
  background: transparent !important;
  border-bottom: 1px solid var(--od-border) !important;
  line-height: 1.25 !important;
  text-shadow: none !important;
}
#details > h3.bar:after {
  content: "";
  display: block;
  width: 88px;
  height: 4px;
  margin-top: 10px;
  border-radius: 999px;
  background: var(--od-accent);
}

@media (max-width: 900px) {
  #details ul.specslist,
  #details ul.specslist.fourcolumns { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 760px) {
  .bigheading {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 20px 17px !important;
  }
  .bigheading > .four.columns.omega { justify-self: start !important; }
  #pricebig { text-align: left !important; font-size: 24px !important; }

  #details { padding: 17px !important; }
  #details .nav-tabs { gap: 7px !important; margin-bottom: 14px !important; }
  #details .nav-tabs > li { flex: 1 1 auto !important; }
  #details .nav-tabs > li > a { text-align: center !important; min-height: 40px !important; padding: 9px 10px !important; }
  #details ul.specslist,
  #details ul.specslist.fourcolumns { grid-template-columns: 1fr !important; gap: 9px !important; }
  #details ul.specslist > li,
  #details ul.specslist.fourcolumns > li { min-height: 52px !important; }
}

#search { position: relative !important; z-index: 3 !important; clear: both !important; }
#search .accordion-group,
#search .accordion-heading,
#search .accordion-inner { max-width: 100% !important; box-sizing: border-box !important; }
#search .accordion-heading a {
  min-height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  box-sizing: border-box !important;
}

#basicsearch + *,
#basicsearch { margin-top: 0 !important; }

@media (max-width: 760px) {
  #search { margin: 0 0 16px !important; width: 100% !important; }
  #search .accordion-heading a { padding: 12px 14px !important; min-height: 50px !important; }
  #search .accordion-inner { padding: 12px !important; }
}

#basicsearch,
#basicsearch form,
#basicsearch input,
#searchform#searchform:not(#search .accordion-inner #searchform) {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
}
#search #searchform,
#search form#searchform {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible !important;
  visibility: visible !important;
}

.od-whatsapp {
  position: fixed !important;
  right: 22px !important;
  bottom: calc(22px + env(safe-area-inset-bottom)) !important;
  z-index: 99999 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 54px !important;
  padding: 0 19px !important;
  border-radius: 999px !important;
  background: #25D366 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.20), 0 2px 8px rgba(0,0,0,.12) !important;
  transform: translateZ(0);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}
.od-whatsapp:hover,
.od-whatsapp:focus-visible {
  color: #fff !important;
  transform: translateY(-2px) !important;
  filter: brightness(.97) !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.24), 0 3px 10px rgba(0,0,0,.14) !important;
  outline: none !important;
}
.od-whatsapp:active { transform: translateY(0) scale(.98) !important; }
.od-whatsapp-icon { width: 25px !important; height: 25px !important; display: inline-flex !important; flex: 0 0 25px !important; }
.od-whatsapp-icon svg { width: 100% !important; height: 100% !important; fill: currentColor !important; }
.od-whatsapp-label { line-height: 1 !important; }

@media (max-width: 760px) {
  .od-whatsapp {
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom)) !important;
    width: 56px !important;
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }
  .od-whatsapp-icon { width: 28px !important; height: 28px !important; }
  .od-whatsapp-label { display: none !important; }
}

#basicsearch,
#basicsearch form,
#basicsearch fieldset,
#basicsearch input,
.widget_search,
#header .search-form,
#header #searchform,
#header form[role="search"] {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
}
#search,
#search #searchform,
#search form#searchform,
#search input,
#search select,
#search button { visibility: visible; }

@media (max-width: 767px) {
  #basicsearch + *,
  #header + #basicsearch,
  .widget_search + * { margin-top: 0 !important; }
}
/* ================================================================
   OpenDoor Modern Child 2.1 — final visual polish
   ================================================================ */

#listings { align-items: stretch !important; }
#listings .listingblockgrid {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  height: auto !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
}
#listings .listingblockgrid > div:first-child,
#listings .listingblockgrid .vignette { width: 100% !important; }
#listings .listingblockgrid .vignette {
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  overflow: hidden !important;
  background: #eef1f5 !important;
}
#listings .listingblockgrid .vignette img,
#listings .listingblockgrid img.listing_thumbnail {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}
#listings .listingblockgrid .listingblocksection {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 190px !important;
  box-sizing: border-box !important;
}
#listings .listingblockgrid .listingblocksection .address {
  min-height: 42px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
#listings .listingblockgrid .twofeatures { min-height: 42px !important; margin-bottom: 12px !important; }
#listings .listingblockgrid .btn { margin-top: auto !important; width: 100% !important; }

.listingblockgrid a.reduced,
.listingblock a.reduced {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-height: 28px !important;
  padding: 3px 9px !important;
  margin-right: 7px !important;
  border-radius: 999px !important;
  background: #ecfdf3 !important;
  border: 1px solid #bbf7d0 !important;
  color: #15803d !important;
  vertical-align: middle !important;
  text-decoration: none !important;
}
.listingblockgrid a.reduced img,
.listingblock a.reduced img { width: 13px !important; height: 13px !important; object-fit: contain !important; filter: none !important; }
.listingblockgrid a.reduced:after,
.listingblock a.reduced:after {
  content: "Prezzo ridotto" !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: .02em !important;
}

.od-social-video-panel {
  margin-top: 18px !important;
  padding: 20px !important;
  background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%) !important;
  border: 1px solid var(--od-border) !important;
  border-radius: 18px !important;
  box-shadow: var(--od-shadow) !important;
}
.od-social-video-heading { margin: 0 0 14px !important; color: var(--od-text) !important; font-size: 16px !important; font-weight: 850 !important; }
.od-social-video-buttons { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 10px !important; }
.od-social-video {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 54px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  border: 1px solid var(--od-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: var(--od-text) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 12px rgba(15,23,42,.05) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.od-social-video:hover {
  transform: translateY(-2px) !important;
  border-color: #cbd5e1 !important;
  box-shadow: 0 10px 24px rgba(15,23,42,.10) !important;
  color: var(--od-text) !important;
}
.od-social-video-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 10px !important;
  background: #111827 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}
.od-social-video-youtube .od-social-video-icon { background: #ff0033 !important; }
.od-social-video-tiktok .od-social-video-icon { background: #111827 !important; }
.od-social-video-instagram .od-social-video-icon { background: linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045) !important; }
.od-social-video-arrow { margin-left: auto !important; color: #94a3b8 !important; font-size: 16px !important; }

#slider2, #details, #listingcontent, #related, #listingcontact, #maps, #comments { box-shadow: 0 12px 35px rgba(15,23,42,.07) !important; }
#details, #listingcontent { background: rgba(255,255,255,.96) !important; }

@media (max-width: 900px) {
  #listings .listingblockgrid { width: calc(50% - 9px) !important; }
  .od-social-video-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 760px) {
  #listings { gap: 12px !important; }
  #listings .listingblockgrid { width: 100% !important; min-height: 0 !important; }
  #listings .listingblockgrid .vignette { aspect-ratio: 16 / 10 !important; }
  #listings .listingblockgrid .listingblocksection { min-height: 0 !important; padding: 16px !important; }
  #listings .listingblockgrid .address { min-height: 0 !important; }
  .od-social-video-panel { padding: 15px !important; border-radius: 15px !important; }
  .od-social-video-buttons { grid-template-columns: 1fr !important; gap: 8px !important; }
  .od-social-video { min-height: 52px !important; }
}

#listings {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
#listings > h2,
#listings > .clear,
#listings > .pagination,
#listings > .alert,
#listings > #orderresults,
#listings > .searchresultshead { grid-column: 1 / -1 !important; }
#listings .listingblockgrid {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
}
#listings .listingblockgrid .vignette,
#listings .listingblockgrid > .four.columns,
#listings .listingblockgrid > .eight.columns { width: 100% !important; margin: 0 !important; float: none !important; box-sizing: border-box !important; }
#listings .listingblockgrid .listingblocksection { flex: 1 1 auto !important; }

@media (max-width: 980px) { #listings { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 700px) { #listings { grid-template-columns: 1fr !important; gap: 14px !important; } }

#listings .listingblockgrid .price,
#listings .listingblockgrid .price a:not(.reduced),
#listings .listingblockgrid .price span:not(.od-reduction-text) { color: var(--od-text) !important; text-decoration: none !important; }
#listings .listingblockgrid .price {
  min-height: 34px !important;
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  flex-wrap: wrap !important;
  margin: 0 0 8px !important;
  font-size: 20px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
}
#listings .listingblockgrid .price .reduced {
  order: 2 !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 4px 9px !important;
  min-height: 26px !important;
  box-sizing: border-box !important;
  background: #ecfdf3 !important;
  border: 1px solid #bbf7d0 !important;
  color: #15803d !important;
  box-shadow: none !important;
}
#listings .listingblockgrid .price .reduced img { display: none !important; }
#listings .listingblockgrid .price .reduced .od-reduction-text { display: inline !important; color: #15803d !important; font-size: 11px !important; font-weight: 800 !important; white-space: nowrap !important; }

#listings { grid-auto-rows: 1fr !important; align-items: stretch !important; }
#listings .listingblockgrid { height: 100% !important; min-height: 0 !important; }
#listings .listingblockgrid .vignette { aspect-ratio: 4 / 3 !important; height: auto !important; flex: 0 0 auto !important; }
#listings .listingblockgrid .listingblocksection {
  min-height: 0 !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}
#listings .listingblockgrid .listingblocksection .address {
  min-height: 3.1em !important;
  max-height: 3.1em !important;
  overflow: hidden !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}
#listings .listingblockgrid .twofeatures { min-height: 42px !important; max-height: 42px !important; overflow: hidden !important; }
#listings .listingblockgrid .btn { margin-top: auto !important; }

@media (max-width: 760px) {
  #listings .listingblockgrid .price { font-size: 19px !important; }
  #listings .listingblockgrid .listingblocksection .address { min-height: 0 !important; max-height: 3.2em !important; }
  #listings .listingblockgrid .twofeatures { max-height: none !important; }
}

#listings > span[style*="clear"],
#listings > span[style*="display: block"] { display: none !important; }
#listings {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  align-items: stretch !important;
  gap: 20px !important;
}
#listings .listingblockgrid {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  margin: 0 !important;
  float: none !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
}
#listings .listingblockgrid > div:first-child { flex: 0 0 auto !important; }
#listings .listingblockgrid .vignette { width: 100% !important; aspect-ratio: 4 / 3 !important; height: auto !important; }
#listings .listingblockgrid .listingblocksection {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  height: auto !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}
#listings .listingblockgrid .listingblocksection .address {
  height: 3.2em !important;
  min-height: 3.2em !important;
  max-height: 3.2em !important;
  overflow: hidden !important;
}
#listings .listingblockgrid .twofeatures { min-height: 42px !important; max-height: 42px !important; overflow: hidden !important; }
#listings .listingblockgrid .btn { margin-top: auto !important; }

#listings .listingblockgrid p.price,
#listings .listingblockgrid p.price *:not(.reduced),
h2#pricebig,
h2#pricebig * { color: var(--od-text) !important; }
#listings .listingblockgrid p.price { background: transparent !important; font-weight: 850 !important; }
h2#pricebig { color: var(--od-text) !important; font-weight: 900 !important; }

.od-detail-reduction {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-left: 10px !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  background: #ecfdf3 !important;
  border: 1px solid #bbf7d0 !important;
  color: #15803d !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}
.od-detail-reduction strong { color: #15803d !important; }

@media (max-width: 980px) { #listings { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 700px) {
  #listings { grid-template-columns: 1fr !important; gap: 14px !important; }
  #listings .listingblockgrid .vignette { aspect-ratio: 16 / 10 !important; }
  .od-detail-reduction { display: flex !important; width: max-content !important; margin: 8px 0 0 !important; }
}

#listings .listingblockgrid p.price,
#listings .listingblock p.price {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: 100% !important;
  min-height: 46px !important;
  margin: 0 0 10px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  font-size: 21px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  overflow: visible !important;
}
#listings .listingblockgrid p.price,
#listings .listingblockgrid p.price a,
#listings .listingblockgrid p.price span,
#listings .listingblock p.price,
#listings .listingblock p.price a,
#listings .listingblock p.price span { color: #fff !important; }
#listings .listingblockgrid p.price .reduced,
#listings .listingblock p.price .reduced {
  background: #198754 !important;
  border: 0 !important;
  color: #fff !important;
  margin-left: auto !important;
  padding: 4px 8px !important;
  min-height: 26px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
}
#listings .listingblockgrid p.price .reduced .od-reduction-text,
#listings .listingblock p.price .reduced .od-reduction-text { color: #fff !important; }

#listings .listingblockgrid,
#listings .listingblock { overflow: visible !important; }
#listings .listingblockgrid .listingblocksection { overflow: visible !important; padding-bottom: 12px !important; }
#listings .listingblockgrid .listingblocksection > a.btn,
#listings .listingblockgrid a.btn-lightgray {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  height: auto !important;
  box-sizing: border-box !important;
  margin: 10px 0 0 !important;
  padding: 12px 16px !important;
  border-radius: 14px !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow: visible !important;
}

#listings .listingblockgrid .compare,
#listings .listingblock .compare {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 10px 0 0 !important;
  padding: 0 4px !important;
  min-height: 28px !important;
  color: var(--od-text) !important;
  cursor: pointer !important;
}
#listings .listingblockgrid .compare input[type="checkbox"],
#listings .listingblock .compare input[type="checkbox"] {
  margin: 0 !important;
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px !important;
  cursor: pointer !important;
}
#listings .listingblockgrid .comparelink,
#listings .listingblock .comparelink {
  color: var(--od-text) !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
#listings .listingblockgrid .comparelink:hover,
#listings .listingblock .comparelink:hover { color: var(--od-accent) !important; }

@media (max-width: 700px) {
  #listings .listingblockgrid p.price,
  #listings .listingblock p.price { font-size: 19px !important; }
}

h2#pricebig,
#pricebig,
#pricebig a,
#pricebig span,
.bigheading #pricebig,
.bigheading h2#pricebig { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; opacity: 1 !important; visibility: visible !important; }

#slider.unoslider {
  position: relative !important;
  width: min(100%, 1180px) !important;
  height: clamp(300px, 42vw, 520px) !important;
  margin: 0 auto 24px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #0b1220 !important;
  box-shadow: 0 20px 55px rgba(15,23,42,.18) !important;
  isolation: isolate !important;
}
#slider.unoslider > li { width: 100% !important; height: 100% !important; border-radius: 24px !important; overflow: hidden !important; }
#slider.unoslider > li > img,
#slider.unoslider > li > a,
#slider.unoslider > li > a > img { display: block !important; width: 100% !important; height: 100% !important; }
#slider.unoslider > li > img,
#slider.unoslider > li > a > img { max-width: none !important; object-fit: cover !important; object-position: center !important; }
#slider.unoslider > li:after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient(180deg, rgba(2,6,23,0) 38%, rgba(2,6,23,.72) 100%) !important;
}
#slider.unoslider .html_content {
  position: absolute !important;
  z-index: 3 !important;
  left: 28px !important;
  right: 28px !important;
  bottom: 28px !important;
  width: auto !important;
  max-width: 620px !important;
  margin: 0 !important;
  padding: 22px 24px !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 18px !important;
  background: rgba(10,15,28,.68) !important;
  color: #fff !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(12px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(125%) !important;
}
#slider.unoslider .html_content h2,
#slider.unoslider .html_content .slidertext h2 {
  margin: 0 0 8px !important;
  color: #fff !important;
  font-size: clamp(22px, 3vw, 38px) !important;
  line-height: 1.08 !important;
  font-weight: 850 !important;
  letter-spacing: -.02em !important;
}
#slider.unoslider .html_content .twofeatures,
#slider.unoslider .html_content .price { margin: 0 0 10px !important; color: rgba(255,255,255,.9) !important; font-size: 14px !important; font-weight: 650 !important; }
#slider.unoslider .html_content .price,
#slider.unoslider .html_content .price * { color: #fff !important; }
#slider.unoslider .html_content .btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18) !important;
  font-weight: 800 !important;
}
#slider.unoslider .unoslider_navigation_container {
  position: absolute !important;
  z-index: 5 !important;
  inset: auto 18px 18px auto !important;
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
}
#slider.unoslider .unoslider_navigation_container a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 999px !important;
  background: rgba(15,23,36,.62) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.2) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  text-decoration: none !important;
}
#slider.unoslider .unoslider_navigation_container a:hover { background: rgba(15,23,36,.84) !important; transform: translateY(-1px) !important; }
#slider.unoslider .unoslider_timer {
  top: auto !important;
  bottom: 0 !important;
  z-index: 6 !important;
  height: 3px !important;
  background: rgba(255,255,255,.28) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}
#slider.unoslider .unoslider_timer span { background: var(--od-accent) !important; }

@media (max-width: 760px) {
  #slider.unoslider { width: 100% !important; height: clamp(250px, 68vw, 390px) !important; margin: 0 0 14px !important; border-radius: 18px !important; }
  #slider.unoslider > li { border-radius: 18px !important; }
  #slider.unoslider .html_content { left: 12px !important; right: 12px !important; bottom: 12px !important; max-width: none !important; padding: 14px 15px !important; border-radius: 14px !important; }
  #slider.unoslider .html_content h2,
  #slider.unoslider .html_content .slidertext h2 { font-size: 20px !important; line-height: 1.12 !important; }
  #slider.unoslider .html_content .twofeatures,
  #slider.unoslider .html_content .price { font-size: 12px !important; margin-bottom: 7px !important; }
  #slider.unoslider .html_content .btn { min-height: 38px !important; padding: 0 14px !important; }
  #slider.unoslider .unoslider_navigation_container { right: 10px !important; bottom: 10px !important; }
  #slider.unoslider .unoslider_navigation_container a { width: 36px !important; height: 36px !important; }

  #content { display: flex !important; flex-direction: column !important; gap: 14px !important; margin-top: 0 !important; }
  #content > .four.columns { order: 1 !important; width: 100% !important; margin: 0 !important; }
  #content > .twelve.columns { order: 2 !important; width: 100% !important; margin: 0 !important; }
  #content > .four.columns #search { margin: 0 0 2px !important; }
  #content > .four.columns #search,
  #content > .four.columns #search form { width: 100% !important; }
}

.od-detail-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:24px;align-items:start;margin-top:8px}
.od-detail-media{min-width:0;position:sticky;top:18px}
.od-detail-info{min-width:0}
.od-detail-media #slider2{width:100%!important;margin:0!important;border-radius:18px!important;background:#0b1018!important;box-shadow:0 16px 45px rgba(0,0,0,.18);overflow:hidden}
.od-detail-media #slider2 .flex-viewport{border-radius:18px!important}
.od-detail-media #slider2 .slides>li{height:auto!important;display:flex!important;align-items:center;justify-content:center;background:#0b1018}
.od-detail-media #slider2 .slides img{width:100%!important;height:auto!important;max-height:70vh!important;aspect-ratio:16/10;object-fit:contain!important;display:block;background:#0b1018}
.od-detail-media #slider2 .slides>li>a{display:block;width:100%;cursor:zoom-in}
.od-detail-media #carousel{display:block!important;width:100%!important;margin:12px 0 0!important;padding:0!important}
.od-detail-media #carousel .flex-viewport{border-radius:12px!important}
.od-detail-media #carousel .slides>li{width:86px!important;margin-right:8px!important;cursor:pointer}
.od-detail-media #carousel .slides img{width:86px!important;height:60px!important;object-fit:cover!important;border-radius:9px!important;opacity:.72;transition:.2s}
.od-detail-media #carousel .flex-active-slide img{opacity:1;box-shadow:0 0 0 2px currentColor}
.od-detail-info #details{margin-top:0!important}
.od-detail-info #listingcontent{margin-top:18px}
.od-gallery-hint{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:10px;font-size:12px;opacity:.7}
.od-gallery-hint:before{content:'↗';font-size:16px}
.od-image-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(4,7,12,.94);display:none;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(10px)}
.od-image-lightbox.is-open{display:flex}
.od-image-lightbox img{max-width:96vw;max-height:92vh;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 25px 80px rgba(0,0,0,.55)}
.od-image-lightbox button{position:absolute;top:16px;right:18px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:28px;line-height:44px;cursor:pointer}
.od-compare-float{position:fixed;right:20px;bottom:20px;z-index:99998;display:none;align-items:center;gap:10px;padding:12px 16px;border-radius:999px;background:#111827;color:#fff;box-shadow:0 14px 35px rgba(0,0,0,.28);font-weight:800;text-decoration:none}
.od-compare-float.is-visible{display:flex}
.od-compare-float .count{min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#fff;color:#111827;display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.od-compare-float:hover{color:#fff;transform:translateY(-1px)}
@media(max-width:900px){
 .od-detail-layout{grid-template-columns:1fr;gap:18px}
 .od-detail-media{position:relative;top:auto}
 .od-detail-media #slider2 .slides img{max-height:62vh!important;aspect-ratio:4/3}
 .od-detail-media #carousel{overflow:hidden}
 .od-compare-float{right:12px;bottom:12px;padding:11px 14px}
}
@media(max-width:600px){
 .od-detail-media #slider2{border-radius:14px!important}
 .od-detail-media #slider2 .flex-viewport{border-radius:14px!important}
 .od-detail-media #slider2 .slides img{max-height:58vh!important;aspect-ratio:4/3}
 .od-detail-media #carousel .slides>li{width:72px!important;margin-right:6px!important}
 .od-detail-media #carousel .slides img{width:72px!important;height:50px!important}
 .od-image-lightbox{padding:10px}
 .od-image-lightbox img{max-width:100vw;max-height:86vh;border-radius:7px}
}

#od-compare-float,
.od-compare-float,
#compare-float,
.od-floating-compare { bottom: 88px !important; z-index: 999999 !important; }

.od-legacy-carousel{display:none!important}
.od-modern-thumbs{display:flex;gap:9px;overflow-x:auto;padding:12px 2px 4px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.od-modern-thumb{flex:0 0 86px;width:86px;height:62px;padding:0;border:2px solid transparent;border-radius:10px;background:#111827;overflow:hidden;cursor:pointer;opacity:.65;transition:transform .18s,opacity .18s,border-color .18s,box-shadow .18s}
.od-modern-thumb img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important}
.od-modern-thumb:hover{opacity:.9;transform:translateY(-1px)}
.od-modern-thumb.is-active{opacity:1;border-color:currentColor;box-shadow:0 5px 18px rgba(0,0,0,.16)}
@media(max-width:600px){
 .od-modern-thumbs{gap:7px;padding-top:9px}
 .od-modern-thumb{flex-basis:70px;width:70px;height:52px;border-radius:8px}
}

.od-native-gallery{width:100%;position:relative}
.od-native-stage{position:relative;width:100%;height:clamp(300px,42vw,650px);min-height:280px;background:#0b1018;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 16px 45px rgba(0,0,0,.18)}
.od-native-main{width:100%;height:100%;object-fit:contain;display:block;cursor:zoom-in;background:#0b1018}
.od-native-prev,.od-native-next{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(15,23,36,.72);color:#fff;font-size:34px;line-height:38px;z-index:5;cursor:pointer;backdrop-filter:blur(8px)}
.od-native-prev{left:14px}.od-native-next{right:14px}.od-native-prev:hover,.od-native-next:hover{background:rgba(15,23,36,.9)}
.od-native-count{position:absolute;right:14px;bottom:14px;padding:7px 10px;border-radius:999px;background:rgba(15,23,36,.72);color:#fff;font-size:12px;font-weight:800;z-index:5;backdrop-filter:blur(8px)}
.od-native-thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 2px 3px;scrollbar-width:thin}
.od-native-thumb{flex:0 0 88px;width:88px;height:60px;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#e9edf3;cursor:pointer;opacity:.65}
.od-native-thumb img{width:100%;height:100%;object-fit:cover;display:block}.od-native-thumb.is-active{opacity:1;border-color:var(--od-accent)}
#slider2,#carousel{display:none!important}
@media(max-width:900px){.od-native-stage{height:min(68vw,500px);min-height:230px;border-radius:15px}.od-native-prev,.od-native-next{width:40px;height:40px;font-size:30px;line-height:34px}.od-native-prev{left:9px}.od-native-next{right:9px}}
@media(max-width:600px){.od-native-stage{height:72vw;min-height:205px;border-radius:13px}.od-native-thumb{flex-basis:72px;width:72px;height:50px}.od-native-thumbs{gap:6px}.od-native-count{right:10px;bottom:10px}}

.od-detail-divider{display:flex!important;align-items:center!important;gap:14px!important;margin:22px 0 14px!important;color:#263043!important;font-size:13px!important;font-weight:800!important;letter-spacing:.02em!important}
.od-detail-divider:before,.od-detail-divider:after{content:""!important;height:1px!important;background:linear-gradient(90deg,transparent,#d8dde6)!important;flex:1!important}
.od-detail-divider:before{background:linear-gradient(90deg,transparent,#d8dde6)!important}
.od-detail-divider:after{background:linear-gradient(90deg,#d8dde6,transparent)!important}

#social,#social .printbutton,.printbutton{display:none!important}

#od-detail-content-divider{display:flex!important;align-items:center!important;gap:16px!important;width:100%!important;margin:28px 0 18px!important;padding:0!important;clear:both!important}
#od-detail-content-divider .od-divider-line{height:1px!important;flex:1 1 auto!important;background:linear-gradient(90deg,transparent,#cfd5df,transparent)!important}
#od-detail-content-divider .od-divider-label{flex:0 0 auto!important;padding:9px 16px!important;border:1px solid #e0e4ea!important;border-radius:999px!important;background:#fff!important;color:#273142!important;font-size:11px!important;font-weight:850!important;letter-spacing:.09em!important}
#social,#socialshare,.socialshare,.printbutton,.tweetbutton{display:none!important;visibility:hidden!important;height:0!important;width:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
@media(max-width:600px){
 #od-detail-content-divider{gap:8px!important;margin:22px 0 14px!important}
 #od-detail-content-divider .od-divider-label{font-size:9px!important;padding:8px 11px!important;letter-spacing:.06em!important}
}

@media (min-width: 901px){
  .od-detail-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:30px!important;margin-top:8px!important}
  .od-detail-media{position:relative!important;top:auto!important;width:100%!important}
  .od-detail-info{width:100%!important;display:block!important}
  .od-native-stage{width:100%!important;height:clamp(480px,48vw,760px)!important;min-height:480px!important;border-radius:20px!important}
  .od-native-main{object-fit:contain!important}
  .od-native-thumbs{padding-top:12px!important}
}
.od-detail-info > #videos,
.od-detail-info > #details,
.od-detail-info > #listingcontent{width:100%!important;max-width:none!important}
.od-detail-info > #videos{margin-top:0!important;margin-bottom:24px!important}
.od-detail-info > #details{margin-top:0!important;margin-bottom:24px!important}
.od-detail-info > #listingcontent{margin-top:0!important}

.od-parent-heading-v36{display:block!important;margin:0 0 12px!important;padding:12px 16px!important;border-radius:12px!important;background:#f1f4f8!important;color:#172033!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.od-child-heading{display:block!important;margin:0 0 10px!important;color:#5b6575!important;font-size:11px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.07em!important}
.od-detail-info #details .specslist{margin-top:0!important;margin-bottom:18px!important}
.od-details-divider-v36{display:flex!important;align-items:center!important;gap:14px!important;margin:28px 0 16px!important;color:#172033!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.od-details-divider-v36:before,.od-details-divider-v36:after{content:""!important;height:1px!important;background:#d9dee7!important;flex:1 1 auto!important}
@media(max-width:900px){
  .od-detail-layout{grid-template-columns:1fr!important;gap:20px!important}
  .od-detail-media{position:relative!important;top:auto!important}
  .od-native-stage{height:min(72vw,560px)!important;min-height:240px!important}
}

/* =========================================================
   OpenDoorModern v3.7 — Premium Global Header / Logo
   ========================================================= */
#header {
  position: relative !important;
  min-height: 96px !important;
  padding: 14px 24px !important;
  background: radial-gradient(circle at 8% 50%, rgba(255,255,255,.98) 0, rgba(255,255,255,.72) 30%, transparent 62%), linear-gradient(135deg, #fff 0%, #f7f8fa 55%, #eef1f4 100%) !important;
  border: 1px solid rgba(17,24,39,.07) !important;
  border-radius: 22px 22px 0 0 !important;
  box-shadow: 0 10px 34px rgba(16,24,40,.07), inset 0 1px 0 rgba(255,255,255,.95) !important;
  overflow: hidden;
}
#header::before {
  content: "";
  position: absolute;
  left: -12%;
  top: -90%;
  width: 48%;
  height: 280%;
  transform: rotate(16deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent);
  pointer-events: none;
  opacity: .55;
}
#header::after {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 0;
  height: 2px;
  border-radius: 99px;
  background: linear-gradient(90deg, transparent, rgba(17,24,39,.16) 18%, rgba(17,24,39,.06) 82%, transparent);
  pointer-events: none;
}
#logo {
  position: relative !important;
  z-index: 3 !important;
  width: 238px !important;
  height: 70px !important;
  flex: 0 0 238px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden;
  border-radius: 16px;
  background: rgba(255,255,255,.70);
  border: 1px solid rgba(17,24,39,.07);
  box-shadow: 0 8px 24px rgba(16,24,40,.06), inset 0 1px 0 rgba(255,255,255,.95);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
#logo:hover { transform: translateY(-1px); border-color: rgba(17,24,39,.13); box-shadow: 0 12px 30px rgba(16,24,40,.10), inset 0 1px 0 rgba(255,255,255,.98); }
#logo::after {
  content: "";
  position: absolute;
  left: 9px;
  top: 13px;
  bottom: 13px;
  width: 3px;
  border-radius: 99px;
  background: var(--od-dark, #111827);
  opacity: .9;
  z-index: 4;
  pointer-events: none;
}
#logo a {
  position: relative;
  z-index: 2;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
  border-radius: 14px;
}
#headertextandsocialicons {
  position: relative;
  z-index: 3;
  margin-left: auto !important;
  padding: 7px 4px 7px 18px;
  min-width: 0;
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  border-left: 1px solid rgba(17,24,39,.08);
}
#headertext { color: #667085 !important; font-size: 13px !important; font-weight: 500; letter-spacing: .01em; }
#socialheader { display: flex !important; align-items: center; gap: 7px; }
#socialheader a {
  width: 34px;
  height: 34px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(17,24,39,.07);
  opacity: .82 !important;
  transition: transform .2s ease, opacity .2s ease, background .2s ease;
}
#socialheader a:hover { transform: translateY(-2px); opacity: 1 !important; background: #fff; }
#menubar {
  min-height: 54px !important;
  border-radius: 0 0 20px 20px !important;
  box-shadow: 0 16px 36px rgba(16,24,40,.13) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
}
#menubar ul.sf-menu > li > a { border-radius: 10px; transition: background .18s ease, transform .18s ease, color .18s ease; }
#menubar ul.sf-menu > li:hover > a,
#menubar ul.sf-menu > li.sfHover > a { transform: translateY(-1px); }
#logo2 { opacity: .70; transform: scale(.88); transform-origin: right center; }
@media (max-width: 900px) {
  #header { min-height: 82px !important; padding: 11px 16px !important; border-radius: 18px 18px 0 0 !important; }
  #header::after { left: 16px; right: 16px; }
  #logo { width: 205px !important; height: 60px !important; flex-basis: 205px !important; border-radius: 14px; }
  #logo::after { left: 8px; top: 11px; bottom: 11px; }
  #headertextandsocialicons { gap: 10px !important; padding-left: 12px; }
  #logo2 { display: none !important; }
}
@media (max-width: 600px) {
  #header { min-height: 74px !important; padding: 9px 11px !important; border-radius: 15px 15px 0 0 !important; }
  #header::after { left: 11px; right: 11px; }
  #logo { width: 176px !important; height: 54px !important; flex-basis: 176px !important; border-radius: 12px; }
  #logo::after { left: 7px; top: 10px; bottom: 10px; width: 2px; }
  #headertext, #socialheader { display: none !important; }
  #headertextandsocialicons { padding-left: 0 !important; border-left: 0 !important; }
  #menubar { min-height: 50px !important; border-radius: 0 0 15px 15px !important; }
}
@media (max-width: 390px) {
  #logo { width: 158px !important; height: 50px !important; flex-basis: 158px !important; }
}

/* v3.8 — SINGLE GLOBAL NAVIGATION */
#secondaryheadermenucontainer,
#secondaryheadermenucontainer #secondaryheadermenu,
.od-duplicate-navigation {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}
#menubar.od-duplicate-navigation { display: none !important; }
body ul.sf-menu:not(#menubar ul.sf-menu) { display: none !important; }
#menubar { display: flex !important; align-items: stretch !important; flex-wrap: nowrap !important; }

/* v3.12 — SMALL LOGIN IN THE UPPER HEADER */
#header .od-top-login {
  position: absolute !important;
  top: 8px !important;
  right: 12px !important;
  z-index: 100 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
#header .od-top-login-item,
#header .od-top-login #login,
#header .od-top-login #loginbox,
#header .od-top-login #login-box,
#header .od-top-login .loginbox,
#header .od-top-login .login-box,
#header .od-top-login .user-login,
#header .od-top-login .userlogin { display: inline-flex !important; align-items: center !important; width: auto !important; height: auto !important; margin: 0 !important; padding: 0 !important; }
#header .od-top-login a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 24px !important;
  padding: 2px 8px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
#header .od-top-login a:hover { background: rgba(255,255,255,.12) !important; }
#secondaryheadermenucontainer #secondaryheadermenu,
#secondaryheadermenu.od-duplicate-navigation { display: none !important; visibility: hidden !important; }
@media (max-width: 600px) {
  #header .od-top-login { top: 5px !important; right: 8px !important; }
  #header .od-top-login a { min-height: 22px !important; padding: 2px 7px !important; font-size: 11px !important; }
}

/* v3.13 — Login + social header */
#header .od-top-login { right: 16px !important; top: 7px !important; flex-direction: column !important; align-items: flex-end !important; gap: 6px !important; }
#header .od-top-login > .od-top-login-item,
#header .od-top-login > a { margin-bottom: 2px !important; }
#header .od-header-socials {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 6px !important;
  margin-top: 4px !important;
  padding-top: 5px !important;
  border-top: 1px solid rgba(255,255,255,.14) !important;
}
#header .od-header-social {
  width: 27px !important;
  height: 27px !important;
  min-width: 27px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 50% !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 3px 10px rgba(0,0,0,.12) !important;
  transition: transform .18s ease, background .18s ease, border-color .18s ease !important;
}
#header .od-header-social:hover { transform: translateY(-2px) !important; background: rgba(255,255,255,.20) !important; border-color: rgba(255,255,255,.30) !important; }
#header .od-header-social-facebook { font-family: Arial, sans-serif !important; }
#header .od-header-social-instagram { font-size: 18px !important; }
#header .od-header-social-tiktok { font-size: 17px !important; }
#header .od-header-social-youtube { font-size: 12px !important; }
@media (max-width: 600px) {
  #header .od-top-login { right: 8px !important; top: 5px !important; gap: 4px !important; }
  #header .od-header-socials { gap: 4px !important; margin-top: 2px !important; padding-top: 4px !important; }
  #header .od-header-social { width: 24px !important; height: 24px !important; min-width: 24px !important; font-size: 12px !important; }
}

/* v3.14 — hide legacy header social icons */
#header #socialheader,
#header #socialheadericons,
#header .socialheader,
#header .header-social,
#header .header-social-icons,
#header .social-header,
#header .social-header-icons,
#header .od-legacy-header-socials { display: none !important; visibility: hidden !important; }
#header .od-top-login { gap: 10px !important; }
#header .od-header-socials { margin-top: 7px !important; padding-top: 7px !important; }

/* v3.15 — TOP UTILITY ACTIONS */
#header .od-top-login {
  top: 7px !important;
  right: 16px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0 !important;
  white-space: nowrap !important;
}
#header .od-top-login > .od-top-login-item,
#header .od-top-login > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 24px !important;
  margin: 0 !important;
  padding: 2px 9px !important;
  border-radius: 6px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
#header .od-top-login > .od-top-login-item + .od-top-login-item,
#header .od-top-login > a + a,
#header .od-top-login > .od-top-login-item + a,
#header .od-top-login > a + .od-top-login-item { border-left: 1px solid rgba(255,255,255,.20) !important; border-radius: 0 !important; }
#header .od-top-login a:hover { background: rgba(255,255,255,.12) !important; }
#header .od-header-socials { margin-top: 9px !important; padding-top: 7px !important; }
@media (max-width: 600px) {
  #header .od-top-login { top: 5px !important; right: 8px !important; max-width: calc(100% - 170px) !important; overflow-x: auto !important; scrollbar-width: none !important; }
  #header .od-top-login::-webkit-scrollbar { display: none !important; }
  #header .od-top-login > .od-top-login-item,
  #header .od-top-login > a { min-height: 21px !important; padding: 2px 6px !important; font-size: 10px !important; }
  #header .od-header-socials { margin-top: 7px !important; padding-top: 5px !important; }
}

/* v3.17 — Homepage inventory + larger proportional logo */
#logo { width: 250px !important; height: 84px !important; flex-basis: 250px !important; }
#logo a { background-size: contain !important; }
#header { min-height: 120px !important; }

#od-home-inventory { width: 100%; box-sizing: border-box; margin: 24px 0 30px; }
#od-home-inventory .od-home-section { background: var(--od-surface); border: 1px solid var(--od-border); border-radius: var(--od-radius); box-shadow: var(--od-shadow); padding: 24px; margin: 0 0 22px; }
#od-home-inventory .od-home-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
#od-home-inventory .od-home-eyebrow { display: block; color: var(--od-accent); font-size: 10px; line-height: 1; font-weight: 900; letter-spacing: .14em; margin-bottom: 6px; }
#od-home-inventory h2 { margin: 0 !important; color: var(--od-text) !important; font-size: 25px !important; line-height: 1.15 !important; font-weight: 850 !important; }
#od-home-inventory .od-home-section-count { flex: 0 0 auto; padding: 6px 10px; border-radius: 999px; background: var(--od-surface-2); border: 1px solid var(--od-border); color: var(--od-muted); font-size: 11px; font-weight: 800; }
#od-home-inventory .od-home-latest-list,
#od-home-inventory .od-home-all-list { display: flex; flex-direction: column; gap: 12px; }
#od-home-inventory .od-home-car { display: grid; grid-template-columns: 220px minmax(0,1fr); min-height: 148px; overflow: hidden; background: #fff; border: 1px solid var(--od-border); border-radius: 15px; box-shadow: 0 5px 18px rgba(16,24,40,.045); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
#od-home-inventory .od-home-car:hover { transform: translateY(-2px); border-color: #d5dce7; box-shadow: var(--od-shadow-hover); }
#od-home-inventory .od-home-car-image { display: block; min-height: 148px; background: var(--od-surface-2); overflow: hidden; }
#od-home-inventory .od-home-car-image img { display: block; width: 100%; height: 100%; min-height: 148px; object-fit: cover; transition: transform .25s ease; }
#od-home-inventory .od-home-car:hover .od-home-car-image img { transform: scale(1.025); }
#od-home-inventory .od-home-car-body { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 20px; }
#od-home-inventory .od-home-car-main { min-width: 0; }
#od-home-inventory .od-home-car h3 { margin: 0 0 8px !important; font-size: 18px !important; line-height: 1.25 !important; font-weight: 850 !important; }
#od-home-inventory .od-home-car h3 a { color: var(--od-text) !important; text-decoration: none !important; }
#od-home-inventory .od-home-car h3 a:hover { color: var(--od-accent) !important; }
#od-home-inventory .od-home-car-facts { display: flex; flex-wrap: wrap; gap: 7px; color: var(--od-muted); font-size: 11px; }
#od-home-inventory .od-home-car-facts span { padding: 5px 8px; border-radius: 7px; background: var(--od-surface-2); border: 1px solid var(--od-border); }
#od-home-inventory .od-home-car-facts strong { color: var(--od-text); }
#od-home-inventory .od-home-car-side { flex: 0 0 auto; min-width: 150px; text-align: right; }
#od-home-inventory .od-home-car-price { color: var(--od-text); font-size: 20px; line-height: 1.15; font-weight: 900; margin-bottom: 9px; }
#od-home-inventory .od-home-car-button { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border-radius: 9px; background: var(--od-dark); color: #fff !important; font-size: 11px; font-weight: 800; text-decoration: none !important; }
#od-home-inventory .od-home-car-button:hover { background: var(--od-accent); transform: translateY(-1px); }
@media (max-width: 760px) {
  #header { min-height: 98px !important; }
  #logo { width: 200px !important; height: 67px !important; flex-basis: 200px !important; }
  #od-home-inventory { margin-top: 16px; }
  #od-home-inventory .od-home-section { padding: 16px; border-radius: 15px; }
  #od-home-inventory .od-home-section-head { align-items: flex-start; }
  #od-home-inventory h2 { font-size: 21px !important; }
  #od-home-inventory .od-home-section-count { font-size: 10px; }
  #od-home-inventory .od-home-car { grid-template-columns: 125px minmax(0,1fr); min-height: 126px; border-radius: 12px; }
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img { min-height: 126px; }
  #od-home-inventory .od-home-car-body { display: block; padding: 12px; }
  #od-home-inventory .od-home-car h3 { font-size: 14px !important; margin-bottom: 6px !important; }
  #od-home-inventory .od-home-car-facts { gap: 4px; font-size: 9px; }
  #od-home-inventory .od-home-car-facts span { padding: 4px 5px; }
  #od-home-inventory .od-home-car-side { min-width: 0; margin-top: 9px; text-align: left; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
  #od-home-inventory .od-home-car-price { font-size: 16px; margin: 0; }
  #od-home-inventory .od-home-car-button { padding: 7px 9px; font-size: 9px; }
}

/* v3.18 — Homepage inventory scorrevole + annunci prima del footer */
#od-home-latest .od-home-latest-list { max-height: 610px !important; overflow-y: auto !important; overflow-x: hidden !important; padding: 4px 10px 4px 2px !important; scrollbar-width: thin; }
#od-home-latest .od-home-latest-list::-webkit-scrollbar { width: 7px; }
#od-home-latest .od-home-latest-list::-webkit-scrollbar-track { background: var(--od-surface-2); border-radius: 999px; }
#od-home-latest .od-home-latest-list::-webkit-scrollbar-thumb { background: #b8c0cc; border-radius: 999px; }
#od-home-latest .od-home-latest-list .od-home-car { flex: 0 0 auto; }
#od-home-all { margin-bottom: 36px !important; }
#od-home-all .od-home-all-list { max-height: none !important; overflow: visible !important; }
@media (max-width: 760px) { #od-home-latest .od-home-latest-list { max-height: 530px !important; padding-right: 7px !important; } }

/* v3.19 */
#od-home-latest { display: none !important; }
#od-home-inventory { width: 100% !important; max-width: 1180px !important; margin: 24px auto 36px !important; box-sizing: border-box !important; }
#od-home-inventory .od-home-all-list { max-height: none !important; overflow: visible !important; display: flex !important; flex-direction: column !important; gap: 12px !important; }
#od-home-inventory .od-home-car { flex: 0 0 auto !important; }
@media (max-width: 760px) { #od-home-inventory { margin-top: 16px !important; } }

/* v3.21 */
#od-home-latest { display:block !important; width:100% !important; max-width:1180px !important; margin:24px auto 18px !important; }
#od-home-latest .od-home-latest-list { max-height:610px !important; overflow-y:auto !important; overflow-x:hidden !important; display:flex !important; flex-direction:column !important; gap:12px !important; padding:4px 10px 4px 2px !important; }
#od-home-latest .od-home-car { flex:0 0 auto !important; }
#od-home-inventory { width:100% !important; max-width:1180px !important; margin:24px auto 36px !important; }
#od-home-inventory .od-home-all-list { display:flex !important; flex-direction:column !important; gap:12px !important; overflow:visible !important; max-height:none !important; }
.od-home-car { position:relative !important; }
.od-home-compare-check { position:absolute !important; top:10px !important; right:10px !important; z-index:5 !important; display:flex !important; align-items:center !important; gap:6px !important; padding:6px 9px !important; border-radius:999px !important; background:rgba(255,255,255,.94) !important; box-shadow:0 4px 14px rgba(0,0,0,.10) !important; font-size:11px !important; font-weight:700 !important; cursor:pointer !important; }
.od-home-compare-check input { margin:0 !important; accent-color:var(--od-accent) !important; }
.od-home-compare-bar { position:fixed !important; left:50% !important; bottom:18px !important; transform:translateX(-50%) !important; z-index:99999 !important; display:flex !important; align-items:center !important; gap:14px !important; padding:10px 12px 10px 16px !important; border-radius:999px !important; background:var(--od-text,#111827) !important; color:#fff !important; box-shadow:0 12px 35px rgba(0,0,0,.25) !important; font-size:12px !important; font-weight:700 !important; }
.od-home-compare-bar a { display:inline-flex !important; align-items:center !important; padding:8px 13px !important; border-radius:999px !important; background:var(--od-accent,#2563eb) !important; color:#fff !important; text-decoration:none !important; }
.od-home-compare-bar button { border:0 !important; background:transparent !important; color:#fff !important; font-size:20px !important; line-height:1 !important; cursor:pointer !important; }
@media(max-width:760px){
 #od-home-latest .od-home-latest-list{max-height:540px!important;padding-right:7px!important;}
 .od-home-compare-check{top:7px!important;right:7px!important;font-size:9px!important;padding:5px 7px!important;}
 .od-home-compare-bar{bottom:10px!important;max-width:calc(100% - 20px)!important;gap:8px!important;padding:8px 9px 8px 12px!important;}
 .od-home-compare-bar a{padding:7px 10px!important;font-size:11px!important;}
}

/* v3.24 */
#od-home-latest > .od-home-section-head { display:none !important; }
#od-home-latest #od-home-inventory { margin-top:0 !important; }
#belowfooter { position:relative !important; z-index:2 !important; }

/* v3.22 */
#od-home-latest {
  display:block !important;
  width:100% !important;
  max-width:1180px !important;
  margin:24px auto 36px !important;
  box-sizing:border-box !important;
  background:var(--od-surface,#fff) !important;
  border:1px solid var(--od-border,#e5e7eb) !important;
  border-radius:var(--od-radius,18px) !important;
  box-shadow:var(--od-shadow,0 8px 30px rgba(0,0,0,.06)) !important;
  padding:24px !important;
}
#od-home-latest .od-home-latest-list { max-height:610px !important; overflow-y:auto !important; overflow-x:hidden !important; display:flex !important; flex-direction:column !important; gap:12px !important; padding:4px 8px 4px 2px !important; }
#od-home-latest .od-home-car { flex:0 0 auto !important; }
#od-home-inventory { width:100% !important; max-width:none !important; margin:26px 0 0 !important; padding:20px 0 0 !important; border-top:1px solid var(--od-border,#e5e7eb) !important; }
#od-home-inventory .od-home-section-head { margin-bottom:16px !important; }
#od-home-inventory .od-home-all-list { display:flex !important; flex-direction:column !important; gap:12px !important; overflow:visible !important; max-height:none !important; }
#od-home-inventory .od-home-car { display:grid !important; grid-template-columns:220px minmax(0,1fr) !important; min-height:148px !important; overflow:hidden !important; background:#fff !important; border:1px solid var(--od-border,#e5e7eb) !important; border-radius:15px !important; }
#od-home-inventory .od-home-car-image,
#od-home-inventory .od-home-car-image img { min-height:148px !important; }
.od-home-compare-check { position:absolute !important; top:10px !important; right:10px !important; z-index:5 !important; }
@media(max-width:760px){
  #od-home-latest { padding:16px !important; margin:16px auto 28px !important; }
  #od-home-latest .od-home-latest-list { max-height:540px !important; }
  #od-home-inventory { margin-top:20px !important; padding-top:16px !important; }
  #od-home-inventory .od-home-car { grid-template-columns:125px minmax(0,1fr) !important; min-height:126px !important; }
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img { min-height:126px !important; }
}

/* v3.25 */
#od-home-inventory { display:block !important; width:100% !important; max-width:none !important; margin:26px 0 0 !important; padding:20px 0 0 !important; border-top:1px solid var(--od-border,#e5e7eb) !important; }
#od-home-inventory .od-home-all-list { display:flex !important; flex-direction:column !important; gap:12px !important; overflow:visible !important; max-height:none !important; }
#od-home-inventory .od-home-car { display:grid !important; grid-template-columns:220px minmax(0,1fr) !important; align-items:stretch !important; width:100% !important; min-height:148px !important; position:relative !important; overflow:hidden !important; box-sizing:border-box !important; }
#od-home-inventory .od-home-car-image { display:block !important; width:220px !important; min-height:148px !important; height:100% !important; overflow:hidden !important; }
#od-home-inventory .od-home-car-image img { display:block !important; width:100% !important; height:148px !important; object-fit:cover !important; }
#od-home-inventory .od-home-car-body { min-width:0 !important; display:flex !important; align-items:center !important; justify-content:space-between !important; gap:20px !important; padding:18px 150px 18px 20px !important; box-sizing:border-box !important; }
#od-home-inventory .od-home-car-main { min-width:0 !important; }
#od-home-inventory .od-home-car h3 { margin:0 0 10px !important; }
#od-home-inventory .od-home-car-side { flex:0 0 auto !important; text-align:right !important; }
#od-home-inventory .od-home-compare-check { position:absolute !important; top:10px !important; right:10px !important; z-index:10 !important; }
@media(max-width:760px){
  #od-home-inventory { margin-top:20px !important; padding-top:16px !important; }
  #od-home-inventory .od-home-car { grid-template-columns:125px minmax(0,1fr) !important; min-height:126px !important; }
  #od-home-inventory .od-home-car-image { width:125px !important; min-height:126px !important; }
  #od-home-inventory .od-home-car-image img { height:126px !important; }
  #od-home-inventory .od-home-car-body { padding:12px 90px 12px 12px !important; gap:8px !important; }
  #od-home-inventory .od-home-car-side { text-align:left !important; }
}

/* v3.27 */
#od-home-latest { display:none !important; }
#od-home-inventory {
  display:block !important;
  width:100vw !important;
  max-width:none !important;
  margin:24px 0 36px !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding:0 36px !important;
  border:0 !important;
  box-sizing:border-box !important;
}
#od-home-inventory .od-home-all-list { display:flex !important; flex-direction:column !important; gap:12px !important; overflow:visible !important; max-height:none !important; }
#od-home-inventory .od-home-car { display:grid !important; grid-template-columns:220px minmax(0,1fr) !important; align-items:stretch !important; width:100% !important; min-height:148px !important; position:relative !important; overflow:hidden !important; box-sizing:border-box !important; }
#od-home-inventory .od-home-car-image,
#od-home-inventory .od-home-car-image img { width:220px !important; min-height:148px !important; height:148px !important; }
#od-home-inventory .od-home-car-image img { object-fit:cover !important; display:block !important; }
#od-home-inventory .od-home-car-body { min-width:0 !important; display:flex !important; align-items:center !important; justify-content:space-between !important; gap:20px !important; padding:18px 150px 18px 20px !important; }
#od-home-inventory .od-home-car-main { min-width:0 !important; }
#od-home-inventory .od-home-car-main h3 { margin:0 0 10px !important; }
#od-home-inventory .od-home-car-side { flex:0 0 auto !important; }
#od-home-inventory .od-home-compare-check { position:absolute !important; top:10px !important; right:10px !important; z-index:5 !important; }
@media(max-width:760px){
  #od-home-inventory { margin:18px auto 28px !important; }
  #od-home-inventory .od-home-car { grid-template-columns:125px minmax(0,1fr) !important; min-height:126px !important; }
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img { width:125px !important; min-height:126px !important; height:126px !important; }
  #od-home-inventory .od-home-car-body { padding:14px 110px 14px 14px !important; gap:10px !important; }
}

/* v3.28 */
#od-home-inventory { width:100vw !important; max-width:none !important; margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important; padding-left:36px !important; padding-right:36px !important; box-sizing:border-box !important; }
#od-home-inventory .od-home-all-list { width:100% !important; }
#od-home-inventory .od-home-car { width:100% !important; box-sizing:border-box !important; }
@media(max-width:760px){
  #od-home-inventory { width:100vw !important; margin-left:calc(50% - 50vw) !important; margin-right:calc(50% - 50vw) !important; padding-left:14px !important; padding-right:14px !important; }
}

/* v3.29 */
#od-home-inventory { width:100% !important; max-width:1180px !important; margin:24px auto 40px !important; padding:0 !important; box-sizing:border-box !important; }
#od-home-inventory .od-home-all-list { width:100% !important; margin:0 !important; padding:0 !important; box-sizing:border-box !important; }
#od-home-inventory .od-home-car { width:100% !important; margin:0 0 14px !important; box-sizing:border-box !important; align-items:stretch !important; }
#od-home-inventory .od-home-car-image { align-self:stretch !important; }
#od-home-inventory .od-home-car-image img { width:100% !important; height:100% !important; object-fit:cover !important; }
#od-home-inventory .od-home-car-body { min-width:0 !important; box-sizing:border-box !important; }
@media(max-width:760px){
  #od-home-inventory { width:100% !important; max-width:none !important; margin:18px 0 28px !important; padding:0 10px !important; }
}

/* v3.32 */
#od-home-inventory .od-home-inventory-title { display:block !important; width:100% !important; margin:0 0 16px !important; padding:0 !important; font-size:28px !important; line-height:1.2 !important; font-weight:700 !important; text-align:left !important; box-sizing:border-box !important; }
@media(max-width:760px){
  #od-home-inventory .od-home-inventory-title { font-size:23px !important; margin-bottom:13px !important; }
}

/* v3.33 — MOBILE */
@media (max-width:760px){
  #od-home-inventory { width:100% !important; max-width:100% !important; margin:18px 0 30px !important; padding:0 12px !important; box-sizing:border-box !important; }
  #od-home-inventory .od-home-inventory-title { font-size:22px !important; line-height:1.25 !important; margin:0 0 12px !important; }
  #od-home-inventory .od-home-all-list { width:100% !important; display:flex !important; flex-direction:column !important; gap:14px !important; }
  #od-home-inventory .od-home-car { display:grid !important; grid-template-columns:minmax(105px,38%) minmax(0,1fr) !important; width:100% !important; min-height:150px !important; margin:0 !important; overflow:hidden !important; }
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img { width:100% !important; height:150px !important; min-height:150px !important; }
  #od-home-inventory .od-home-car-image img { object-fit:cover !important; }
  #od-home-inventory .od-home-car-body { width:100% !important; min-width:0 !important; display:flex !important; flex-direction:column !important; align-items:flex-start !important; justify-content:center !important; gap:7px !important; padding:14px 62px 14px 14px !important; box-sizing:border-box !important; }
  #od-home-inventory .od-home-car-main { width:100% !important; min-width:0 !important; }
  #od-home-inventory .od-home-car-main h3 { font-size:16px !important; line-height:1.25 !important; margin:0 0 7px !important; overflow-wrap:anywhere !important; }
  #od-home-inventory .od-home-car-main p,
  #od-home-inventory .od-home-car-main span { font-size:13px !important; line-height:1.35 !important; }
  #od-home-inventory .od-home-car-side { width:100% !important; min-width:0 !important; text-align:left !important; }
  #od-home-inventory .od-home-car-side strong,
  #od-home-inventory .od-home-car-side .price { font-size:16px !important; }
  #od-home-inventory .od-home-compare-check { top:9px !important; right:8px !important; max-width:52px !important; font-size:11px !important; line-height:1.1 !important; white-space:normal !important; text-align:center !important; }
}
@media (max-width:430px){
  #od-home-inventory { padding:0 8px !important; }
  #od-home-inventory .od-home-car { grid-template-columns:112px minmax(0,1fr) !important; min-height:138px !important; }
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img { height:138px !important; min-height:138px !important; }
  #od-home-inventory .od-home-car-body { padding:12px 58px 12px 11px !important; gap:5px !important; }
  #od-home-inventory .od-home-car-main h3 { font-size:15px !important; }
}

/* v3.34 — MOBILE */
@media (max-width:760px){
  #od-home-inventory .od-home-all-list{gap:16px !important;}
  #od-home-inventory .od-home-car{grid-template-columns:42% minmax(0,58%) !important; min-height:180px !important; border-radius:12px !important;}
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img{height:180px !important; min-height:180px !important;}
  #od-home-inventory .od-home-car-body{padding:18px 16px !important; gap:9px !important;}
  #od-home-inventory .od-home-car-main h3{font-size:17px !important; line-height:1.3 !important; margin-bottom:8px !important;}
  #od-home-inventory .od-home-car-main p,
  #od-home-inventory .od-home-car-main span{font-size:14px !important; line-height:1.4 !important;}
  #od-home-inventory .od-home-car-side{display:flex !important; align-items:flex-start !important; justify-content:flex-start !important;}
  #od-home-inventory .od-home-car-side strong,
  #od-home-inventory .od-home-car-side .price{font-size:18px !important;}
  #od-home-inventory .od-home-compare-check{top:auto !important; right:10px !important; bottom:10px !important; max-width:none !important; white-space:nowrap !important; font-size:12px !important; line-height:1 !important; padding:7px 9px !important;}
}
@media (max-width:430px){
  #od-home-inventory{padding:0 8px !important;}
  #od-home-inventory .od-home-car{grid-template-columns:40% minmax(0,60%) !important; min-height:165px !important;}
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img{height:165px !important; min-height:165px !important;}
  #od-home-inventory .od-home-car-body{padding:15px 13px !important; gap:7px !important;}
  #od-home-inventory .od-home-car-main h3{font-size:16px !important;}
  #od-home-inventory .od-home-car-main p,
  #od-home-inventory .od-home-car-main span{font-size:13px !important;}
  #od-home-inventory .od-home-car-side strong,
  #od-home-inventory .od-home-car-side .price{font-size:17px !important;}
}

/* v3.35 — MOBILE DETAIL FIX */
@media (max-width:760px){
  #od-home-inventory .od-home-car{grid-template-columns: 40% minmax(0,1fr) !important; min-height: 210px !important; height: auto !important; overflow: hidden !important; align-items: stretch !important;}
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img{width:100% !important; height:210px !important; min-height:210px !important; display:block !important;}
  #od-home-inventory .od-home-car-body{min-width:0 !important; min-height:210px !important; height:auto !important; box-sizing:border-box !important; padding:16px 12px 54px 16px !important; display:flex !important; flex-direction:column !important; justify-content:flex-start !important; align-items:flex-start !important; gap:10px !important; overflow:hidden !important;}
  #od-home-inventory .od-home-car-main,
  #od-home-inventory .od-home-car-side{width:100% !important; min-width:0 !important; max-width:100% !important; box-sizing:border-box !important;}
  #od-home-inventory .od-home-car-main h3{margin:0 0 9px !important; font-size:16px !important; line-height:1.3 !important; white-space:normal !important; overflow-wrap:anywhere !important; word-break:normal !important;}
  #od-home-inventory .od-home-car-facts{display:flex !important; flex-wrap:wrap !important; gap:5px 7px !important; width:100% !important;}
  #od-home-inventory .od-home-car-facts span{display:block !important; font-size:12px !important; line-height:1.3 !important; white-space:normal !important;}
  #od-home-inventory .od-home-car-side{display:flex !important; flex-direction:column !important; align-items:flex-start !important; gap:8px !important;}
  #od-home-inventory .od-home-car-price{max-width:100% !important; overflow-wrap:anywhere !important; font-size:18px !important; line-height:1.25 !important;}
  #od-home-inventory .od-home-car-button{display:inline-flex !important; align-items:center !important; justify-content:center !important; max-width:100% !important; box-sizing:border-box !important; white-space:nowrap !important; padding:8px 11px !important; font-size:12px !important;}
  #od-home-inventory .od-home-compare-check{position:absolute !important; left:auto !important; right:9px !important; top:auto !important; bottom:9px !important; z-index:20 !important; display:flex !important; align-items:center !important; gap:5px !important; width:auto !important; max-width:calc(60% - 18px) !important; box-sizing:border-box !important; padding:7px 9px !important; margin:0 !important; background:rgba(255,255,255,.96) !important; border-radius:7px !important; white-space:nowrap !important; line-height:1 !important;}
  #od-home-inventory .od-home-compare-check span{font-size:12px !important;}
}
@media (max-width:430px){
  #od-home-inventory .od-home-car{grid-template-columns: 38% minmax(0,1fr) !important; min-height:205px !important;}
  #od-home-inventory .od-home-car-image,
  #od-home-inventory .od-home-car-image img{height:205px !important; min-height:205px !important;}
  #od-home-inventory .od-home-car-body{min-height:205px !important; padding:15px 10px 53px 14px !important; gap:9px !important;}
  #od-home-inventory .od-home-car-main h3{font-size:15px !important;}
  #od-home-inventory .od-home-car-facts span{font-size:11.5px !important;}
  #od-home-inventory .od-home-car-price{font-size:17px !important;}
  #od-home-inventory .od-home-car-button{font-size:11.5px !important;padding:7px 9px !important;}
  #od-home-inventory .od-home-compare-check{right:7px !important;bottom:7px !important;font-size:11px !important;padding:6px 8px !important;}
}

/* v3.42 */
#listings .listingblockgrid,
#listings .listingblock {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: var(--od-surface) !important;
  border: 1px solid var(--od-border) !important;
  border-radius: var(--od-radius) !important;
  box-shadow: var(--od-shadow) !important;
}
#listings .listingblockgrid:hover,
#listings .listingblock:hover { transform: translateY(-3px) !important; box-shadow: var(--od-shadow-hover) !important; border-color: #d7dde7 !important; }
#listings .listingblock > .four.columns,
#listings .listingblock > .eight.columns,
#listings .listingblockgrid > .four.columns,
#listings .listingblockgrid > .eight.columns,
#listings .listingblock .vignette,
#listings .listingblockgrid .vignette { width: 100% !important; max-width: 100% !important; margin: 0 !important; float: none !important; box-sizing: border-box !important; }
#listings .listingblock .vignette,
#listings .listingblockgrid .vignette { aspect-ratio: 4 / 3 !important; height: auto !important; overflow: hidden !important; flex: 0 0 auto !important; }
#listings .listingblock .vignette img,
#listings .listingblockgrid .vignette img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; }
#listings .listingblock .listingblocksection,
#listings .listingblockgrid .listingblocksection { width: 100% !important; min-height: 0 !important; height: auto !important; flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; box-sizing: border-box !important; padding: 18px !important; }
#listings .listingblock .btn,
#listings .listingblockgrid .btn { margin-top: auto !important; width: 100% !important; }
#listings .listingblock .price,
#listings .listingblockgrid .price {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 9px 12px !important;
  margin: 0 0 10px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}
#listings .listingblock .price a,
#listings .listingblock .price span,
#listings .listingblockgrid .price a,
#listings .listingblockgrid .price span { color: #fff !important; }
#listings .listingblock .price.od-price-reduced,
#listings .listingblockgrid .price.od-price-reduced,
#od-home-inventory .od-home-car-price.od-price-reduced { background: #198754 !important; border-color: #198754 !important; color: #fff !important; }
.od-price-reduced .reduced { background: transparent !important; border: 0 !important; box-shadow: none !important; color: #fff !important; padding: 0 !important; margin: 0 !important; }
.od-price-reduced .reduced img { display: none !important; }
.od-price-reduced-label {
  display: inline-flex !important;
  align-items: center !important;
  margin-left: auto !important;
  padding: 5px 8px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

/* v3.43 — ONE VISUAL CARD SYSTEM FOR EVERY VEHICLE LISTING */
#od-home-latest .od-home-car,
#od-home-inventory .od-home-car,
#listings .listingblockgrid,
#listings .listingblock {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: var(--od-surface, #fff) !important;
  border: 1px solid var(--od-border, #e6eaf0) !important;
  border-radius: var(--od-radius, 18px) !important;
  box-shadow: var(--od-shadow, 0 12px 35px rgba(16,24,40,.08)) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
#od-home-latest .od-home-car:hover,
#od-home-inventory .od-home-car:hover,
#listings .listingblockgrid:hover,
#listings .listingblock:hover { transform: translateY(-3px) !important; border-color: #d7dde7 !important; box-shadow: var(--od-shadow-hover, 0 20px 48px rgba(16,24,40,.13)) !important; }
#od-home-latest .od-home-car-image,
#od-home-inventory .od-home-car-image,
#listings .listingblockgrid .vignette,
#listings .listingblock .vignette { display: block !important; width: 100% !important; height: auto !important; min-height: 0 !important; aspect-ratio: 4 / 3 !important; flex: 0 0 auto !important; overflow: hidden !important; background: var(--od-surface-2, #f8fafc) !important; box-sizing: border-box !important; }
#od-home-latest .od-home-car-image img,
#od-home-inventory .od-home-car-image img,
#listings .listingblockgrid .vignette img,
#listings .listingblock .vignette img { display: block !important; width: 100% !important; height: 100% !important; min-height: 0 !important; max-width: none !important; object-fit: cover !important; object-position: center !important; }
#od-home-latest .od-home-car-body,
#od-home-inventory .od-home-car-body,
#listings .listingblockgrid .listingblocksection,
#listings .listingblock .listingblocksection { width: 100% !important; min-width: 0 !important; min-height: 0 !important; flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; align-items: stretch !important; box-sizing: border-box !important; padding: 18px !important; gap: 9px !important; overflow: visible !important; }
#od-home-latest .od-home-car h3,
#od-home-inventory .od-home-car h3,
#listings .listingblockgrid h3,
#listings .listingblock h3 { margin: 0 0 7px !important; color: var(--od-text) !important; font-size: 18px !important; line-height: 1.25 !important; font-weight: 850 !important; }
#od-home-latest .od-home-car h3 a,
#od-home-inventory .od-home-car h3 a,
#listings .listingblockgrid h3 a,
#listings .listingblock h3 a { color: var(--od-text) !important; text-decoration: none !important; }
#od-home-latest .od-home-car h3 a:hover,
#od-home-inventory .od-home-car h3 a:hover,
#listings .listingblockgrid h3 a:hover,
#listings .listingblock h3 a:hover { color: var(--od-accent) !important; }
#od-home-latest .od-home-car-facts,
#od-home-inventory .od-home-car-facts,
#listings .listingblockgrid .twofeatures,
#listings .listingblock .twofeatures { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px !important; min-height: 42px !important; margin: 0 !important; overflow: visible !important; }
#od-home-latest .od-home-car-facts span,
#od-home-inventory .od-home-car-facts span,
#listings .listingblockgrid .twofeatures span,
#listings .listingblock .twofeatures span { display: inline-flex !important; align-items: center !important; min-height: 26px !important; padding: 5px 8px !important; box-sizing: border-box !important; border-radius: 7px !important; background: var(--od-surface-2, #f8fafc) !important; border: 1px solid var(--od-border, #e6eaf0) !important; color: var(--od-muted, #667085) !important; font-size: 11px !important; line-height: 1.1 !important; }
#od-home-latest .od-home-car-facts strong,
#od-home-inventory .od-home-car-facts strong { color: var(--od-text) !important; }
#od-home-latest .od-home-car-price,
#od-home-inventory .od-home-car-price,
#listings .listingblockgrid p.price,
#listings .listingblock p.price { display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 7px !important; width: 100% !important; min-height: 46px !important; margin: 0 !important; padding: 9px 12px !important; box-sizing: border-box !important; border-radius: 12px !important; background: #101828 !important; color: #fff !important; font-size: 20px !important; line-height: 1.25 !important; font-weight: 900 !important; }
#od-home-latest .od-home-car-price,
#od-home-inventory .od-home-car-price { color: #fff !important; }
#od-home-latest .od-home-car-price.od-price-reduced,
#od-home-inventory .od-home-car-price.od-price-reduced,
#listings .listingblockgrid p.price.od-price-reduced,
#listings .listingblock p.price.od-price-reduced { background: #198754 !important; border-color: #198754 !important; color: #fff !important; }
.od-price-reduced-label { margin-left: auto !important; display: inline-flex !important; align-items: center !important; padding: 5px 8px !important; border-radius: 999px !important; background: rgba(255,255,255,.15) !important; border: 1px solid rgba(255,255,255,.35) !important; color: #fff !important; font-size: 10px !important; line-height: 1 !important; font-weight: 900 !important; white-space: nowrap !important; }
#od-home-latest .od-home-car-side,
#od-home-inventory .od-home-car-side { width: 100% !important; min-width: 0 !important; margin-top: auto !important; display: flex !important; flex-direction: column !important; gap: 8px !important; align-items: stretch !important; }
#od-home-latest .od-home-car-button,
#od-home-inventory .od-home-car-button,
#listings .listingblockgrid .btn,
#listings .listingblock .btn { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; min-height: 48px !important; margin: 0 !important; padding: 11px 14px !important; box-sizing: border-box !important; border-radius: 12px !important; background: var(--od-dark, #101828) !important; color: #fff !important; text-decoration: none !important; font-size: 12px !important; font-weight: 800 !important; }
#listings { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 18px !important; align-items: stretch !important; }
#listings > span[style*="clear"],
#listings > span[style*="display: block"] { display: none !important; }
#od-home-inventory .od-home-all-list { display: grid !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; gap: 18px !important; align-items: stretch !important; width: 100% !important; overflow: visible !important; }
@media (max-width: 1050px) {
  #listings,
  #od-home-inventory .od-home-all-list { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}
@media (max-width: 700px) {
  #listings,
  #od-home-inventory .od-home-all-list { grid-template-columns: 1fr !important; gap: 14px !important; }
  #od-home-latest .od-home-car-body,
  #od-home-inventory .od-home-car-body,
  #listings .listingblockgrid .listingblocksection,
  #listings .listingblock .listingblocksection { padding: 15px !important; }
  #od-home-latest .od-home-car h3,
  #od-home-inventory .od-home-car h3,
  #listings .listingblockgrid h3,
  #listings .listingblock h3 { font-size: 16px !important; }
  #od-home-latest .od-home-car-price,
  #od-home-inventory .od-home-car-price,
  #listings .listingblockgrid p.price,
  #listings .listingblock p.price { font-size: 18px !important; }
}

/* v3.44 — Only ONE visible "Prezzo ridotto" label per card */
#listings .listingblockgrid a.reduced,
#listings .listingblock a.reduced,
.listingblockgrid a.reduced,
.listingblock a.reduced { display: none !important; }
#listings .listingblockgrid a.reduced:after,
#listings .listingblock a.reduced:after,
.listingblockgrid a.reduced:after,
.listingblock a.reduced:after { content: none !important; display: none !important; }
.od-reduction-text { display: none !important; }
#od-home-inventory .od-price-reduced-label,
#od-home-latest .od-price-reduced-label,
#listings .od-price-reduced-label { display: inline-flex !important; }

/* v3.50 — Clickable reduced-price information */
#listings .price.od-price-reduced,
#listings p.price.od-price-reduced,
#od-home-latest .od-home-car-price.od-price-reduced,
#od-home-inventory .od-home-car-price.od-price-reduced,
.od-detail-reduction { cursor: pointer !important; }
#listings .price.od-price-reduced:focus-visible,
#listings p.price.od-price-reduced:focus-visible,
#od-home-latest .od-home-car-price.od-price-reduced:focus-visible,
#od-home-inventory .od-home-car-price.od-price-reduced:focus-visible,
.od-detail-reduction:focus-visible { outline: 3px solid rgba(25,135,84,.28) !important; outline-offset: 2px !important; }
.od-detail-reduction {
  border: 0 !important;
  width: max-content !important;
  max-width: 100% !important;
  margin: 9px 0 0 !important;
  padding: 6px 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  border-radius: 999px !important;
  background: #198754 !important;
  color: #fff !important;
  font-family: inherit !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  box-shadow: none !important;
  text-align: left !important;
  white-space: nowrap !important;
}
.od-detail-reduction span { color:#fff !important; }
.od-detail-reduction strong { color:#fff !important; font-weight:900 !important; }
.od-reduction-dialog {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;
  background: rgba(15,23,42,.56) !important;
  opacity: 0 !important;
  transition: opacity .16s ease !important;
}
.od-reduction-dialog.is-open { opacity: 1 !important; }
.od-reduction-dialog-box {
  position: relative !important;
  width: min(390px, calc(100vw - 32px)) !important;
  box-sizing: border-box !important;
  padding: 28px 24px 22px !important;
  border-radius: 20px !important;
  background: #fff !important;
  color: var(--od-text,#111827) !important;
  box-shadow: 0 25px 70px rgba(15,23,42,.28) !important;
  text-align: center !important;
  transform: translateY(8px) scale(.98) !important;
  transition: transform .16s ease !important;
}
.od-reduction-dialog.is-open .od-reduction-dialog-box { transform: translateY(0) scale(1) !important; }
.od-reduction-dialog-icon { width: 44px !important; height: 44px !important; margin: 0 auto 10px !important; border-radius: 50% !important; display:flex !important; align-items:center !important; justify-content:center !important; background:#e9f7ef !important; color:#198754 !important; font-size:22px !important; font-weight:900 !important; }
.od-reduction-dialog-box h3 { margin:0 0 8px !important; font-size:20px !important; }
.od-reduction-dialog-box p { margin:0 0 18px !important; color:#475569 !important; font-size:14px !important; }
.od-reduction-dialog-box p strong { color:#198754 !important; }
.od-reduction-dialog-close { position:absolute !important; right:10px !important; top:8px !important; width:34px !important; height:34px !important; border:0 !important; background:transparent !important; color:#64748b !important; box-shadow:none !important; font-size:26px !important; line-height:1 !important; padding:0 !important; min-height:0 !important; }
.od-reduction-dialog-ok { min-width:90px !important; }
@media (max-width: 767px) {
  .od-detail-reduction { font-size:10px !important; padding:6px 9px !important; }
  .od-reduction-dialog-box { padding:24px 18px 18px !important; }
}

/* v3.51 — Reduced price UX */
#listings .listingblockgrid .price.od-price-reduced,
#listings .listingblock .price.od-price-reduced,
#od-home-latest .od-home-car-price.od-price-reduced,
#od-home-inventory .od-home-car-price.od-price-reduced {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  background: #198754 !important;
  color: #fff !important;
  border: 0 !important;
  cursor: pointer !important;
  user-select: none !important;
}
#listings .listingblockgrid .price.od-price-reduced *,
#listings .listingblock .price.od-price-reduced *,
#od-home-latest .od-home-car-price.od-price-reduced *,
#od-home-inventory .od-home-car-price.od-price-reduced * { color: #fff !important; }
.od-price-reduced-label { display: inline-flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 auto !important; margin-left: auto !important; padding: 5px 8px !important; border-radius: 999px !important; background: rgba(255,255,255,.16) !important; border: 1px solid rgba(255,255,255,.34) !important; color: #fff !important; font-size: 10px !important; font-weight: 900 !important; line-height: 1 !important; white-space: nowrap !important; }
#od-detail-reduction.od-detail-reduction { display: inline-flex !important; align-items: center !important; gap: 8px !important; margin: 9px 0 0 !important; padding: 7px 11px !important; border-radius: 999px !important; background: #198754 !important; border: 0 !important; color: #fff !important; cursor: pointer !important; vertical-align: top !important; font-family: inherit !important; font-size: 11px !important; font-weight: 800 !important; }
#od-detail-reduction.od-detail-reduction span,
#od-detail-reduction.od-detail-reduction strong { color:#fff !important; }
@media (max-width: 700px) {
  #listings .listingblockgrid .price.od-price-reduced,
  #listings .listingblock .price.od-price-reduced,
  #od-home-latest .od-home-car-price.od-price-reduced,
  #od-home-inventory .od-home-car-price.od-price-reduced { font-size: 17px !important; padding: 9px 10px !important; }
  .od-price-reduced-label { font-size: 9px !important; }
  #od-detail-reduction.od-detail-reduction { display:flex !important; width:max-content !important; max-width:100% !important; }
}

/* v3.52 — Single vehicle page: price + reduction badge in one green box */
#od-detail-pricebox { display: flex !important; flex-direction: column !important; align-items: stretch !important; justify-content: flex-start !important; width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; margin: 10px 0 14px !important; padding: 0 !important; overflow: hidden !important; border-radius: 10px !important; background: #198754 !important; border: 1px solid #198754 !important; }
#od-detail-pricebox #pricebig,
#od-detail-pricebox h2#pricebig { display: block !important; width: 100% !important; box-sizing: border-box !important; margin: 0 !important; padding: 15px 17px 6px !important; text-align: left !important; background: #198754 !important; color: #fff !important; -webkit-text-fill-color: #fff !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
#od-detail-pricebox #pricebig a,
#od-detail-pricebox #pricebig span,
#od-detail-pricebox #pricebig * { color: #fff !important; -webkit-text-fill-color: #fff !important; }
#od-detail-pricebox #od-detail-reduction.od-detail-reduction { display: flex !important; width: 100% !important; max-width: none !important; min-height: 0 !important; box-sizing: border-box !important; margin: 0 !important; padding: 4px 17px 15px !important; align-items: center !important; justify-content: flex-start !important; gap: 8px !important; border: 0 !important; border-radius: 0 !important; background: #198754 !important; color: #fff !important; font-size: 12px !important; line-height: 1.2 !important; font-weight: 800 !important; box-shadow: none !important; text-align: left !important; white-space: normal !important; }
#od-detail-pricebox #od-detail-reduction.od-detail-reduction span,
#od-detail-pricebox #od-detail-reduction.od-detail-reduction strong { color: #fff !important; -webkit-text-fill-color: #fff !important; }
#od-detail-pricebox #od-detail-reduction.od-detail-reduction strong { font-weight: 900 !important; }
@media (max-width: 700px) {
  #od-detail-pricebox #pricebig,
  #od-detail-pricebox h2#pricebig { padding: 13px 14px 5px !important; font-size: 26px !important; }
  #od-detail-pricebox #od-detail-reduction.od-detail-reduction { padding: 3px 14px 13px !important; font-size: 11px !important; }
}

/* v3.52 — Share button */
.od-card-top-actions{position:absolute !important;top:10px !important;right:10px !important;z-index:30 !important;display:flex !important;align-items:center !important;gap:7px !important;max-width:calc(100% - 20px) !important;}
.od-card-top-actions .od-home-compare-check{position:static !important;top:auto !important;right:auto !important;left:auto !important;bottom:auto !important;z-index:auto !important;margin:0 !important;}
.od-share-card{appearance:none !important;-webkit-appearance:none !important;width:38px !important;height:38px !important;min-width:38px !important;min-height:38px !important;padding:0 !important;margin:0 !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;flex:0 0 38px !important;border:1px solid rgba(15,23,42,.10) !important;border-radius:50% !important;background:rgba(255,255,255,.96) !important;color:#111827 !important;box-shadow:0 5px 18px rgba(15,23,42,.12) !important;cursor:pointer !important;line-height:1 !important;font-family:inherit !important;transition:transform .16s ease, box-shadow .16s ease, background .16s ease !important;}
.od-share-card svg{display:block !important;width:18px !important;height:18px !important;fill:currentColor !important;}
.od-share-card:hover{transform:translateY(-1px) !important;background:#fff !important;box-shadow:0 8px 20px rgba(15,23,42,.16) !important;}
.od-share-card:focus-visible{outline:3px solid rgba(37,99,235,.20) !important;outline-offset:2px !important;}
.od-share-card-inline{margin-left:2px !important;width:32px !important;height:32px !important;min-width:32px !important;min-height:32px !important;flex-basis:32px !important;border-radius:50% !important;box-shadow:none !important;background:#f8fafc !important;border-color:var(--od-border,#e6eaf0) !important;}
.od-share-card-inline svg{width:16px !important;height:16px !important;}
.od-share-card-inline:hover{background:#fff !important;box-shadow:0 4px 12px rgba(15,23,42,.12) !important;}
.od-share-toast{position:fixed !important;left:50% !important;bottom:24px !important;z-index:2147483646 !important;transform:translate(-50%,12px) !important;padding:10px 14px !important;border-radius:999px !important;background:#111827 !important;color:#fff !important;font-size:12px !important;line-height:1.2 !important;font-weight:800 !important;box-shadow:0 12px 30px rgba(0,0,0,.22) !important;opacity:0 !important;pointer-events:none !important;transition:opacity .18s ease, transform .18s ease !important;}
.od-share-toast.is-visible{opacity:1 !important;transform:translate(-50%,0) !important;}

#listings{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;align-items:stretch !important;}
#listings .listingblockgrid{display:flex !important;flex-direction:column !important;height:100% !important;min-height:0 !important;border-radius:18px !important;overflow:hidden !important;background:#fff !important;box-shadow:0 12px 35px rgba(16,24,40,.08) !important;}
#listings .listingblockgrid .vignette{width:100% !important;aspect-ratio:4/3 !important;height:auto !important;min-height:0 !important;overflow:hidden !important;flex:0 0 auto !important;}
#listings .listingblockgrid .vignette img,
#listings .listingblockgrid img.listing_thumbnail{width:100% !important;height:100% !important;min-height:0 !important;object-fit:cover !important;object-position:center !important;}
#listings .listingblockgrid .listingblocksection{flex:1 1 auto !important;display:flex !important;flex-direction:column !important;gap:9px !important;padding:18px !important;min-height:0 !important;box-sizing:border-box !important;}
#listings .listingblockgrid .listingblocksection .address{min-height:0 !important;max-height:none !important;display:block !important;overflow:visible !important;margin:0 0 2px !important;}
#listings .listingblockgrid .twofeatures{min-height:42px !important;margin:0 !important;display:flex !important;flex-wrap:wrap !important;gap:6px !important;}
#listings .listingblockgrid .compare{display:flex !important;align-items:center !important;gap:7px !important;flex-wrap:wrap !important;margin:0 !important;padding:0 !important;min-height:32px !important;}
#listings .listingblockgrid .compare .od-share-card-inline{order:3 !important;}
#listings .listingblockgrid .btn{margin-top:auto !important;width:100% !important;}

#od-home-inventory .od-home-all-list{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;}
#od-home-inventory .od-home-car{display:flex !important;flex-direction:column !important;height:100% !important;min-height:0 !important;border-radius:18px !important;}
#od-home-inventory .od-home-car-image{width:100% !important;height:auto !important;min-height:0 !important;aspect-ratio:4/3 !important;flex:0 0 auto !important;}
#od-home-inventory .od-home-car-image img{width:100% !important;height:100% !important;min-height:0 !important;object-fit:cover !important;}
#od-home-inventory .od-home-car-body{display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;gap:9px !important;width:100% !important;min-height:0 !important;padding:18px !important;box-sizing:border-box !important;}
#od-home-inventory .od-home-car-main,
#od-home-inventory .od-home-car-side{width:100% !important;min-width:0 !important;}
#od-home-inventory .od-home-car-side{margin-top:auto !important;}
#od-home-inventory .od-home-compare-check{position:static !important;max-width:none !important;width:auto !important;padding:6px 9px !important;}
#od-home-inventory .od-card-top-actions{top:10px !important;right:10px !important;}

@media(max-width:980px){
  #listings{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  #od-home-inventory .od-home-all-list{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:700px){
  #listings{grid-template-columns:1fr !important;gap:14px !important;}
  #od-home-inventory .od-home-all-list{grid-template-columns:1fr !important;gap:14px !important;}
  #listings .listingblockgrid .listingblocksection,
  #od-home-inventory .od-home-car-body{padding:15px !important;}
  #listings .listingblockgrid .vignette,
  #od-home-inventory .od-home-car-image{aspect-ratio:16/10 !important;}
  .od-card-top-actions{top:8px !important;right:8px !important;gap:6px !important;}
  .od-share-card{width:36px !important;height:36px !important;min-width:36px !important;min-height:36px !important;flex-basis:36px !important;}
}

/* =========================================================
   Global compact sticky header
   ========================================================= */
.od-scrollbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 99990 !important;
  height: 68px !important;
  background: rgba(255,255,255,.97) !important;
  border-bottom: 1px solid #e7eaf0 !important;
  box-shadow: 0 8px 24px rgba(16,24,40,.10) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 28px !important;
  box-sizing: border-box !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-100%) !important;
  transition: opacity .22s ease, transform .22s ease, visibility .22s ease !important;
  pointer-events: none !important;
}
.od-scrollbar.is-visible { opacity: 1 !important; visibility: visible !important; transform: translateY(0) !important; pointer-events: auto !important; }
.od-scrollbar-logo { display: block !important; width: 150px !important; height: 48px !important; flex: 0 0 150px !important; background-repeat: no-repeat !important; background-position: left center !important; background-size: contain !important; text-decoration: none !important; }
.od-scrollbar-socials { display: flex !important; align-items: center !important; justify-content: flex-end !important; gap: 10px !important; margin-left: auto !important; }
.od-scrollbar-social { width: 38px !important; height: 38px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border-radius: 50% !important; background: #f5f6f8 !important; color: #17191d !important; text-decoration: none !important; transition: transform .18s ease, background .18s ease, box-shadow .18s ease !important; }
.od-scrollbar-social:hover { transform: translateY(-2px) !important; background: #eceef2 !important; box-shadow: 0 5px 14px rgba(16,24,40,.12) !important; }
.od-scrollbar-social svg { width: 20px !important; height: 20px !important; display: block !important; fill: currentColor !important; }
@media(max-width:700px){
  .od-scrollbar { height: 58px !important; padding: 0 14px !important; }
  .od-scrollbar-logo { width: 112px !important; height: 42px !important; flex-basis: 112px !important; }
  .od-scrollbar-socials { gap: 6px !important; }
  .od-scrollbar-social { width: 34px !important; height: 34px !important; }
  .od-scrollbar-social svg { width: 18px !important; height: 18px !important; }
}

/* v9.1 */
#header .od-header-social { background: transparent !important; border: 0 !important; box-shadow: none !important; color: #17191d !important; }
#header .od-header-social svg { width: 19px !important; height: 19px !important; display: block !important; fill: currentColor !important; }
#header .od-header-social:hover { background: #f2f3f5 !important; transform: translateY(-1px) !important; }
#header .od-header-social-instagram svg,
#header .od-header-social-youtube svg { width: 20px !important; height: 20px !important; }
.od-scrollbar-logo { transform: scale(.86) !important; transform-origin: left center !important; opacity: .98 !important; transition: transform .28s cubic-bezier(.2,.8,.2,1), opacity .2s ease !important; }
.od-scrollbar.is-visible .od-scrollbar-logo { transform: scale(1) !important; }
.od-scrollbar-social { background: #fff !important; border: 1px solid #e3e6eb !important; color: #15171a !important; box-shadow: 0 2px 8px rgba(16,24,40,.07) !important; }
.od-scrollbar-social:hover { background: #f5f6f8 !important; border-color: #d7dbe2 !important; }

/* v9.2 */
html, body { max-width: 100%; overflow-x: hidden !important; }
.od-scrollbar { width: 100% !important; max-width: 100vw !important; left: 0 !important; right: 0 !important; margin: 0 !important; padding-left: clamp(10px, 2.8vw, 34px) !important; padding-right: clamp(10px, 2.8vw, 34px) !important; box-sizing: border-box !important; }
.od-scrollbar-logo { width: clamp(92px, 13vw, 150px) !important; flex: 0 1 clamp(92px, 13vw, 150px) !important; min-width: 0 !important; height: 46px !important; }
.od-scrollbar-socials { flex: 0 0 auto !important; min-width: 0 !important; gap: clamp(4px, .7vw, 10px) !important; }
.od-scrollbar-social { width: clamp(30px, 3vw, 38px) !important; height: clamp(30px, 3vw, 38px) !important; flex: 0 0 auto !important; }
@media (max-width: 520px) {
  .od-scrollbar { height: 54px !important; padding-left: 9px !important; padding-right: 9px !important; }
  .od-scrollbar-logo { width: 92px !important; flex-basis: 92px !important; height: 38px !important; }
  .od-scrollbar-social { width: 30px !important; height: 30px !important; }
  .od-scrollbar-social svg { width: 16px !important; height: 16px !important; }
  .od-scrollbar-social-instagram svg, .od-scrollbar-social-youtube svg { width: 17px !important; height: 17px !important; }
}
@media (min-width: 521px) and (max-width: 900px) { .od-scrollbar { height: 60px !important; } }
@media (min-width: 1600px) { .od-scrollbar { padding-left: max(34px, calc((100vw - 1500px)/2)) !important; padding-right: max(34px, calc((100vw - 1500px)/2)) !important; } }
.od-scrollbar *, #header * { max-width: 100%; }

/* v9.3 */
.od-scrollbar { height: 56px !important; padding: 0 14px !important; background: rgba(255,255,255,.98) !important; border: 0 !important; border-bottom: 1px solid var(--od-border) !important; box-shadow: 0 14px 35px rgba(16,24,40,.12) !important; backdrop-filter: blur(14px) !important; }
.od-scrollbar-logo { width: 136px !important; height: 44px !important; flex: 0 0 136px !important; transform: scale(.90) !important; transform-origin: left center !important; }
.od-scrollbar.is-visible .od-scrollbar-logo { transform: scale(1) !important; }
.od-scrollbar-socials { gap: 3px !important; }
.od-scrollbar-social { width: 46px !important; height: 44px !important; border-radius: 10px !important; border: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--od-text) !important; transition: color .18s ease, background-color .18s ease, transform .18s ease !important; }
.od-scrollbar-social:hover { color: #fff !important; background: var(--od-accent) !important; border-color: transparent !important; box-shadow: none !important; transform: none !important; }
.od-scrollbar-social svg { width: 19px !important; height: 19px !important; }
.od-scrollbar-social-instagram svg,
.od-scrollbar-social-youtube svg { width: 20px !important; height: 20px !important; }
.od-scrollbar-social-facebook svg { width: 18px !important; height: 18px !important; }
.od-scrollbar-social-tiktok svg { width: 19px !important; height: 19px !important; }
@media (max-width: 700px) {
  .od-scrollbar { height: 54px !important; padding: 0 9px !important; }
  .od-scrollbar-logo { width: 108px !important; flex-basis: 108px !important; height: 40px !important; }
  .od-scrollbar-social { width: 38px !important; height: 42px !important; border-radius: 9px !important; }
  .od-scrollbar-social svg { width: 17px !important; height: 17px !important; }
  .od-scrollbar-social-instagram svg,
  .od-scrollbar-social-youtube svg { width: 18px !important; height: 18px !important; }
}
@media (max-width: 390px) {
  .od-scrollbar { padding-left: 6px !important; padding-right: 6px !important; }
  .od-scrollbar-logo { width: 94px !important; flex-basis: 94px !important; }
  .od-scrollbar-social { width: 34px !important; }
  .od-scrollbar-socials { gap: 1px !important; }
}

/* v9.4 */
.od-scrollbar { height: 54px !important; padding: 0 14px !important; background: #fff !important; border: 1px solid var(--od-border) !important; border-top: 0 !important; border-radius: 0 0 20px 20px !important; box-shadow: 0 16px 36px rgba(16,24,40,.13) !important; backdrop-filter: blur(16px) !important; gap: 2px !important; }
.od-scrollbar-logo { width: 180px !important; height: 46px !important; flex: 0 0 180px !important; margin: 0 !important; padding: 0 !important; background-position: left center !important; background-size: contain !important; transform: scale(.78) !important; transform-origin: left center !important; transition: transform .25s ease, opacity .2s ease !important; }
.od-scrollbar.is-visible .od-scrollbar-logo { transform: scale(.90) !important; }
.od-scrollbar-socials { gap: 2px !important; margin-left: auto !important; }
.od-scrollbar-social { width: 46px !important; height: 46px !important; flex: 0 0 46px !important; border-radius: 10px !important; background: transparent !important; border: 0 !important; box-shadow: none !important; color: var(--od-text) !important; transition: background .18s ease, color .18s ease, transform .18s ease !important; }
.od-scrollbar-social:hover,
.od-scrollbar-social:focus-visible { color: #fff !important; background: var(--od-accent) !important; box-shadow: none !important; transform: translateY(-1px) !important; }
.od-scrollbar-social svg { width: 20px !important; height: 20px !important; }
.od-scrollbar-social-instagram svg,
.od-scrollbar-social-youtube svg { width: 21px !important; height: 21px !important; }
.od-scrollbar-social-facebook svg { width: 19px !important; height: 19px !important; }
.od-scrollbar-social-tiktok svg { width: 20px !important; height: 20px !important; }
@media (max-width: 900px) {
  .od-scrollbar { height: 52px !important; padding: 0 10px !important; border-radius: 0 0 16px 16px !important; }
  .od-scrollbar-logo { width: 140px !important; flex-basis: 140px !important; height: 42px !important; }
  .od-scrollbar-social { width: 40px !important; flex-basis: 40px !important; height: 42px !important; }
  .od-scrollbar-social svg { width: 18px !important; height: 18px !important; }
}
@media (max-width: 520px) {
  .od-scrollbar { height: 50px !important; padding: 0 6px !important; }
  .od-scrollbar-logo { width: 108px !important; flex-basis: 108px !important; height: 40px !important; transform: scale(.80) !important; }
  .od-scrollbar.is-visible .od-scrollbar-logo { transform: scale(.90) !important; }
  .od-scrollbar-social { width: 34px !important; flex-basis: 34px !important; height: 40px !important; border-radius: 9px !important; }
  .od-scrollbar-socials { gap: 0 !important; }
  .od-scrollbar-social svg { width: 16px !important; height: 16px !important; }
  .od-scrollbar-social-instagram svg,
  .od-scrollbar-social-youtube svg { width: 17px !important; height: 17px !important; }
}

/* v9.5 */
.od-scrollbar { background: var(--od-dark) !important; border-color: var(--od-dark) !important; box-shadow: 0 14px 35px rgba(16,24,40,.18) !important; backdrop-filter: none !important; }
.od-scrollbar-logo,
.od-scrollbar-logo:hover,
.od-scrollbar-logo:focus { background-color: transparent !important; box-shadow: none !important; border: 0 !important; }
.od-scrollbar-social { color: #e8edf5 !important; background: transparent !important; border: 0 !important; }
.od-scrollbar-social:hover,
.od-scrollbar-social:focus-visible { color: #fff !important; background: var(--od-accent) !important; }
@media (max-width: 520px) { .od-scrollbar { border-radius: 0 0 12px 12px !important; } }

/* v9.6 */
#header { background: var(--od-dark) !important; color: #e8edf5 !important; border-color: var(--od-dark) !important; box-shadow: none !important; }
#header #logo,
#header #logo a,
#header #logo2 { background-color: transparent !important; border: 0 !important; box-shadow: none !important; }
#headertextandsocialicons, #headertext { color: #e8edf5 !important; }
#header .od-header-social { color: #e8edf5 !important; background: transparent !important; border-color: transparent !important; }
#header .od-header-social:hover, #header .od-header-social:focus-visible { color: #fff !important; background: var(--od-accent) !important; }
#header .od-top-login a { color: #e8edf5 !important; }
#header .od-top-login a:hover { color: #fff !important; }
@media (max-width:760px) { #header { background: var(--od-dark) !important; } }

/* v9.7 */
#header { width: 100% !important; max-width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; padding-inline: clamp(12px, 3vw, 32px) !important; gap: clamp(10px, 2vw, 24px) !important; overflow: hidden !important; }
#logo { width: clamp(132px, 17vw, 210px) !important; height: clamp(46px, 5.4vw, 70px) !important; flex: 0 1 clamp(132px, 17vw, 210px) !important; min-width: 0 !important; max-width: 42vw !important; }
#logo a { max-width: 100% !important; background-size: contain !important; background-position: left center !important; }
#headertextandsocialicons { min-width: 0 !important; max-width: 100% !important; flex: 1 1 auto !important; justify-content: flex-end !important; overflow: hidden !important; }
#headertext { min-width: 0 !important; max-width: min(30vw, 260px) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.od-top-login,
.od-header-socials { min-width: 0 !important; flex-wrap: wrap !important; }
@media (max-width: 1100px) {
  #header { min-height: 88px !important; padding-block: 14px !important; }
  #logo { max-width: 38vw !important; }
  #headertextandsocialicons { gap: 10px !important; }
  #headertext { max-width: 24vw !important; font-size: 13px !important; }
  .od-header-social { width: 34px !important; height: 34px !important; }
}
@media (max-width: 900px) {
  #header { min-height: 76px !important; padding: 10px 14px !important; gap: 10px !important; }
  #logo { width: clamp(128px, 22vw, 170px) !important; flex-basis: clamp(128px, 22vw, 170px) !important; height: 54px !important; }
  #headertextandsocialicons { gap: 7px !important; }
  #headertext { display: none !important; }
  #socialheader { display: none !important; }
  .od-top-login { max-width: 45vw !important; }
  .od-header-socials { gap: 5px !important; }
  .od-header-social { width: 32px !important; height: 32px !important; flex: 0 0 32px !important; }
}
@media (max-width: 600px) {
  #header { min-height: 64px !important; height: auto !important; padding: 8px 10px !important; gap: 8px !important; }
  #logo { width: clamp(118px, 38vw, 150px) !important; flex-basis: clamp(118px, 38vw, 150px) !important; height: 46px !important; max-width: 48vw !important; }
  #logo a { background-position: left center !important; }
  .od-top-login { max-width: 32vw !important; }
  .od-top-login-item { font-size: 11px !important; }
  .od-header-socials { gap: 4px !important; }
  .od-header-social { width: 29px !important; height: 29px !important; flex-basis: 29px !important; }
  #menubar { width: 100% !important; max-width: 100% !important; box-sizing: border-box !important; }
}
@media (max-width: 430px) {
  #header { padding-inline: 8px !important; gap: 6px !important; }
  #logo { width: 112px !important; flex-basis: 112px !important; height: 42px !important; }
  .od-top-login { display: none !important; }
  .od-header-socials { margin-left: auto !important; gap: 3px !important; }
  .od-header-social { width: 27px !important; height: 27px !important; flex-basis: 27px !important; }
  .od-header-social svg { width: 16px !important; height: 16px !important; }
}
@media (max-width: 340px) {
  #logo { width: 102px !important; flex-basis: 102px !important; }
  .od-header-social { width: 25px !important; height: 25px !important; flex-basis: 25px !important; }
  .od-header-social svg { width: 15px !important; height: 15px !important; }
}
@media (orientation: landscape) and (max-height: 520px) {
  #header { min-height: 60px !important; padding-block: 6px !important; }
  #logo { height: 42px !important; }
}
@supports (padding: max(0px)) {
  #header { padding-left: max(8px, env(safe-area-inset-left)) !important; padding-right: max(8px, env(safe-area-inset-right)) !important; }
}

/* v9.8 */
#header { overflow: visible !important; }
#header .od-top-login { position: absolute !important; top: 10px !important; right: clamp(10px, 2.5vw, 24px) !important; z-index: 120 !important; max-width: calc(100% - 260px) !important; overflow: visible !important; }
#header .od-header-socials { position: absolute !important; top: 50px !important; right: clamp(10px, 2.5vw, 24px) !important; z-index: 119 !important; display: flex !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: flex-end !important; gap: 5px !important; margin: 0 !important; padding: 5px 0 0 !important; border-top: 1px solid rgba(255,255,255,.14) !important; white-space: nowrap !important; }
#header .od-header-social { flex: 0 0 auto !important; }
@media (min-width: 901px) {
  #header { min-height: 120px !important; }
  #header .od-top-login { top: 10px !important; }
  #header .od-header-socials { top: 50px !important; }
}
@media (max-width: 900px) {
  #header { min-height: 118px !important; height: 118px !important; padding: 10px 12px !important; box-sizing: border-box !important; align-items: center !important; }
  #logo { width: clamp(150px, 34vw, 205px) !important; flex: 0 1 clamp(150px, 34vw, 205px) !important; height: 62px !important; max-width: 45vw !important; }
  #header .od-top-login { top: 9px !important; right: 10px !important; max-width: 52vw !important; flex-wrap: nowrap !important; }
  #header .od-header-socials { top: 51px !important; right: 10px !important; gap: 4px !important; }
}
@media (max-width: 600px) {
  #header { min-height: 112px !important; height: 112px !important; padding: 8px 10px !important; gap: 5px !important; border-radius: 15px 15px 0 0 !important; }
  #logo { width: clamp(142px, 38vw, 180px) !important; flex-basis: clamp(142px, 38vw, 180px) !important; height: 56px !important; max-width: 44vw !important; }
  #header .od-top-login { top: 8px !important; right: 8px !important; max-width: 52vw !important; gap: 0 !important; }
  #header .od-top-login > .od-top-login-item,
  #header .od-top-login > a { min-height: 24px !important; padding: 2px 7px !important; font-size: 10px !important; }
  #header .od-header-socials { top: 49px !important; right: 8px !important; gap: 4px !important; padding-top: 4px !important; }
  #header .od-header-social { width: 27px !important; height: 27px !important; min-width: 27px !important; flex-basis: 27px !important; }
  #header .od-header-social svg { width: 16px !important; height: 16px !important; }
}
@media (max-width: 430px) {
  #header { min-height: 104px !important; height: 104px !important; padding: 7px 8px !important; }
  #logo { width: 126px !important; flex-basis: 126px !important; height: 48px !important; max-width: 40vw !important; }
  #header .od-top-login { top: 7px !important; right: 7px !important; max-width: 58vw !important; }
  #header .od-top-login > .od-top-login-item,
  #header .od-top-login > a { min-height: 22px !important; padding: 2px 6px !important; font-size: 9px !important; }
  #header .od-header-socials { top: 45px !important; right: 7px !important; gap: 3px !important; padding-top: 3px !important; }
  #header .od-header-social { width: 24px !important; height: 24px !important; min-width: 24px !important; flex-basis: 24px !important; }
  #header .od-header-social svg { width: 14px !important; height: 14px !important; }
}
#slider.unoslider { box-sizing: border-box !important; }
#slider.unoslider > li > img,
#slider.unoslider > li > a > img { object-fit: cover !important; object-position: center center !important; }
@media (max-width: 760px) {
  #slider.unoslider { width: 100% !important; height: auto !important; aspect-ratio: 16 / 9 !important; min-height: 0 !important; max-height: none !important; margin: 0 0 14px !important; border-radius: 18px !important; }
  #slider.unoslider > li,
  #slider.unoslider > li > a { width: 100% !important; height: 100% !important; }
  #slider.unoslider > li > img,
  #slider.unoslider > li > a > img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; }
}
@media (max-width: 390px) {
  #slider.unoslider { aspect-ratio: 16 / 9 !important; border-radius: 14px !important; }
}

/* v9.9 */
#header #headertextandsocialicons { position: static !important; }
#header #headertext {
  position: absolute !important;
  z-index: 121 !important;
  right: clamp(10px, 2.5vw, 24px) !important;
  top: 46px !important;
  display: block !important;
  max-width: min(42vw, 250px) !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #e8edf5 !important;
  font-size: 11px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: right !important;
  pointer-events: none !important;
}
#header .od-header-socials { top: 66px !important; }
@media (max-width: 900px) {
  #header #headertext { top: 45px !important; right: 10px !important; max-width: 52vw !important; font-size: 10px !important; }
  #header .od-header-socials { top: 64px !important; right: 10px !important; }
}
@media (max-width: 600px) {
  #header #headertext { top: 43px !important; right: 8px !important; max-width: 56vw !important; font-size: 9px !important; }
  #header .od-header-socials { top: 61px !important; right: 8px !important; }
}
@media (max-width: 430px) {
  #header #headertext { top: 39px !important; right: 7px !important; max-width: 60vw !important; font-size: 8px !important; }
  #header .od-header-socials { top: 56px !important; right: 7px !important; }
}
@media (max-width: 340px) {
  #header #headertext { max-width: 58vw !important; font-size: 7.5px !important; }
}
/* ================================================================
   v3.53 — Le nostre auto: card identiche alla Home > Novità
   Scoped sulla pagina con titolo "Le nostre auto".
   ================================================================ */
body.od-our-cars-page .listingblockgrid,
body.od-our-cars-page .listingblock{
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  margin:0 !important;
  float:none !important;
  display:flex !important;
  flex-direction:column !important;
  align-self:stretch !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  background:var(--od-surface,#fff) !important;
  border:1px solid var(--od-border,#e6eaf0) !important;
  border-radius:18px !important;
  box-shadow:var(--od-shadow,0 12px 35px rgba(16,24,40,.08)) !important;
}
body.od-our-cars-page .listingblockgrid:hover,
body.od-our-cars-page .listingblock:hover{
  transform:translateY(-3px) !important;
  border-color:#d7dde7 !important;
  box-shadow:var(--od-shadow-hover,0 20px 48px rgba(16,24,40,.13)) !important;
}
body.od-our-cars-page .listingblockgrid .vignette,
body.od-our-cars-page .listingblock .vignette{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:4/3 !important;
  flex:0 0 auto !important;
  overflow:hidden !important;
  background:#f8fafc !important;
  box-sizing:border-box !important;
}
body.od-our-cars-page .listingblockgrid .vignette img,
body.od-our-cars-page .listingblock .vignette img,
body.od-our-cars-page .listingblockgrid img.listing_thumbnail,
body.od-our-cars-page .listingblock img.listing_thumbnail{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  min-height:0 !important;
  object-fit:cover !important;
  object-position:center !important;
}
body.od-our-cars-page .listingblockgrid .listingblocksection,
body.od-our-cars-page .listingblock .listingblocksection{
  width:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  box-sizing:border-box !important;
  padding:18px !important;
  gap:9px !important;
  overflow:visible !important;
}
body.od-our-cars-page .listingblockgrid h3,
body.od-our-cars-page .listingblock h3{
  margin:0 0 7px !important;
  color:var(--od-text) !important;
  font-size:18px !important;
  line-height:1.25 !important;
  font-weight:850 !important;
}
body.od-our-cars-page .listingblockgrid h3 a,
body.od-our-cars-page .listingblock h3 a{
  color:var(--od-text) !important;
  text-decoration:none !important;
}
body.od-our-cars-page .listingblockgrid .twofeatures,
body.od-our-cars-page .listingblock .twofeatures{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:6px !important;
  min-height:42px !important;
  margin:0 !important;
  overflow:visible !important;
}
body.od-our-cars-page .listingblockgrid .twofeatures span,
body.od-our-cars-page .listingblock .twofeatures span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:26px !important;
  padding:5px 8px !important;
  box-sizing:border-box !important;
  border-radius:7px !important;
  background:#f8fafc !important;
  border:1px solid #e6eaf0 !important;
  color:#667085 !important;
  font-size:11px !important;
  line-height:1.1 !important;
}
body.od-our-cars-page .listingblockgrid p.price,
body.od-our-cars-page .listingblock p.price{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:7px !important;
  width:100% !important;
  min-height:46px !important;
  margin:0 !important;
  padding:9px 12px !important;
  box-sizing:border-box !important;
  border-radius:12px !important;
  background:#101828 !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.25 !important;
  font-weight:900 !important;
}
body.od-our-cars-page .listingblockgrid p.price.od-price-reduced,
body.od-our-cars-page .listingblock p.price.od-price-reduced{
  background:#198754 !important;
  border-color:#198754 !important;
  color:#fff !important;
}
body.od-our-cars-page .od-card-top-actions{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  left:auto !important;
  bottom:auto !important;
  z-index:30 !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  max-width:calc(100% - 20px) !important;
}
body.od-our-cars-page .od-our-cars-compare{
  position:static !important;
  display:inline-flex !important;
  align-items:center !important;
  width:auto !important;
  min-height:38px !important;
  margin:0 !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 5px 18px rgba(15,23,42,.12) !important;
  box-sizing:border-box !important;
}
body.od-our-cars-page .od-our-cars-compare label,
body.od-our-cars-page .od-our-cars-compare span{
  font-size:11px !important;
  font-weight:800 !important;
  color:#111827 !important;
}
body.od-our-cars-page .od-our-cars-compare input[type=checkbox]{
  margin:0 6px 0 0 !important;
}
body.od-our-cars-page .listingblockgrid .btn,
body.od-our-cars-page .listingblock .btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:48px !important;
  margin-top:auto !important;
  padding:11px 14px !important;
  box-sizing:border-box !important;
  border-radius:12px !important;
  background:var(--od-dark,#101828) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:12px !important;
  font-weight:800 !important;
}

/* ================================================================
   v10.16 — LE NOSTRE AUTO / ALL LISTINGS: 3 colonne reali
   Griglia 3 → 2 → 1, pulita e senza conflitti.
   Sostituisce tutti i tentativi precedenti (v10.3 → v10.14).
   ================================================================ */

body.od-our-cars-page #listings,
body.od-our-cars-page #listings.od-our-cars-listings-grid-parent {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  grid-auto-flow: row !important;
}

/* Titoli/filtri fuori dalla griglia */
body.od-our-cars-page #listings > h2,
body.od-our-cars-page #listings > .bar,
body.od-our-cars-page #listings > .clear,
body.od-our-cars-page #listings > .pagination,
body.od-our-cars-page #listings > .alert,
body.od-our-cars-page #listings > #orderresults,
body.od-our-cars-page #listings > .searchresultshead,
body.od-our-cars-page #listings > form {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

/* Le card sono elementi della griglia */
body.od-our-cars-page #listings > .listingblockgrid,
body.od-our-cars-page #listings > .listingblock,
body.od-our-cars-page #listings.od-our-cars-listings-grid-parent > .listingblockgrid,
body.od-our-cars-page #listings.od-our-cars-listings-grid-parent > .listingblock,
body.od-our-cars-page #listings > .od-our-cars-grid > .listingblockgrid,
body.od-our-cars-page #listings > .od-our-cars-grid > .listingblock,
body.od-our-cars-page #listings.od-our-cars-listings-grid-parent > .od-our-cars-card {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  grid-column: auto !important;
  grid-row: auto !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e6eaf0 !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 35px rgba(16,24,40,.08) !important;
}

/* Il contenitore intermedio del JS diventa trasparente per la grid */
body.od-our-cars-page #listings > .od-our-cars-grid {
  display: contents !important;
}

/* Immagine 4:3 */
body.od-our-cars-page #listings .vignette {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
  background: #f8fafc !important;
}
body.od-our-cars-page #listings .vignette img,
body.od-our-cars-page #listings img.listing_thumbnail {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Corpo card */
body.od-our-cars-page #listings .listingblocksection {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 9px !important;
  padding: 18px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Prezzo nero/verde */
body.od-our-cars-page #listings p.price {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}
body.od-our-cars-page #listings p.price * { color: #fff !important; }
body.od-our-cars-page #listings p.price.od-price-reduced { background: #198754 !important; }

/* Bottone nero */
body.od-our-cars-page #listings .btn,
body.od-our-cars-page #listings a.btn-lightgray {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  margin-top: auto !important;
  padding: 11px 14px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}
body.od-our-cars-page #listings .btn:hover { background: #e11d2e !important; }

/* Compare + condividi in basso */
body.od-our-cars-page #listings .compare {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 4px 0 0 !important;
  min-height: 34px !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* Tablet: 2 colonne */
@media (max-width: 980px) {
  body.od-our-cars-page #listings,
  body.od-our-cars-page #listings.od-our-cars-listings-grid-parent {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

/* Mobile: 1 colonna */
@media (max-width: 640px) {
  body.od-our-cars-page #listings,
  body.od-our-cars-page #listings.od-our-cars-listings-grid-parent {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  body.od-our-cars-page #listings .listingblocksection { padding: 15px !important; }
  body.od-our-cars-page #listings .vignette { aspect-ratio: 16 / 10 !important; }
  body.od-our-cars-page #listings p.price { font-size: 18px !important; }
}

/* ================================================================
   v10.17 — PAGINE LEGALI: TERMINI E CONDIZIONI + TRATTAMENTO DATI
   Testo centrato, larghezza di lettura comoda, senza sidebar.
   ================================================================ */

body.od-terms-page #content,
body.od-privacy-page #content {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 24px auto 40px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.od-terms-page #content > .four.columns,
body.od-terms-page #content > #leftsidebar,
body.od-privacy-page #content > .four.columns,
body.od-privacy-page #content > #leftsidebar {
  display: none !important;
}

body.od-terms-page #content > .twelve.columns,
body.od-privacy-page #content > .twelve.columns {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  float: none !important;
}

body.od-terms-page #content > .twelve.columns > *,
body.od-privacy-page #content > .twelve.columns > * {
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.od-terms-page #content .post,
body.od-terms-page #content .page,
body.od-terms-page #content .entry-content,
body.od-terms-page #content .post-content,
body.od-terms-page #content .entry,
body.od-privacy-page #content .post,
body.od-privacy-page #content .page,
body.od-privacy-page #content .entry-content,
body.od-privacy-page #content .post-content,
body.od-privacy-page #content .entry {
  width: 100% !important;
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.od-terms-page #content h1,
body.od-terms-page #content h2,
body.od-terms-page #content h3,
body.od-terms-page #content h4,
body.od-terms-page #content h5,
body.od-terms-page #content h6,
body.od-terms-page #content p,
body.od-terms-page #content ul,
body.od-terms-page #content ol,
body.od-terms-page #content table,
body.od-terms-page #content blockquote,
body.od-privacy-page #content h1,
body.od-privacy-page #content h2,
body.od-privacy-page #content h3,
body.od-privacy-page #content h4,
body.od-privacy-page #content h5,
body.od-privacy-page #content h6,
body.od-privacy-page #content p,
body.od-privacy-page #content ul,
body.od-privacy-page #content ol,
body.od-privacy-page #content table,
body.od-privacy-page #content blockquote {
  max-width: 860px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.od-terms-page #content h1,
body.od-privacy-page #content h1 {
  text-align: center !important;
  font-size: 32px !important;
  line-height: 1.2 !important;
  margin-top: 0 !important;
  margin-bottom: 28px !important;
}
body.od-terms-page #content h2,
body.od-privacy-page #content h2 {
  text-align: center !important;
  font-size: 23px !important;
  line-height: 1.3 !important;
  margin-top: 30px !important;
  margin-bottom: 12px !important;
}
body.od-terms-page #content h3,
body.od-terms-page #content h4,
body.od-privacy-page #content h3,
body.od-privacy-page #content h4 {
  text-align: center !important;
  line-height: 1.35 !important;
  margin-top: 24px !important;
  margin-bottom: 10px !important;
}

body.od-terms-page #content p,
body.od-terms-page #content li,
body.od-privacy-page #content p,
body.od-privacy-page #content li {
  font-size: 16px !important;
  line-height: 1.75 !important;
}
body.od-terms-page #content p,
body.od-privacy-page #content p {
  text-align: center !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
}
body.od-terms-page #content ul,
body.od-terms-page #content ol,
body.od-privacy-page #content ul,
body.od-privacy-page #content ol {
  width: fit-content !important;
  max-width: 100% !important;
  text-align: left !important;
  padding-left: 24px !important;
  margin-top: 8px !important;
  margin-bottom: 20px !important;
}
body.od-terms-page #content li,
body.od-privacy-page #content li {
  margin-bottom: 7px !important;
}
body.od-terms-page #content a,
body.od-privacy-page #content a {
  overflow-wrap: anywhere !important;
}
body.od-terms-page #content blockquote,
body.od-privacy-page #content blockquote {
  padding: 16px 22px !important;
  margin-top: 20px !important;
  margin-bottom: 20px !important;
  box-sizing: border-box !important;
}
body.od-terms-page #content table,
body.od-privacy-page #content table {
  width: 100% !important;
  display: block !important;
  overflow-x: auto !important;
}

@media (max-width: 767px) {
  body.od-terms-page #content,
  body.od-privacy-page #content {
    margin-top: 16px !important;
    padding: 0 12px !important;
  }
  body.od-terms-page #content h1,
  body.od-privacy-page #content h1 {
    font-size: 26px !important;
    margin-bottom: 22px !important;
  }
  body.od-terms-page #content h2,
  body.od-privacy-page #content h2 {
    font-size: 20px !important;
    margin-top: 24px !important;
  }
  body.od-terms-page #content p,
  body.od-terms-page #content li,
  body.od-privacy-page #content p,
  body.od-privacy-page #content li {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }
}

/* ============ FINE style.css ============ */
/* ================================================================
   v10.18 — LE NOSTRE AUTO: FIX GRIGLIA 3 COLONNE (robusto)
   Copre entrambe le strutture: card figlie dirette di #listings
   oppure card dentro .od-our-cars-grid creato dal JS.
   ================================================================ */

body.od-our-cars-page #listings {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  grid-auto-flow: row !important;
}

body.od-our-cars-page #listings > h2,
body.od-our-cars-page #listings > .bar,
body.od-our-cars-page #listings > .clear,
body.od-our-cars-page #listings > .pagination,
body.od-our-cars-page #listings > .alert,
body.od-our-cars-page #listings > #orderresults,
body.od-our-cars-page #listings > .searchresultshead,
body.od-our-cars-page #listings > form,
body.od-our-cars-page #listings > span[style*="clear"] {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.od-our-cars-page #listings > .od-our-cars-grid {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
}

body.od-our-cars-page #listings .listingblockgrid,
body.od-our-cars-page #listings .listingblock,
body.od-our-cars-page #listings > .od-our-cars-grid > .listingblockgrid,
body.od-our-cars-page #listings > .od-our-cars-grid > .listingblock {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  grid-column: auto !important;
  grid-row: auto !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e6eaf0 !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 35px rgba(16,24,40,.08) !important;
}

@media (max-width: 980px) {
  body.od-our-cars-page #listings,
  body.od-our-cars-page #listings > .od-our-cars-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

@media (max-width: 640px) {
  body.od-our-cars-page #listings,
  body.od-our-cars-page #listings > .od-our-cars-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
}
/* ================================================================
   v10.19 — LE NOSTRE AUTO (template searchresultsall): 3 colonne
   Usa la classe reale del body: page-template-searchresultsall
   ================================================================ */

/* 1. Il contenitore delle card diventa una griglia a 3 colonne.
   Uso :has() per trovare qualsiasi elemento che contiene le card. */
body.page-template-searchresultsall #content :has(> .listingblockgrid),
body.page-template-searchresultsall #content :has(> .listingblock) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
}

/* 2. Le card diventano card uniformi */
body.page-template-searchresultsall .listingblockgrid,
body.page-template-searchresultsall .listingblock {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid #e6eaf0 !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 35px rgba(16,24,40,.08) !important;
}

/* 3. Immagine 4:3 */
body.page-template-searchresultsall .listingblockgrid .vignette,
body.page-template-searchresultsall .listingblock .vignette {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
  background: #f8fafc !important;
}
body.page-template-searchresultsall .listingblockgrid .vignette img,
body.page-template-searchresultsall .listingblock .vignette img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* 4. Corpo card */
body.page-template-searchresultsall .listingblockgrid .listingblocksection,
body.page-template-searchresultsall .listingblock .listingblocksection {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 9px !important;
  padding: 18px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* 5. Prezzo nero/verde */
body.page-template-searchresultsall .listingblockgrid p.price,
body.page-template-searchresultsall .listingblock p.price {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}
body.page-template-searchresultsall .listingblockgrid p.price *,
body.page-template-searchresultsall .listingblock p.price * {
  color: #fff !important;
}
body.page-template-searchresultsall .listingblockgrid p.price.od-price-reduced,
body.page-template-searchresultsall .listingblock p.price.od-price-reduced {
  background: #198754 !important;
}

/* 6. Bottone nero */
body.page-template-searchresultsall .listingblockgrid .btn,
body.page-template-searchresultsall .listingblockgrid a.btn-lightgray,
body.page-template-searchresultsall .listingblock .btn,
body.page-template-searchresultsall .listingblock a.btn-lightgray {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  margin-top: auto !important;
  padding: 11px 14px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}
body.page-template-searchresultsall .listingblockgrid .btn:hover,
body.page-template-searchresultsall .listingblock .btn:hover {
  background: #e11d2e !important;
}

/* 7. Compare + share in basso */
body.page-template-searchresultsall .listingblockgrid .compare,
body.page-template-searchresultsall .listingblock .compare {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 4px 0 0 !important;
  min-height: 34px !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* 8. Tablet: 2 colonne */
@media (max-width: 980px) {
  body.page-template-searchresultsall #content :has(> .listingblockgrid),
  body.page-template-searchresultsall #content :has(> .listingblock) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

/* 9. Mobile: 1 colonna */
@media (max-width: 640px) {
  body.page-template-searchresultsall #content :has(> .listingblockgrid),
  body.page-template-searchresultsall #content :has(> .listingblock) {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  body.page-template-searchresultsall .listingblockgrid .listingblocksection,
  body.page-template-searchresultsall .listingblock .listingblocksection {
    padding: 15px !important;
  }
  body.page-template-searchresultsall .listingblockgrid .vignette,
  body.page-template-searchresultsall .listingblock .vignette {
    aspect-ratio: 16 / 10 !important;
  }
  body.page-template-searchresultsall .listingblockgrid p.price,
  body.page-template-searchresultsall .listingblock p.price {
    font-size: 18px !important;
  }
}
/* ================================================================
   v10.20 — LE NOSTRE AUTO: rimuove celle vuote dalla griglia
   Nasconde gli span clear del parent + elementi vuoti che creano
   buchi tra le card. Forza il flusso normale della griglia.
   ================================================================ */

/* Flusso normale (no "dense") */
body.page-template-searchresultsall #content :has(> .listingblockgrid),
body.page-template-searchresultsall #content :has(> .listingblock) {
  grid-auto-flow: row !important;
}

/* Nasconde gli <span clear> e altri elementi vuoti che diventano celle */
body.page-template-searchresultsall #content :has(> .listingblockgrid) > span,
body.page-template-searchresultsall #content :has(> .listingblockgrid) > br,
body.page-template-searchresultsall #content :has(> .listingblockgrid) > .clear,
body.page-template-searchresultsall #content :has(> .listingblock) > span,
body.page-template-searchresultsall #content :has(> .listingblock) > br,
body.page-template-searchresultsall #content :has(> .listingblock) > .clear {
  display: none !important;
}

/* Nasconde qualsiasi div/span vuoto figlio diretto della griglia */
body.page-template-searchresultsall #content :has(> .listingblockgrid) > div:empty,
body.page-template-searchresultsall #content :has(> .listingblockgrid) > span:empty,
body.page-template-searchresultsall #content :has(> .listingblock) > div:empty,
body.page-template-searchresultsall #content :has(> .listingblock) > span:empty {
  display: none !important;
}

/* Eventuali div che contengono solo un clear span */
body.page-template-searchresultsall #content :has(> .listingblockgrid) > div:not(.listingblockgrid):not(.listingblock) > span[style*="clear"]:only-child,
body.page-template-searchresultsall #content :has(> .listingblock) > div:not(.listingblockgrid):not(.listingblock) > span[style*="clear"]:only-child {
  display: none !important;
}
/* ================================================================
   v10.22 — PAGINE STATICHE (Termini, Trattamento Dati, ecc.)
   Testo centrato, larghezza di lettura comoda, responsive.
   Si applica a tutte le pagine statiche che NON contengono listing.
   Non tocca la Home, "Le nostre auto", Ricerca.
   ================================================================ */

/* 1. Contenitore principale: display block, centrato */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 24px auto 40px !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
}

/* 2. Nascondi la sidebar (colonna sinistra) */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .four.columns,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > #leftsidebar {
  display: none !important;
}

/* 3. La colonna del contenuto diventa full-width e centrata */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .twelve.columns,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .sixteen.columns {
  display: block !important;
  width: 100% !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  float: none !important;
}

/* 4. Contenuto interno: max 860px centrato */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .twelve.columns > *,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .sixteen.columns > * {
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 5. Titoli centrati */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h1 {
  text-align: center !important;
  font-size: 32px !important;
  line-height: 1.2 !important;
  margin-top: 0 !important;
  margin-bottom: 28px !important;
}
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h2 {
  text-align: center !important;
  font-size: 23px !important;
  line-height: 1.3 !important;
  margin-top: 30px !important;
  margin-bottom: 12px !important;
}
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h3,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h4,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h5,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h6 {
  text-align: center !important;
  line-height: 1.35 !important;
  margin-top: 24px !important;
  margin-bottom: 10px !important;
}

/* 6. Paragrafi centrati */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content p {
  text-align: center !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
}

/* 7. Liste: contenuto a sinistra ma lista centrata */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content ul,
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content ol {
  width: fit-content !important;
  max-width: 100% !important;
  text-align: left !important;
  padding-left: 24px !important;
  margin-top: 8px !important;
  margin-bottom: 20px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content li {
  font-size: 16px !important;
  line-height: 1.75 !important;
  margin-bottom: 7px !important;
}

/* 8. Link e blockquote */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content a {
  overflow-wrap: anywhere !important;
}
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content blockquote {
  padding: 16px 22px !important;
  margin-top: 20px !important;
  margin-bottom: 20px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 780px !important;
  box-sizing: border-box !important;
}

/* 9. Tabelle scrollabili su mobile */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content table {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  overflow-x: auto !important;
}

/* 10. Immagini responsive */
body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content img {
  max-width: 100% !important;
  height: auto !important;
}

/* 11. Tablet */
@media (max-width: 900px) {
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .twelve.columns,
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content > .sixteen.columns {
    max-width: 100% !important;
  }
}

/* 12. Mobile */
@media (max-width: 767px) {
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content {
    margin-top: 16px !important;
    padding: 0 14px !important;
  }
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h1 {
    font-size: 26px !important;
    margin-bottom: 22px !important;
  }
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content h2 {
    font-size: 20px !important;
    margin-top: 24px !important;
  }
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content p,
  body.page:not(.home):not(.page-template-searchresultsall):not(:has(.listingblockgrid)):not(:has(.listingblock)):not(:has(#listings)) #content li {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }
}
/* ================================================================
   v10.23 — CONFRONTA + CONDIVIDI in fondo alla card
   La riga .compare contiene: [checkbox] Confronta [icona share]
   Si trova sotto il bottone "Dettagli" su TUTTE le card.
   ================================================================ */

/* Righe "compare" in fondo alla card, layout orizzontale centrato */
#listings .listingblockgrid .compare,
#listings .listingblock .compare,
body.page-template-searchresultsall .listingblockgrid .compare,
body.page-template-searchresultsall .listingblock .compare,
#od-home-inventory .od-home-car .compare {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 12px 0 0 !important;
  padding: 10px 4px 0 !important;
  min-height: 40px !important;
  box-sizing: border-box !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border-top: 1px solid #e6eaf0 !important;
  background: transparent !important;
  cursor: pointer !important;
}

/* Checkbox Confronta */
#listings .listingblockgrid .compare input[type="checkbox"],
#listings .listingblock .compare input[type="checkbox"],
body.page-template-searchresultsall .listingblockgrid .compare input[type="checkbox"],
body.page-template-searchresultsall .listingblock .compare input[type="checkbox"] {
  margin: 0 !important;
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  cursor: pointer !important;
  accent-color: #e11d2e !important;
}

/* Testo "Confronta" */
#listings .listingblockgrid .compare .comparelink,
#listings .listingblock .compare .comparelink,
body.page-template-searchresultsall .listingblockgrid .compare .comparelink,
body.page-template-searchresultsall .listingblock .compare .comparelink {
  color: #111827 !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-decoration: none !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
#listings .listingblockgrid .compare .comparelink:hover,
#listings .listingblock .compare .comparelink:hover {
  color: #e11d2e !important;
}

/* Bottone Condividi tondo a destra */
#listings .listingblockgrid .compare .od-share-card,
#listings .listingblock .compare .od-share-card,
body.page-template-searchresultsall .listingblockgrid .compare .od-share-card,
body.page-template-searchresultsall .listingblock .compare .od-share-card,
.od-share-card-inline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  flex: 0 0 34px !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  border: 1px solid #e6eaf0 !important;
  border-radius: 50% !important;
  background: #f8fafc !important;
  color: #111827 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transition: background .16s ease, box-shadow .16s ease, transform .16s ease !important;
}
#listings .listingblockgrid .compare .od-share-card:hover,
#listings .listingblock .compare .od-share-card:hover,
body.page-template-searchresultsall .listingblockgrid .compare .od-share-card:hover,
body.page-template-searchresultsall .listingblock .compare .od-share-card:hover {
  background: #fff !important;
  box-shadow: 0 4px 12px rgba(15,23,42,.12) !important;
  transform: translateY(-1px) !important;
}
#listings .listingblockgrid .compare .od-share-card svg,
#listings .listingblock .compare .od-share-card svg,
body.page-template-searchresultsall .listingblockgrid .compare .od-share-card svg,
body.page-template-searchresultsall .listingblock .compare .od-share-card svg,
.od-share-card-inline svg {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  fill: currentColor !important;
}

/* Nessun posizionamento assoluto in alto: le righe .compare sono nel flusso */
#listings .listingblockgrid .od-card-top-actions,
#listings .listingblock .od-card-top-actions,
body.page-template-searchresultsall .listingblockgrid .od-card-top-actions,
body.page-template-searchresultsall .listingblock .od-card-top-actions {
  position: static !important;
  display: contents !important;
  max-width: none !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  bottom: auto !important;
  z-index: auto !important;
}

/* Bottone "Dettagli" resta sopra, come prima */
#listings .listingblockgrid .listingblocksection > .btn,
#listings .listingblock .listingblocksection > .btn,
body.page-template-searchresultsall .listingblockgrid .listingblocksection > .btn,
body.page-template-searchresultsall .listingblock .listingblocksection > .btn {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}

/* Mobile: Confronta + share più compatti */
@media (max-width: 640px) {
  #listings .listingblockgrid .compare,
  #listings .listingblock .compare,
  body.page-template-searchresultsall .listingblockgrid .compare,
  body.page-template-searchresultsall .listingblock .compare {
    gap: 6px !important;
    min-height: 38px !important;
    padding-top: 8px !important;
    font-size: 12px !important;
  }
  #listings .listingblockgrid .compare input[type="checkbox"],
  #listings .listingblock .compare input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
  }
  #listings .listingblockgrid .compare .od-share-card,
  #listings .listingblock .compare .od-share-card,
  body.page-template-searchresultsall .listingblockgrid .compare .od-share-card,
  body.page-template-searchresultsall .listingblock .compare .od-share-card {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    flex-basis: 32px !important;
  }
}
/* ================================================================
   v10.24 — Nasconde la lista di card duplicata dopo il footer
   Il template searchresultsall del parent theme ha un secondo loop
   che fa comparire le card anche sotto #footer/#belowfooter.
   ================================================================ */

/* Le card che finiscono DOPO il footer o il belowfooter vengono nascoste */
#footer ~ .listingblockgrid,
#footer ~ .listingblock,
#belowfooter ~ .listingblockgrid,
#belowfooter ~ .listingblock,
#footer ~ .od-our-cars-card,
#belowfooter ~ .od-our-cars-card,
#footer ~ .four.columns.listingblockgrid,
#belowfooter ~ .four.columns.listingblockgrid {
  display: none !important;
}

/* Se il parent mette le card in un contenitore che viene DOPO il footer */
body.page-template-searchresultsall #content ~ .listingblockgrid,
body.page-template-searchresultsall #content ~ .listingblock,
body.page-template-searchresultsall #content ~ .od-our-cars-card {
  display: none !important;
}

/* Evita che il vecchio span clear rimasto dopo il footer crei spazio vuoto */
#footer ~ span[style*="clear"],
#belowfooter ~ span[style*="clear"] {
  display: none !important;
}

/* Nasconde eventuali duplicati di #listings generati dopo il footer */
#footer ~ #listings,
#belowfooter ~ #listings {
  display: none !important;
}
/* ================================================================
   v10.26 — PAGINA DI RICERCA: card identiche a "Le nostre auto"
   Copre tutte le classi body che WordPress/OpenDoor possono usare
   per la pagina di ricerca risultati.
   ================================================================ */

/* Griglia 3 colonne */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #content .listingblockgrid-container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  grid-auto-flow: row !important;
}

/* Elementi della griglia che occupano tutta la riga (titoli, form, ecc.) */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > h2,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > .bar,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > .clear,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > .pagination,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > .alert,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > #orderresults,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > .searchresultshead,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > form,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings > span[style*="clear"] {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Card come elemento della griglia */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  grid-column: auto !important;
  grid-row: auto !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e6eaf0 !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 35px rgba(16,24,40,.08) !important;
}

/* Immagine 4:3 */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .vignette,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .vignette {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
  background: #f8fafc !important;
}
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .vignette img,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .vignette img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* Corpo card */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .listingblocksection,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .listingblocksection {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 9px !important;
  padding: 18px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Titolo */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid h3,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock h3 {
  margin: 0 0 7px !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
  color: #111827 !important;
}
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid h3 a,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock h3 a {
  color: #111827 !important;
  text-decoration: none !important;
}

/* Prezzo nero/verde */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid p.price,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock p.price {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  margin: 0 !important;
}
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid p.price *,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock p.price * {
  color: #fff !important;
}
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid p.price.od-price-reduced,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock p.price.od-price-reduced {
  background: #198754 !important;
}

/* Bottone Dettagli nero */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .btn,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid a.btn-lightgray,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .btn,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock a.btn-lightgray {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  margin-top: auto !important;
  padding: 11px 14px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .btn:hover,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .btn:hover {
  background: #e11d2e !important;
}

/* Compare + share in fondo */
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .compare,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .compare {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 4px 0 0 !important;
  min-height: 34px !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .compare .od-share-card,
body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .compare .od-share-card {
  margin-left: auto !important;
}

/* Tablet: 2 colonne */
@media (max-width: 980px) {
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

/* Mobile: 1 colonna */
@media (max-width: 640px) {
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .listingblocksection,
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .listingblocksection {
    padding: 15px !important;
  }
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid .vignette,
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock .vignette {
    aspect-ratio: 16 / 10 !important;
  }
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblockgrid p.price,
  body:is(.search, .search-results, .page-template-searchresults, .page-template-searchresults-php, .archive) #listings .listingblock p.price {
    font-size: 18px !important;
  }
}/* ================================================================
   v10.27 — PAGINA DI RICERCA (searchresults): card identiche a Le nostre auto
   Non dipende da #listings, trova il contenitore con :has().
   ================================================================ */

/* 1. Trova il contenitore che ospita le card e lo rende una griglia 3 col */
body.page-template-searchresults #content :has(> .listingblockgrid),
body.page-template-searchresults #content :has(> .listingblock),
body.page-template-searchresults-php #content :has(> .listingblockgrid),
body.page-template-searchresults-php #content :has(> .listingblock) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  grid-auto-flow: row !important;
}

/* 2. Elementi a tutta larghezza (titoli, form, ordinamento, ecc.) */
body.page-template-searchresults #content :has(> .listingblockgrid) > h2,
body.page-template-searchresults #content :has(> .listingblockgrid) > .bar,
body.page-template-searchresults #content :has(> .listingblockgrid) > .clear,
body.page-template-searchresults #content :has(> .listingblockgrid) > .pagination,
body.page-template-searchresults #content :has(> .listingblockgrid) > .alert,
body.page-template-searchresults #content :has(> .listingblockgrid) > #orderresults,
body.page-template-searchresults #content :has(> .listingblockgrid) > .searchresultshead,
body.page-template-searchresults #content :has(> .listingblockgrid) > form,
body.page-template-searchresults #content :has(> .listingblockgrid) > span[style*="clear"],
body.page-template-searchresults-php #content :has(> .listingblockgrid) > h2,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > .bar,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > .clear,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > .pagination,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > .alert,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > #orderresults,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > .searchresultshead,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > form,
body.page-template-searchresults-php #content :has(> .listingblockgrid) > span[style*="clear"] {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* 3. Le card sono elementi uniformi */
body.page-template-searchresults #content .listingblockgrid,
body.page-template-searchresults #content .listingblock,
body.page-template-searchresults-php #content .listingblockgrid,
body.page-template-searchresults-php #content .listingblock {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  grid-column: auto !important;
  grid-row: auto !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid #e6eaf0 !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 35px rgba(16,24,40,.08) !important;
}

/* 4. Immagine 4:3 */
body.page-template-searchresults #content .listingblockgrid .vignette,
body.page-template-searchresults #content .listingblock .vignette,
body.page-template-searchresults-php #content .listingblockgrid .vignette,
body.page-template-searchresults-php #content .listingblock .vignette {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  flex: 0 0 auto !important;
  background: #f8fafc !important;
}
body.page-template-searchresults #content .listingblockgrid .vignette img,
body.page-template-searchresults #content .listingblock .vignette img,
body.page-template-searchresults-php #content .listingblockgrid .vignette img,
body.page-template-searchresults-php #content .listingblock .vignette img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* 5. Corpo card */
body.page-template-searchresults #content .listingblockgrid .listingblocksection,
body.page-template-searchresults #content .listingblock .listingblocksection,
body.page-template-searchresults-php #content .listingblockgrid .listingblocksection,
body.page-template-searchresults-php #content .listingblock .listingblocksection {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 9px !important;
  padding: 18px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* 6. Titolo */
body.page-template-searchresults #content .listingblockgrid h3,
body.page-template-searchresults #content .listingblock h3,
body.page-template-searchresults-php #content .listingblockgrid h3,
body.page-template-searchresults-php #content .listingblock h3 {
  margin: 0 0 7px !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
  color: #111827 !important;
}
body.page-template-searchresults #content .listingblockgrid h3 a,
body.page-template-searchresults #content .listingblock h3 a,
body.page-template-searchresults-php #content .listingblockgrid h3 a,
body.page-template-searchresults-php #content .listingblock h3 a {
  color: #111827 !important;
  text-decoration: none !important;
}

/* 7. Prezzo nero/verde */
body.page-template-searchresults #content .listingblockgrid p.price,
body.page-template-searchresults #content .listingblock p.price,
body.page-template-searchresults-php #content .listingblockgrid p.price,
body.page-template-searchresults-php #content .listingblock p.price {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 9px 12px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  margin: 0 !important;
}
body.page-template-searchresults #content .listingblockgrid p.price *,
body.page-template-searchresults #content .listingblock p.price *,
body.page-template-searchresults-php #content .listingblockgrid p.price *,
body.page-template-searchresults-php #content .listingblock p.price * {
  color: #fff !important;
}
body.page-template-searchresults #content .listingblockgrid p.price.od-price-reduced,
body.page-template-searchresults #content .listingblock p.price.od-price-reduced,
body.page-template-searchresults-php #content .listingblockgrid p.price.od-price-reduced,
body.page-template-searchresults-php #content .listingblock p.price.od-price-reduced {
  background: #198754 !important;
}

/* 8. Bottone Dettagli nero */
body.page-template-searchresults #content .listingblockgrid .btn,
body.page-template-searchresults #content .listingblockgrid a.btn-lightgray,
body.page-template-searchresults #content .listingblock .btn,
body.page-template-searchresults #content .listingblock a.btn-lightgray,
body.page-template-searchresults-php #content .listingblockgrid .btn,
body.page-template-searchresults-php #content .listingblockgrid a.btn-lightgray,
body.page-template-searchresults-php #content .listingblock .btn,
body.page-template-searchresults-php #content .listingblock a.btn-lightgray {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  margin-top: auto !important;
  padding: 11px 14px !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  background: #101828 !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: center !important;
}
body.page-template-searchresults #content .listingblockgrid .btn:hover,
body.page-template-searchresults #content .listingblock .btn:hover,
body.page-template-searchresults-php #content .listingblockgrid .btn:hover,
body.page-template-searchresults-php #content .listingblock .btn:hover {
  background: #e11d2e !important;
}

/* 9. Confronta + Condividi in fondo */
body.page-template-searchresults #content .listingblockgrid .compare,
body.page-template-searchresults #content .listingblock .compare,
body.page-template-searchresults-php #content .listingblockgrid .compare,
body.page-template-searchresults-php #content .listingblock .compare {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 4px 0 0 !important;
  min-height: 34px !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
body.page-template-searchresults #content .listingblockgrid .compare .od-share-card,
body.page-template-searchresults #content .listingblock .compare .od-share-card,
body.page-template-searchresults-php #content .listingblockgrid .compare .od-share-card,
body.page-template-searchresults-php #content .listingblock .compare .od-share-card {
  margin-left: auto !important;
}

/* 10. Tablet: 2 colonne */
@media (max-width: 980px) {
  body.page-template-searchresults #content :has(> .listingblockgrid),
  body.page-template-searchresults #content :has(> .listingblock),
  body.page-template-searchresults-php #content :has(> .listingblockgrid),
  body.page-template-searchresults-php #content :has(> .listingblock) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

/* 11. Mobile: 1 colonna */
@media (max-width: 640px) {
  body.page-template-searchresults #content :has(> .listingblockgrid),
  body.page-template-searchresults #content :has(> .listingblock),
  body.page-template-searchresults-php #content :has(> .listingblockgrid),
  body.page-template-searchresults-php #content :has(> .listingblock) {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
  }
  body.page-template-searchresults #content .listingblockgrid .listingblocksection,
  body.page-template-searchresults #content .listingblock .listingblocksection,
  body.page-template-searchresults-php #content .listingblockgrid .listingblocksection,
  body.page-template-searchresults-php #content .listingblock .listingblocksection {
    padding: 15px !important;
  }
  body.page-template-searchresults #content .listingblockgrid .vignette,
  body.page-template-searchresults #content .listingblock .vignette,
  body.page-template-searchresults-php #content .listingblockgrid .vignette,
  body.page-template-searchresults-php #content .listingblock .vignette {
    aspect-ratio: 16 / 10 !important;
  }
  body.page-template-searchresults #content .listingblockgrid p.price,
  body.page-template-searchresults #content .listingblock p.price,
  body.page-template-searchresults-php #content .listingblockgrid p.price,
  body.page-template-searchresults-php #content .listingblock p.price {
    font-size: 18px !important;
  }
}/* =========================================================
   v10.28 — RICERCA LIBERA RIABILITATA + VELOCIZZATA
   Override ad alta specificità di tutti i blocchi precedenti
   che nascondevano #basicsearch / .widget_search / searchform.
   Non richiede la rimozione dei blocchi v1.5/v1.6.
   ========================================================= */

/* --- Contenitori visibili --- */
html body #basicsearch,
html body #basicsearch form,
html body #basicsearch fieldset,
html body #basicsearch input,
html body #basicsearch input#s,
html body #basicsearch #searchform,
html body #basicsearch form#searchform,
html body form#searchform + #basicsearch,
html body #searchform#searchform:not(#search .accordion-inner #searchform),
html body .widget_search,
html body .widget_search form,
html body .widget_search input,
html body #header .search-form,
html body #header #searchform,
html body #header form[role="search"] {
  display: block !important;
  visibility: visible !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* --- Form come flex moderno --- */
html body #basicsearch form,
html body .widget_search form,
html body form[role="search"],
html body form.search-form,
html body #searchform#searchform:not(#search .accordion-inner #searchform) {
  display: flex !important;
  align-items: stretch !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* --- Input di testo --- */
html body #basicsearch input[type="text"],
html body #basicsearch input[type="search"],
html body #basicsearch input#s,
html body .widget_search input[type="text"],
html body .widget_search input[type="search"],
html body form[role="search"] input[type="search"],
html body form[role="search"] input[type="text"],
html body form.search-form .search-field,
html body #searchform#searchform:not(#search .accordion-inner #searchform) input#s {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
  border: 1px solid #d8dee8 !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--od-text, #111827) !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  outline: none !important;
  box-shadow: 0 1px 2px rgba(16,24,40,.04) inset !important;
  transition: border-color .16s ease, box-shadow .16s ease !important;
}
html body #basicsearch input[type="text"]:focus,
html body #basicsearch input[type="search"]:focus,
html body #basicsearch input#s:focus,
html body .widget_search input[type="search"]:focus,
html body form[role="search"] input:focus,
html body form.search-form .search-field:focus,
html body #searchform#searchform:not(#search .accordion-inner #searchform) input#s:focus {
  border-color: var(--od-accent, #e11d2e) !important;
  box-shadow: 0 0 0 4px rgba(225,29,46,.10) !important;
}

/* --- Bottone di ricerca --- */
html body #basicsearch button[type="submit"],
html body #basicsearch input[type="submit"],
html body .widget_search button[type="submit"],
html body .widget_search input[type="submit"],
html body form[role="search"] button[type="submit"],
html body form[role="search"] input[type="submit"],
html body form.search-form .search-submit,
html body #searchform#searchform:not(#search .accordion-inner #searchform) input[type="submit"] {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 46px !important;
  min-width: 96px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  box-sizing: border-box !important;
  border: 1px solid var(--od-accent, #e11d2e) !important;
  border-radius: 12px !important;
  background: var(--od-accent, #e11d2e) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-shadow: none !important;
  box-shadow: 0 7px 16px rgba(225,29,46,.16) !important;
  cursor: pointer !important;
  transition: background .16s ease, border-color .16s ease, transform .16s ease, box-shadow .16s ease !important;
}
html body #basicsearch button[type="submit"]:hover,
html body #basicsearch input[type="submit"]:hover,
html body .widget_search button[type="submit"]:hover,
html body .widget_search input[type="submit"]:hover,
html body form[role="search"] button[type="submit"]:hover,
html body form[role="search"] input[type="submit"]:hover,
html body form.search-form .search-submit:hover,
html body #searchform#searchform:not(#search .accordion-inner #searchform) input[type="submit"]:hover {
  background: var(--od-accent-dark, #b91322) !important;
  border-color: var(--od-accent-dark, #b91322) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 11px 24px rgba(225,29,46,.22) !important;
}

/* --- Feedback istantaneo durante l'invio --- */
form.od-search-submitting { opacity: .72 !important; pointer-events: none !important; }

/* --- Mobile: full width, bottone sotto --- */
@media (max-width: 640px) {
  html body #basicsearch form,
  html body .widget_search form,
  html body form[role="search"],
  html body form.search-form,
  html body #searchform#searchform:not(#search .accordion-inner #searchform) {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }
  html body #basicsearch input[type="text"],
  html body #basicsearch input[type="search"],
  html body #basicsearch input#s,
  html body .widget_search input[type="search"],
  html body form[role="search"] input,
  html body form.search-form .search-field,
  html body #searchform#searchform:not(#search .accordion-inner #searchform) input#s {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-height: 46px !important;
    font-size: 15px !important;
  }
  html body #basicsearch button[type="submit"],
  html body #basicsearch input[type="submit"],
  html body .widget_search button[type="submit"],
  html body .widget_search input[type="submit"],
  html body form[role="search"] button[type="submit"],
  html body form.search-form .search-submit,
  html body #searchform#searchform:not(#search .accordion-inner #searchform) input[type="submit"] {
    flex: 1 1 100% !important;
    width: 100% !important;
    min-height: 48px !important;
  }
}

/* --- Non toccare la ricerca avanzata del parent --- */
#search #basicsearch,
#search .widget_search { display: none !important; }/* =========================================================
   v10.29 — NASCONDE DI NUOVO LA RICERCA LIBERA + AUTO-SEARCH
   ========================================================= */

/* --- Barra di ricerca libera di nuovo nascosta --- */
html body #basicsearch,
html body #basicsearch form,
html body #basicsearch fieldset,
html body #basicsearch input,
html body #basicsearch input#s,
html body #basicsearch #searchform,
html body #basicsearch form#searchform,
html body form#searchform + #basicsearch,
html body #searchform#searchform:not(#search .accordion-inner #searchform),
html body .widget_search,
html body .widget_search form,
html body .widget_search input,
html body #header .search-form,
html body #header #searchform,
html body #header form[role="search"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  width: 0 !important;
  max-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

/* --- Feedback visivo durante la ricerca automatica --- */
#search form.od-auto-searching {
  opacity: .6 !important;
  pointer-events: none !important;
  transition: opacity .12s ease !important;
}
#search form.od-auto-searching input,
#search form.od-auto-searching select,
#search form.od-auto-searching button,
#search form.od-auto-searching .btn {
  cursor: progress !important;
}

/* --- Piccolo indicatore "Ricerca in corso…" sopra il form --- */
#search { position: relative !important; }
#search form.od-auto-searching::before {
  content: "Ricerca in corso…";
  position: absolute;
  top: -26px;
  left: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .02em;
  color: var(--od-accent, #e11d2e);
  background: #fff;
  padding: 3px 8px;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(225,29,46,.12);
  animation: odAutoSearchPulse .9s ease-in-out infinite;
  z-index: 5;
  pointer-events: none;
}
@keyframes odAutoSearchPulse {
  0%, 100% { opacity: .6; transform: translateY(0); }
  50%      { opacity: 1;  transform: translateY(-2px); }
}