:root{
    --brand:#103466; --brand-600:#0a264f; --line:#e5e7eb;
    --shadow:0 6px 22px rgba(16,24,40,.06);--accent:#F86E19;
  }
  body{background:white}

  .checkout-grid{
    display:grid; grid-template-columns:1.6fr 1fr; gap:20px; margin:16px 0 40px;
  }
  @media(max-width:1024px){ .checkout-grid{grid-template-columns:1fr} }

  .panel{
    background:#fff; border:1px solid var(--line); border-radius:14px;
    box-shadow:var(--shadow); padding:16px;
  }

  /* titoli sezioni */
  .panel h2{margin:6px 0 12px; font-size:22px; color:#0d3359}
  .section-title{font-weight:500; color:#1C1C1C; margin:18px 0 12px}

  /* input*/
  .fieldbox{
    background:#f6f8fb; border-radius:12px; padding:12px 14px;
    display:flex; flex-direction:column; gap:6px;
  }
  .fieldbox .label{
    font-weight:700; color:#103466; font-size:15px;
  }
  .fieldbox input{
    border:0; outline:none; background:transparent; font-size:16px; color:#111827;
    width:100%;
  }
  .form-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-bottom: 10px;}
  .form-grid-3{display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px}
  @media(max-width:720px){
    .form-grid,.form-grid-3{grid-template-columns:1fr}
  }

  .hint{font-size:12px; color:#6b7280}
  .divider{height:1px; background:var(--line); margin:10px 0}

  .cta-primary{
    background:#103466; color:#fff; border:0; border-radius:12px;
    height:52px; padding:0 22px; font-weight:800; cursor:pointer; width:100%;
  }
  .cta-primary:hover{background:#0a264f}
  .terms{display:flex; align-items:flex-start; gap:10px; font-size:14px; padding-top: 15px;}

  /* riepilogo */
 
.summary .hero-img{
  width:100%; border-radius:22px; display:block; object-fit:contain;
  margin:6px 0 12px; height: 250px;
}
.summary .car-title{margin:0; font-weight:900; color:#103466; font-size:24px}

.summary .tags{display:flex; gap:8px; flex-wrap:wrap; margin:10px 0 12px}
.summary .chip{
  display:inline-flex; align-items:center; gap:8px;
  background:#f2f4f8; padding:8px 12px; border-radius:12px;
  font-weight:700; font-size:14px; color:#111827;
}
.summary .chip svg{width:16px;height:16px}

.summary .pickup{color:#4b5563; font-size:16px; margin:2px 0 10px}

.summary details{margin:12px 0 12px}
.summary details > summary{
  list-style:none; cursor:pointer; color:#103466; font-weight:800;
  margin-bottom:6px;
}

h3.pagamento {
    list-style:none; cursor:pointer; color:#103466; font-weight:800;
  padding-top: 10px; margin-bottom: 0;
}
.summary details > summary::-webkit-details-marker{display:none}
.summary details ul{margin:0 ; color:#111827}
.summary .deposit{color:#4b5563; font-size:14px; margin-bottom:20px}

.summary .price-panel{
  background:#f6f8fb; border-radius:16px;
  padding:14px;
}
.summary .line{
  display:flex; justify-content:space-between; align-items:center;
  padding:8px 0; font-size:15px;
}
.summary .line + .line{border-top:1px solid #e5e7eb}
.summary .line.total{font-weight:900; font-size:20px; color:#102a4a}
.summary .note{color:#9ca3af; font-size:14px; padding:8px 2px 0}

.summary .cta-primary{margin-top:10px; width:100%; font-size: 18px;}


  /* stepper */
  .stepper{
    display:flex; gap:10px; align-items:center; margin:28px 0 16px;
    color:#103466; font-weight:700;
  }
  .stepper .dot{width:26px; height:26px; border-radius:999px; display:grid; place-items:center;
     background: var(--accent);   color:#fff; font-size:13px; font-weight:800}
  .stepper .sep{height:2px; width:40px; background:#d1d5db; border-radius:2px}
  .stepper .dot.off{ background:#FFA974; color:white}
  .stepper .dot.off a{
      text-decoration: none;
  }
  