/* =====================================================================
   ROS — Carovana Map · stili del componente mappa (scoped .ros-carovana)
   Autore: tundesign.it
   ===================================================================== */
.ros-carovana{
	--rc-ink:#16140f;
	--rc-cream:#f7f4ec;
	--rc-line:#e3dccb;
	--rc-muted:#6a6656;
	--rc-soft:#3a382f;
	--rc-active:#f2ede1;
	font-family:'Archivo',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}
.ros-carovana *{box-sizing:border-box}
.ros-carovana__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;align-items:start}

.ros-carovana .ros-map svg{width:100%;height:auto;display:block}
.ros-carovana [data-ros-dot]{cursor:pointer;transition:r .12s ease}
.ros-carovana [data-ros-dot]:focus-visible{outline:3px solid #f4a300;outline-offset:2px}

.ros-carovana .ros-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:12.5px;color:var(--rc-soft)}
.ros-carovana .ros-legend span{display:flex;align-items:center;gap:6px}
.ros-carovana .ros-legend__dot{width:11px;height:11px;border-radius:50%}

.ros-carovana .ros-tappa{background:var(--rc-ink);color:var(--rc-cream);border-radius:14px;padding:20px 22px;margin-bottom:18px}
.ros-carovana .ros-tappa__head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.ros-carovana .ros-tappa__dot{width:14px;height:14px;border-radius:50%}
.ros-carovana .ros-tappa__label{font-size:13px;letter-spacing:.06em;color:#c9c4b6}
.ros-carovana .ros-tappa__city{font-family:'Anton',sans-serif;font-weight:400;font-size:28px;margin:0 0 6px;color:#fff}
.ros-carovana .ros-tappa__meta{margin:0;font-size:15px;color:#c9c4b6}
.ros-carovana .ros-tappa__meta strong{color:#fff}

.ros-carovana .ros-stops{display:flex;flex-direction:column;gap:8px}
.ros-carovana .ros-stop-row{text-align:left;display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;background:#fff;border:1.5px solid var(--rc-line);border-left:5px solid var(--rc-ink);border-radius:10px;padding:12px 16px;font-family:inherit;cursor:pointer}
.ros-carovana .ros-stop-row.is-active{background:var(--rc-active)}
.ros-carovana .ros-stop-row__city{display:block;font-weight:800;font-size:17px;color:var(--rc-ink)}
.ros-carovana .ros-stop-row__dir{font-size:13px;color:var(--rc-muted)}

.ros-carovana .ros-mapbox{margin-top:40px;border:2px dashed #b9b09a;border-radius:16px;padding:20px;background:#fff}
.ros-carovana .ros-mapbox__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.ros-carovana .ros-mapbox__head h3{font-family:'Anton',sans-serif;font-weight:400;font-size:22px;margin:0;color:var(--rc-ink)}
.ros-carovana .ros-mapbox__note-inline{font-size:13px;color:var(--rc-muted)}
.ros-carovana .ros-mapbox__frame{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--rc-line)}
.ros-carovana .ros-mapbox__frame iframe{width:100%;height:420px;border:0;display:block}
.ros-carovana .ros-mapbox__note{margin:12px 0 0;font-size:13.5px;color:var(--rc-muted);line-height:1.5}

/* Stato "tappe in arrivo" — stessa impostazione della mappa attiva, Italia sfumata */
.ros-carovana--soon .ros-carovana__grid{align-items:center}
.ros-map--soon svg{opacity:.5}
.ros-soon__panel{background:var(--rc-ink);color:var(--rc-cream);border-radius:14px;padding:30px 28px}
.ros-soon__badge{display:inline-block;font-family:'Anton',sans-serif;font-weight:400;background:#f4a300;color:#16140f;font-size:14px;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:4px;margin-bottom:18px}
.ros-soon__text{margin:0;font-size:20px;line-height:1.5;color:#fff;font-weight:600}
