.hlr-form{max-width:920px;margin:2rem auto;padding:clamp(1.25rem,3vw,2.5rem);border:1px solid #dbe4ee;border-radius:18px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.08);color:#172033}.hlr-form h3{margin-top:0;font-size:clamp(1.35rem,2vw,1.8rem)}.hlr-step-lead,.hlr-help{color:#536174}.hlr-progress{display:grid;grid-template-columns:repeat(5,1fr);gap:0;list-style:none;padding:0;margin:0 0 2rem;counter-reset:hlr-step}.hlr-progress li{position:relative;z-index:0;text-align:center;color:#64748b;font-size:.86rem}.hlr-progress li:not(:last-child):after{content:"";position:absolute;z-index:-1;top:18px;left:50%;width:100%;height:3px;background:#cbd5e1}.hlr-progress-number{display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0 auto .55rem;border:2px solid #cbd5e1;border-radius:50%;background:#fff;font-weight:700}.hlr-progress li.is-active{color:#0f766e}.hlr-progress li.is-active .hlr-progress-number{border-color:#0f766e;background:#0f766e;color:#fff}.hlr-progress li.is-active:not(:last-child):after{background:#0f766e}.hlr-progress li.is-current .hlr-progress-number{box-shadow:0 0 0 4px #ccfbf1}.hlr-vehicle-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.hlr-vehicle-option{display:flex;flex-direction:column;border:2px solid #dbe4ee;border-radius:14px;background:#fff;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.hlr-vehicle-option:hover{transform:translateY(-2px);border-color:#0f766e}.hlr-vehicle-option.is-selected{border-color:#0f766e;background:#f0fdfa;box-shadow:0 0 0 3px #ccfbf1}.hlr-vehicle-card{display:block;cursor:pointer;color:inherit;text-decoration:none}.hlr-vehicle-image{display:flex;align-items:center;justify-content:center;min-height:145px;background:#f8fafc}.hlr-vehicle-image img{display:block;max-width:100%;height:auto;max-height:240px;object-fit:contain}.hlr-vehicle-card-content{display:flex;flex-direction:column;gap:.45rem;padding:1rem}.hlr-vehicle-card-content strong{font-size:1.08rem}.hlr-vehicle-card-price{color:#0f766e;font-size:.91rem;font-weight:700}.hlr-vehicle-radio-label{display:flex;align-items:center;gap:.45rem;padding:.75rem 1rem;background:#f8fafc;border-top:1px solid #dbe4ee;font-weight:600;cursor:pointer}.hlr-vehicle-error{min-height:1.3em;color:#b91c1c;font-weight:600}.hlr-calendar{width:100%;max-width:680px;margin:1rem auto;border:1px solid #dbe4ee;border-radius:14px;padding:1rem;background:#fff}.hlr-calendar-navigation{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:.5rem;margin-bottom:.75rem}.hlr-calendar-navigation h4{text-align:center;margin:0;text-transform:capitalize}.hlr-calendar-nav{width:40px;height:40px;padding:0;border:1px solid #cbd5e1;border-radius:9px;background:#fff;font-size:1.6rem;line-height:1}.hlr-calendar-nav:disabled{opacity:.45}.hlr-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.35rem}.hlr-calendar-grid button,.hlr-calendar-grid span{aspect-ratio:1;display:flex;align-items:center;justify-content:center;min-width:0}.hlr-weekday{font-size:.78rem;font-weight:700;color:#64748b}.hlr-calendar-grid button{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#172033;font-weight:700}.hlr-calendar-grid button.is-available{border-color:#1d4ed8!important;background:#1d4ed8!important;color:#fff!important}.hlr-calendar-grid button.is-available:hover,.hlr-calendar-grid button.is-available:focus{border-color:#1e40af!important;background:#1e40af!important;color:#fff!important}.hlr-calendar-grid button.is-unavailable{border-color:#cbd5e1!important;background:#e2e8f0!important;color:#475569!important;text-decoration:line-through;cursor:not-allowed}.hlr-calendar-grid button.is-selected{border-color:#15803d!important;background:#15803d!important;color:#fff!important;box-shadow:inset 0 0 0 2px #fff,0 0 0 2px #15803d!important}.hlr-weekend-return{display:grid;gap:.7rem;margin:1rem 0;padding:1rem;border:1px solid #99f6e4;border-radius:10px;background:#f0fdfa}.hlr-weekend-return label,.hlr-consents label,.hlr-driver-confirm{display:flex;align-items:flex-start;gap:.55rem}.hlr-consents{display:grid;gap:.9rem;margin:1rem 0}.hlr-consents input{margin-top:.2rem}.hlr-drivers{margin:1.5rem 0;padding:1rem;border:1px solid #dbe4ee;border-radius:12px;background:#f8fafc}.hlr-driver{position:relative;margin:1rem 0;padding:1rem;border:1px solid #cbd5e1;border-radius:10px;background:#fff}.hlr-remove-driver{position:absolute;top:.5rem;right:.5rem;min-width:32px;padding:.15rem .4rem;border:0;background:transparent;color:#b91c1c;font-size:1.35rem}.hlr-form .hlr-quote{margin:1.2rem 0;padding:1rem 1.15rem;border-left:4px solid #0f766e;border-radius:7px;background:#f0fdfa}.hlr-form .hlr-quote.is-error{border-left-color:#b91c1c;background:#fef2f2;color:#991b1b}.hlr-summary{padding:1rem 1.25rem;border:1px solid #dbe4ee;border-radius:12px;background:#f8fafc}.hlr-form input:focus,.hlr-form select:focus,.hlr-form textarea:focus,.hlr-form button:focus{outline:3px solid #99f6e4;outline-offset:2px}@media(max-width:640px){.hlr-form{padding:1rem;border-radius:12px}.hlr-progress{gap:.1rem}.hlr-progress-label{font-size:.69rem;line-height:1.15}.hlr-progress li:not(:last-child):after{top:15px}.hlr-progress-number{width:30px;height:30px;margin-bottom:.3rem}.hlr-calendar{padding:.65rem}.hlr-calendar-grid{gap:.2rem}.hlr-calendar-grid button{font-size:.85rem}.hlr-grid{grid-template-columns:1fr!important}}

/* 2.3.0 - cartes interactives premium */
.hlr-vehicle-option{position:relative;cursor:pointer;box-shadow:0 8px 22px rgba(15,23,42,.05)}
.hlr-vehicle-option:focus{outline:3px solid #99f6e4;outline-offset:3px}
.hlr-vehicle-option:focus:not(:focus-visible){outline:none}
.hlr-vehicle-option::after{content:"✓";position:absolute;top:12px;right:12px;display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:#0f766e;color:#fff;font-weight:800;opacity:0;transform:scale(.7);transition:opacity .16s ease,transform .16s ease}
.hlr-vehicle-option.is-selected::after{opacity:1;transform:scale(1)}
.hlr-vehicle-option.is-selected .hlr-vehicle-radio-label{background:#ccfbf1;color:#115e59}
.hlr-vehicle-card-content strong{color:#0f172a}
.hlr-vehicle-card-price{display:inline-flex;align-items:center;gap:.35rem}
.hlr-submit{font-weight:800}

/* 2.3.1 - responsive mobile, typographie compacte et calendrier robuste */
.hlr-form{font-size:.9rem}
.hlr-form h3,.hlr-step h3{font-size:clamp(1.08rem,1.8vw,1.35rem);line-height:1.25;margin-bottom:1rem}
.hlr-step-lead,.hlr-help,.hlr-legend{font-size:.84rem;line-height:1.45}
.hlr-form label{font-size:.88rem}
.hlr-form input,.hlr-form select,.hlr-form textarea{font-size:.88rem;padding:.62rem .68rem}
.hlr-form button{font-size:.86rem;padding:.6rem .9rem;border-radius:7px}
.hlr-progress li{font-size:.75rem}
.hlr-progress-label{font-size:.72rem;line-height:1.15}
.hlr-vehicle-card-content{gap:.35rem;padding:.85rem}
.hlr-vehicle-card-content strong{font-size:.96rem;line-height:1.3}
.hlr-vehicle-card-content span,.hlr-vehicle-card-price{font-size:.81rem;line-height:1.38}
.hlr-vehicle-radio-label{font-size:.84rem;padding:.62rem .85rem}
.hlr-calendar-navigation h4{font-size:.95rem}
.hlr-calendar-status{margin:.35rem 0 .8rem;padding:.55rem .65rem;border-radius:7px;background:#f8fafc;color:#475569;font-size:.8rem;line-height:1.4;text-align:center}
.hlr-calendar-status.is-error{background:#fef2f2;color:#991b1b}
.hlr-calendar-grid button,.hlr-calendar-grid span{font-size:.82rem}

@media(max-width:700px){
  .hlr-form{width:100%;max-width:100%;margin:.75rem 0;padding:.85rem;border-radius:10px}
  .hlr-vehicle-cards{grid-template-columns:minmax(0,1fr)!important;gap:.8rem}
  .hlr-vehicle-option{width:100%;max-width:100%;min-width:0}
  .hlr-vehicle-image{min-height:118px}
  .hlr-vehicle-image img{width:100%;max-width:100%;max-height:190px;object-fit:contain}
  .hlr-vehicle-card-content{padding:.75rem .8rem}
  .hlr-vehicle-radio-label{padding:.58rem .8rem}
  .hlr-progress{grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;margin-bottom:1.35rem}
  .hlr-progress li{min-width:0;font-size:.68rem}
  .hlr-progress-number{width:28px;height:28px;font-size:.76rem}
  .hlr-progress li:not(:last-child):after{top:14px}
  .hlr-progress-label{font-size:.64rem;overflow-wrap:anywhere}
  .hlr-calendar{width:100%;max-width:none;margin:.8rem 0;padding:.55rem}
  .hlr-calendar-navigation{grid-template-columns:34px minmax(0,1fr) 34px}
  .hlr-calendar-nav{width:34px;height:34px;font-size:1.35rem}
  .hlr-calendar-grid{gap:.18rem}
  .hlr-calendar-grid button,.hlr-calendar-grid span{font-size:.76rem;min-height:0}
  .hlr-form button{font-size:.82rem}
}

@media(max-width:420px){
  .hlr-form{font-size:.84rem;padding:.7rem}
  .hlr-form h3,.hlr-step h3{font-size:1.05rem}
  .hlr-step-lead,.hlr-help,.hlr-legend{font-size:.78rem}
  .hlr-form label,.hlr-form input,.hlr-form select,.hlr-form textarea{font-size:.82rem}
  .hlr-vehicle-card-content strong{font-size:.9rem}
  .hlr-vehicle-card-content span,.hlr-vehicle-card-price{font-size:.76rem}
  .hlr-legend{gap:.55rem .75rem}
}



/* 2.3.1-r2 — correctifs de compatibilité et mise en page basée sur la largeur réelle du formulaire. */
.hlr-form .hlr-vehicle-cards{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  gap:.75rem!important;
}
.hlr-form .hlr-vehicle-option{
  flex:1 1 280px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
}
.hlr-form{
  font-size:.86rem;
}
.hlr-form h3,.hlr-step h3{
  font-size:1.05rem;
  line-height:1.25;
  margin-bottom:.9rem;
}
.hlr-step-lead,.hlr-help,.hlr-legend{
  font-size:.78rem;
  line-height:1.4;
}
.hlr-form label{
  font-size:.81rem;
}
.hlr-form input,.hlr-form select,.hlr-form textarea{
  font-size:.82rem;
  padding:.56rem .62rem;
}
.hlr-form button{
  font-size:.8rem;
  padding:.54rem .78rem;
}
.hlr-progress li,.hlr-progress-label{
  font-size:.64rem;
}
.hlr-vehicle-card-content{
  padding:.72rem .78rem;
  gap:.3rem;
}
.hlr-vehicle-card-content strong{
  font-size:.9rem;
}
.hlr-vehicle-card-content span,.hlr-vehicle-card-price{
  font-size:.75rem;
  line-height:1.35;
}
.hlr-vehicle-radio-label{
  font-size:.78rem;
  padding:.55rem .78rem;
}
.hlr-calendar-navigation h4{
  font-size:.88rem;
}
.hlr-calendar-grid button,.hlr-calendar-grid span{
  font-size:.75rem;
}
.hlr-calendar-status{
  font-size:.76rem;
}
@media(max-width:520px){
  .hlr-form .hlr-vehicle-option{
    flex-basis:100%!important;
  }
  .hlr-form{
    padding:.68rem;
  }
  .hlr-progress-number{
    width:26px;
    height:26px;
    font-size:.7rem;
  }
  .hlr-progress li:not(:last-child):after{
    top:13px;
  }
  .hlr-progress-label{
    font-size:.6rem;
  }
}


/* 2.3.1-r3 — vehicle cards: clearer list presentation + stronger selection affordance */
.hlr-vehicle-cards{
	gap:1.15rem;
}
.hlr-vehicle-option{
	position:relative;
	border:1px solid #d7e0ea;
	border-radius:16px;
	box-shadow:0 4px 14px rgba(15,23,42,.06);
	transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background-color .18s ease;
}
.hlr-vehicle-option:hover{
	transform:translateY(-3px);
	border-color:#0f766e;
	box-shadow:0 10px 24px rgba(15,118,110,.14);
}
.hlr-vehicle-option:focus-within{
	border-color:#0f766e;
	box-shadow:0 0 0 3px rgba(15,118,110,.16),0 8px 20px rgba(15,23,42,.08);
}
.hlr-vehicle-option.is-selected{
	border-color:#0f766e;
	background:#f0fdfa;
	box-shadow:0 0 0 3px rgba(15,118,110,.14),0 10px 24px rgba(15,118,110,.12);
}
.hlr-vehicle-option.is-selected::after{
	content:"✓";
	position:absolute;
	top:.65rem;
	right:.65rem;
	z-index:2;
	display:flex;
	align-items:center;
	justify-content:center;
	width:28px;
	height:28px;
	border-radius:999px;
	background:#0f766e;
	color:#fff;
	font-size:.88rem;
	font-weight:800;
	box-shadow:0 2px 8px rgba(15,23,42,.18);
}
.hlr-vehicle-card{
	display:block;
	height:100%;
	cursor:pointer;
}
.hlr-vehicle-image{
	min-height:150px;
	background:#f8fafc;
	overflow:hidden;
}
.hlr-vehicle-image img{
	width:100%;
	aspect-ratio:16/10;
	max-height:230px;
	object-fit:cover;
	transition:transform .22s ease;
}
.hlr-vehicle-option:hover .hlr-vehicle-image img{
	transform:scale(1.025);
}
.hlr-vehicle-card-content{
	display:flex;
	flex-direction:column;
	gap:.7rem;
	padding:.9rem 1rem .85rem;
}
.hlr-vehicle-title{
	display:block;
	padding-right:2rem;
	font-size:1rem!important;
	line-height:1.3;
	color:#0f172a;
}
.hlr-vehicle-details{
	display:flex;
	flex-direction:column;
	border-top:1px solid #e8edf3;
}
.hlr-vehicle-detail{
	display:grid;
	grid-template-columns:minmax(105px,.8fr) minmax(0,1.35fr);
	gap:.65rem;
	align-items:start;
	padding:.58rem 0;
	border-bottom:1px solid #edf2f7;
	font-size:.82rem;
	line-height:1.42;
	color:#334155;
}
.hlr-vehicle-detail:last-child{
	border-bottom:0;
	padding-bottom:.15rem;
}
.hlr-detail-label{
	font-weight:700;
	color:#0f172a;
}
.hlr-vehicle-radio-label{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:.55rem;
	margin:.2rem .9rem .9rem;
	padding:.7rem .85rem;
	border:1px solid #0f766e;
	border-radius:10px;
	background:#0f766e;
	color:#fff;
	font-size:.82rem;
	font-weight:700;
	line-height:1.2;
	cursor:pointer;
	transition:background-color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.hlr-vehicle-radio-label:hover{
	background:#115e59;
	border-color:#115e59;
	box-shadow:0 5px 12px rgba(15,118,110,.18);
}
.hlr-vehicle-radio-label:active{
	transform:translateY(1px);
}
.hlr-vehicle-radio{
	width:16px;
	height:16px;
	margin:0;
	accent-color:#0f766e;
	background:#fff;
}
.hlr-vehicle-option.is-selected .hlr-vehicle-radio-label{
	background:#0f172a;
	border-color:#0f172a;
}
.hlr-vehicle-option.is-selected .hlr-vehicle-radio-text::before{
	content:"Sélectionné · ";
}
@media (max-width:520px){
	.hlr-vehicle-detail{
		grid-template-columns:1fr;
		gap:.18rem;
		padding:.52rem 0;
	}
	.hlr-vehicle-image{
		min-height:125px;
	}
	.hlr-vehicle-card-content{
		padding:.8rem .85rem;
	}
	.hlr-vehicle-radio-label{
		margin:.15rem .8rem .8rem;
	}
}


/* 2.3.1-r4 — UI professionnelle harmonisée avec le formulaire de contact */
.hlr-form{
	box-sizing:border-box;
	width:100%;
	max-width:860px;
	margin:1.25rem 0;
	padding:1.15rem;
	border:1px solid #d9e2ec;
	border-radius:18px;
	background:#fff;
	box-shadow:0 12px 34px rgba(23,50,77,.08);
	color:#17324d;
	font-size:.79rem;
	line-height:1.45;
}
.hlr-form *,
.hlr-form *::before,
.hlr-form *::after{box-sizing:border-box}
.hlr-form h3,.hlr-step h3{
	margin:0 0 .7rem;
	color:#0f3152;
	font-size:.98rem;
	line-height:1.25;
	font-weight:700;
}
.hlr-form h4,.hlr-step h4{
	margin:0 0 .65rem;
	color:#12324f;
	font-size:.86rem;
	line-height:1.3;
	font-weight:700;
}
.hlr-step-lead,.hlr-help,.hlr-legend,.hlr-form p{
	font-size:.75rem;
}
.hlr-step-lead{margin:.2rem 0 .85rem;color:#5d7288}
.hlr-form label{
	display:inline-flex;
	align-items:center;
	gap:.25rem;
	margin:0 0 .32rem;
	color:#12324f;
	font-size:.75rem;
	font-weight:700;
	line-height:1.3;
}
.hlr-form .hlr-grid > p,
.hlr-form .hlr-contact-panel > p{margin:0}
.hlr-form .hlr-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:.72rem .9rem;
	align-items:start;
}
.hlr-form .hlr-grid-full{grid-column:1/-1}
.hlr-form input:not([type="checkbox"]):not([type="radio"]),
.hlr-form select,
.hlr-form textarea{
	display:block;
	width:100%;
	min-height:2.45rem;
	margin:0;
	padding:.58rem .68rem;
	border:1px solid #cfd9e3;
	border-radius:10px;
	background:#fff;
	color:#17324d;
	font-family:inherit;
	font-size:.78rem;
	line-height:1.4;
	transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.hlr-form textarea{min-height:6.2rem;resize:vertical}
.hlr-form input::placeholder,.hlr-form textarea::placeholder{color:#8294a8;opacity:1}
.hlr-form input:not([type="checkbox"]):not([type="radio"]):hover,
.hlr-form select:hover,.hlr-form textarea:hover{border-color:#b9c7d6}
.hlr-form input:not([type="checkbox"]):not([type="radio"]):focus,
.hlr-form select:focus,.hlr-form textarea:focus{
	outline:none;
	border-color:#1f6fb2;
	box-shadow:0 0 0 3px rgba(31,111,178,.13);
}
.hlr-form button{
	min-height:2.35rem;
	padding:.55rem .82rem;
	border:1px solid #1f6fb2;
	border-radius:10px;
	background:#1f6fb2;
	color:#fff;
	font-family:inherit;
	font-size:.76rem;
	font-weight:700;
	line-height:1.2;
	cursor:pointer;
	transition:transform .15s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease;
}
.hlr-form button:hover,.hlr-form button:focus{
	background:#155a93;
	border-color:#155a93;
	box-shadow:0 8px 20px rgba(31,111,178,.15);
}
.hlr-form button:focus{outline:none}
.hlr-form button:active{transform:translateY(1px)}
.hlr-form button[disabled]{opacity:.58;cursor:not-allowed;box-shadow:none}
.hlr-form .hlr-prev{
	background:#fff;
	color:#1f6fb2;
}
.hlr-form .hlr-prev:hover,.hlr-form .hlr-prev:focus{
	background:#eef6fd;
	color:#155a93;
}
.hlr-progress{margin-bottom:1.05rem}
.hlr-progress-number{background:#eef6fd;color:#155a93;border-color:#c9d9e8}
.hlr-progress li.is-active .hlr-progress-number,
.hlr-progress li.is-current .hlr-progress-number{background:#1f6fb2;color:#fff;border-color:#1f6fb2}
.hlr-progress-label{font-size:.59rem;color:#64748b}
.hlr-progress li.is-current .hlr-progress-label{color:#12324f;font-weight:700}

/* Cartes véhicule et boutons de sélection : radio natif conservé pour l'accessibilité mais masqué visuellement. */
.hlr-vehicle-radio{
	position:absolute!important;
	width:1px!important;
	height:1px!important;
	padding:0!important;
	margin:-1px!important;
	overflow:hidden!important;
	clip:rect(0,0,0,0)!important;
	clip-path:inset(50%)!important;
	white-space:nowrap!important;
	border:0!important;
}
.hlr-vehicle-radio-label{
	display:flex!important;
	width:calc(100% - 1.4rem);
	margin:.15rem .7rem .75rem!important;
	padding:.56rem .75rem!important;
	justify-content:center;
	align-items:center;
	border:1px solid #1f6fb2!important;
	border-radius:10px!important;
	background:#1f6fb2!important;
	color:#fff!important;
	font-size:.75rem!important;
	font-weight:700!important;
	line-height:1.2;
	text-align:center;
	cursor:pointer;
	box-shadow:0 5px 14px rgba(31,111,178,.14);
	transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.hlr-vehicle-radio-label:hover,
.hlr-vehicle-radio-label:focus-within{
	background:#155a93!important;
	border-color:#155a93!important;
	box-shadow:0 8px 20px rgba(31,111,178,.2);
	transform:translateY(-1px);
}
.hlr-vehicle-option.is-selected{
	border-color:#1f6fb2!important;
	background:#f8fbff!important;
	box-shadow:0 0 0 3px rgba(31,111,178,.13),0 10px 24px rgba(31,111,178,.11)!important;
}
.hlr-vehicle-option.is-selected::after{background:#1f6fb2!important}
.hlr-vehicle-option.is-selected .hlr-vehicle-radio-label{
	background:#155a93!important;
	border-color:#155a93!important;
	color:#fff!important;
}
.hlr-vehicle-title{color:#0f3152!important;font-size:.86rem!important}
.hlr-vehicle-detail{font-size:.72rem!important}
.hlr-detail-label{font-size:.68rem!important;color:#5d7288!important}

/* Coordonnées */
.hlr-contact-panel{
	margin:0 0 .85rem;
	padding:.82rem;
	border:1px solid #d9e2ec;
	border-radius:12px;
	background:#f8fbff;
}
.hlr-contact-panel--optional{background:#fff}
.hlr-contact-panel .hlr-profile-fields[hidden]{display:none!important}
.hlr-profile-fields{margin-top:.7rem;padding-top:.7rem;border-top:1px solid #e3ebf2}
.hlr-field-help{
	display:block;
	margin:.3rem 0 0;
	color:#64748b;
	font-size:.67rem;
	font-weight:400;
	line-height:1.35;
}
.hlr-drivers{
	margin:0 0 .9rem!important;
	padding:.82rem!important;
	border:1px solid #d9e2ec!important;
	border-radius:12px!important;
	background:#f8fbff!important;
}
.hlr-driver{
	margin:.65rem 0!important;
	padding:.75rem!important;
	border:1px solid #d9e2ec!important;
	border-radius:10px!important;
	box-shadow:none!important;
}
.hlr-driver legend{padding:0 .3rem;color:#12324f;font-size:.75rem;font-weight:700}
.hlr-driver-confirm{font-weight:500!important}
.hlr-consents label{font-size:.73rem;font-weight:500}
.hlr-consents input[type="checkbox"],
.hlr-driver-confirm input[type="checkbox"]{accent-color:#1f6fb2}
.hlr-summary,.hlr-quote,.hlr-terms{
	font-size:.74rem;
	line-height:1.45;
}
.hlr-calendar{border-color:#d9e2ec;border-radius:12px}
.hlr-calendar-navigation h4{font-size:.8rem}
.hlr-calendar-grid button,.hlr-calendar-grid span{font-size:.7rem}
.hlr-calendar-grid button.is-selected{background:#1f6fb2!important;border-color:#1f6fb2!important;color:#fff!important}

@media(max-width:640px){
	.hlr-form{margin:.7rem 0;padding:.82rem;border-radius:14px}
	.hlr-form .hlr-grid{grid-template-columns:1fr;gap:.62rem}
	.hlr-form .hlr-grid-full{grid-column:1}
	.hlr-contact-panel{padding:.72rem}
	.hlr-progress-label{font-size:.54rem}
	.hlr-form h3,.hlr-step h3{font-size:.92rem}
	.hlr-form h4,.hlr-step h4{font-size:.82rem}
	.hlr-step-lead,.hlr-help,.hlr-legend,.hlr-form p{font-size:.72rem}
	.hlr-form label{font-size:.72rem}
	.hlr-form input:not([type="checkbox"]):not([type="radio"]),
	.hlr-form select,.hlr-form textarea{font-size:.76rem;min-height:2.35rem;padding:.54rem .62rem}
	.hlr-form button,.hlr-vehicle-radio-label{font-size:.73rem!important}
}


/* r5 - Vehicle card layout: image above title */
.hlr-vehicle-option{
    display:flex;
    flex-direction:column;
}
.hlr-vehicle-card{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:.7rem !important;
    padding:0 !important;
    overflow:hidden !important;
    min-height:100%;
}
.hlr-vehicle-image{
    display:block !important;
    width:100% !important;
    aspect-ratio:16/9 !important;
    overflow:hidden !important;
    background:#eef4fa !important;
    border-radius:16px 16px 0 0 !important;
    margin:0 !important;
    line-height:0 !important;
}
.hlr-vehicle-image img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}
.hlr-vehicle-card-content{
    display:flex !important;
    flex-direction:column !important;
    gap:.6rem !important;
    width:100% !important;
    padding:0 .95rem .15rem !important;
}
.hlr-vehicle-title{
    display:block !important;
    width:100% !important;
    margin:0 !important;
}
.hlr-vehicle-details{
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    width:100% !important;
}
.hlr-vehicle-detail{
    display:grid !important;
    grid-template-columns:minmax(0, 1.1fr) minmax(0, .95fr) !important;
    align-items:start !important;
    gap:.7rem !important;
    width:100% !important;
    padding:.48rem 0 !important;
    border-top:1px solid #e6edf5 !important;
}
.hlr-vehicle-detail > span:last-child{
    text-align:left !important;
}
@media (max-width: 640px){
    .hlr-vehicle-detail{
        grid-template-columns:1fr !important;
        gap:.15rem !important;
    }
}


/* r6 - Align consent checkboxes and labels on the same line */
.hlr-consents{
    display:grid !important;
    gap:.8rem !important;
    margin-top:.95rem !important;
}
.hlr-consents label{
    display:grid !important;
    grid-template-columns:1.15rem minmax(0,1fr) !important;
    align-items:start !important;
    column-gap:.75rem !important;
    row-gap:0 !important;
    width:100% !important;
    margin:0 !important;
    cursor:pointer !important;
}
.hlr-consents input[type="checkbox"]{
    width:1rem !important;
    height:1rem !important;
    margin:.12rem 0 0 0 !important;
    align-self:start !important;
    justify-self:start !important;
}
.hlr-consents label > span{
    display:block !important;
    margin:0 !important;
    line-height:1.45 !important;
}
.hlr-consents label a{
    display:inline !important;
    line-height:inherit !important;
    word-break:break-word;
}
@media (max-width:640px){
    .hlr-consents label{
        column-gap:.6rem !important;
        grid-template-columns:1rem minmax(0,1fr) !important;
    }
}
