/* Limited-time Tesla PPF + free SunTek tint promo — DRAFT 10 Nov 2026.
   Black / bronze tokens only (matches style.css). No countdown. */
.promo-popular{
  display:inline-flex;
  align-items:center;
  margin:0 0 10px;
  padding:6px 11px;
  border-radius:999px;
  background:var(--bronze,#b08d57);
  color:var(--black,#0b0b0b);
  font:700 10.5px/1 var(--sans,Inter,system-ui,sans-serif);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.promo-badge{
  display:block;
  margin:12px 0 16px;
  padding:14px 16px;
  border-radius:16px;
  background:rgba(176,141,87,.14);
  border:1px solid rgba(176,141,87,.55);
  color:var(--fg,inherit);
}
.promo-badge-label{
  display:inline-flex;
  align-items:center;
  margin:0 0 8px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(176,141,87,.55);
  background:rgba(176,141,87,.16);
  font:700 10.5px/1 var(--sans,Inter,system-ui,sans-serif);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--bronze-soft,#d8bf94);
}
html:not(.theme-dark) .promo-badge-label,
[data-bg="light"] .promo-badge-label{
  color:var(--bt,#7a5c2e);
}
.promo-badge-title{
  margin:0 0 6px;
  font:700 clamp(16px,1.8vw,20px)/1.2 var(--display,Unbounded,sans-serif);
  color:var(--fg,inherit);
  letter-spacing:-.01em;
}
.promo-badge-save{
  margin:0;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 12px;
  font:600 14px/1.3 var(--sans,Inter,system-ui,sans-serif);
}
.promo-was{
  text-decoration:line-through;
  text-decoration-thickness:1.5px;
  text-decoration-color:currentColor;
  color:var(--muted,#a59d92);
  font:700 16px/1 var(--display,Unbounded,sans-serif);
}
.promo-now{
  font:800 18px/1 var(--display,Unbounded,sans-serif);
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--bronze,#b08d57);
}
.promo-save{
  font:700 12px/1 var(--sans,Inter,system-ui,sans-serif);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--bt,var(--bronze,#b08d57));
}
.promo-badge-note{
  margin:8px 0 0;
  font:500 13px/1.45 var(--sans,Inter,system-ui,sans-serif);
  color:var(--muted,#a59d92);
}
.pblock.promo-tesla-full,
.pblock.promo-tesla-fe{
  position:relative;
}
.ptable .promo-vehicle{
  display:block;
  font-weight:600;
}
.ptable .promo-popular{
  margin:8px 0 0;
  vertical-align:middle;
}
.ptable .promo-row td:first-child,
.ptable .promo-row td:last-child{
  white-space:normal;
}
.ptable .promo-price{
  display:block;
}
.promo-badge-mini{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:baseline;
  gap:6px 8px;
  margin-top:8px;
  font:600 12px/1.35 var(--sans,Inter,system-ui,sans-serif);
  color:var(--bt,var(--bronze,#b08d57));
  white-space:normal;
  text-align:right;
}
.promo-badge-mini .promo-was{
  font-size:13px;
}
.promo-badge-mini .promo-now{
  font-size:13px;
}

/* Homepage builder: compact card badges. Hidden unless Tesla size is selected. */
.promo-popular-pk,
.pb [data-promo="tesla-ppf"]{
  display:none;
}
.pb.is-tesla-size .promo-popular-pk{
  display:inline-flex;
  margin:0 0 8px;
}
.pb.is-tesla-size [data-promo="tesla-ppf"]{
  display:block;
  margin:8px 0 0;
  padding:8px 10px;
  border-radius:12px;
}
.promo-badge-compact .promo-badge-save{
  font-size:13px;
}
.promo-badge-compact .promo-now{
  font-size:14px;
}
.promo-badge-compact .promo-badge-title{
  font-size:13px;
  margin:0 0 4px;
}
.promo-badge-compact .promo-badge-note{
  margin-top:4px;
  font-size:11.5px;
}
.pb-pk[data-pk="full"],
.pb-pk[data-pk="fe"]{
  position:relative;
}
/* Keep the compact promo visible even when card descriptions hide at mid widths */
@media (max-width:900px){
  .pb.is-tesla-size [data-promo="tesla-ppf"]{display:block}
}
@media (max-width:760px){
  .promo-badge{padding:12px 14px}
  .ptable .promo-popular{display:inline-flex;margin:8px 0 0}
}

/* Tesla owners on Google — reviews on the Tesla PPF page only. No review schema. */
.trev-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:28px 0 22px;
}
.trev-card{
  margin:0;
  padding:22px 22px 20px;
  border:1px solid var(--line);
  border-radius:var(--radius,22px);
  background:var(--card);
  display:flex;
  flex-direction:column;
  gap:12px;
}
.trev-card figcaption{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.trev-card strong{
  font:700 16px/1.2 var(--sans,Inter,system-ui,sans-serif);
  color:var(--fg,inherit);
}
.trev-stars{
  color:var(--bronze,#b08d57);
  letter-spacing:2px;
  font-size:15px;
  line-height:1;
}
.trev-meta{
  font:600 11.5px/1.4 var(--sans,Inter,system-ui,sans-serif);
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--muted,#a59d92);
}
.trev-card blockquote{
  margin:0;
  padding:0;
}
.trev-card blockquote p{
  margin:0;
  font:500 15px/1.55 var(--sans,Inter,system-ui,sans-serif);
  color:var(--fg,inherit);
}
.trev-all{margin:0}
@media (max-width:900px){
  .trev-grid{grid-template-columns:1fr;gap:14px}
}
.nowrap{white-space:nowrap}
