/* pages/driving.php: Guidare in Italia (chat #663, 24 Oct 2026). Reuses .guide-grid, .gd-table, .rd-cols of guide.css; here only the drawn
   sign shapes, the colour swatches and the parking lines, the checklist. */
.dv-h3 { margin: 2rem 0 .6rem; font-size: 1.25rem; }
.dv-shapes li, .dv-colors li { display: flex; gap: 1rem; align-items: flex-start; }
.dv-shapes h3, .dv-colors h3 { margin-top: 0; }
.dv-sign { flex: 0 0 64px; }
.dv-sw { flex: 0 0 56px; height: 40px; border-radius: 6px; background: var(--c); border: 1px solid rgba(0, 0, 0, .18); box-shadow: inset 0 0 0 3px rgba(255, 255, 255, .55); }
.dv-line { flex: 0 0 56px; height: 40px; border-radius: 4px; background: #5b5f63; position: relative; }
.dv-line::before, .dv-line::after { content: ""; position: absolute; top: 6px; bottom: 6px; width: 5px; background: var(--c); }
.dv-line::before { left: 10px; }
.dv-line::after { right: 10px; }
.dv-two { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 1fr); gap: 1rem 2rem; align-items: end; }
.dv-pass td small, .dv-dealers td small { color: var(--muted); }
.dv-tel { white-space: nowrap; }
.dv-check { list-style: none; margin: 1rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: .5rem 1.5rem; }
.dv-check li { position: relative; padding: .55rem .7rem .55rem 2.2rem; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); }
.dv-check li::before { content: ""; position: absolute; left: .75rem; top: .8rem; width: .55rem; height: .9rem; border: solid var(--sea); border-width: 0 3px 3px 0; transform: rotate(45deg); }
.dv-dealers tr.dv-first td { border-top: 2px solid var(--line); }
@media (max-width: 760px) {
  .dv-two { grid-template-columns: 1fr; }
  .dv-sign { flex-basis: 48px; width: 48px; height: 48px; }
  .dv-sw, .dv-line { flex-basis: 44px; height: 34px; }
  .dv-dealers thead { display: none; }
  .dv-dealers tr { display: grid; grid-template-columns: 1fr auto; padding: .45rem .2rem; border-bottom: 1px solid var(--line); }
  .dv-dealers tr.dv-first td { border-top: 0; }
  .dv-dealers tr.dv-first { border-top: 2px solid var(--line); }
  .dv-dealers td { display: block; border: 0; padding: .1rem .6rem; }
  .dv-dealers td.dv-brand { grid-column: 1 / -1; }
  .dv-dealers td.dv-brand:empty { display: none; }
  .dv-dealers td:nth-child(2) { grid-column: 1; font-weight: 600; }
  .dv-dealers td:nth-child(4) { grid-column: 2; grid-row: span 2; text-align: right; }
  .dv-dealers td:nth-child(3) { grid-column: 1; }
}
