.btn--block{display:flex;width:100%;min-width:0}
.field textarea{min-height:112px;resize:vertical}
.field{margin:0 0 24px;min-width:0}
.field label{display:block;font:500 12px/1.4 var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 4px}
.field__req{text-transform:none;letter-spacing:.02em;font-family:var(--font-body);font-weight:400}
.field__msg{margin:8px 0 0;font-size:14px;line-height:1.4;color:var(--danger);min-height:0}
.field__msg:empty{margin:0}
.field [aria-invalid]{border-color:var(--danger)}
.field.is-invalid label{color:var(--danger)}
.field.is-invalid input:focus-visible,.field.is-invalid select:focus-visible,.field.is-invalid textarea:focus-visible{border-color:var(--danger);box-shadow:0 1px 0 var(--danger)}
.reserve__layout{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}
@media (min-width:1024px){.reserve__layout{gap:64px}}
.reserve__layout:has(#reserve-thanks:not([hidden])){grid-template-columns:minmax(0,760px)}
.reserve__layout:has(#reserve-fallback:not([hidden])) .form__step .form__actions,.reserve__layout:has(#reserve-fallback:not([hidden])) .form__note,.reserve__layout:has(#reserve-fallback:not([hidden])) .contact{display:none}
.contact__item--text{font-size:15px;line-height:1.5;color:var(--muted)}
.contact__item--text a{color:var(--text);text-decoration:underline;text-decoration-color:var(--line-strong);text-decoration-thickness:1px;text-underline-offset:6px}
.reserve__layout:has(#reserve-thanks:not([hidden])) .contact{display:none}
.form{display:block}
.form__step{display:grid;grid-template-columns:1fr;gap:0 32px;min-width:0;margin:0 0 8px;padding:0;border:0}
.form__legend{float:left;grid-column:1 / -1;width:100%;padding:0;margin:0 0 24px;font:300 var(--fs-h3)/1.15 var(--font-display);color:var(--text)}
.form__legend em{color:var(--gold)}
.form__legend:focus{outline:none}
.form--steps .form__step.is-active{animation:step-in .35s var(--ease) both}
.form__nav{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}
.form__nav .btn{flex:1 1 160px}
.form__nav .btn--gold{flex-grow:2}
.form--steps .form__step[data-step="3"] .form__nav{margin-top:16px}
.steps{display:flex;list-style:none;margin:0 0 24px;padding:0;counter-reset:s}
.steps__item{flex:1;position:relative;min-width:0}
.steps__item+.steps__item::before{content:"";position:absolute;top:16px;right:calc(50% + 24px);left:calc(-50% + 24px);height:1px;background:var(--line-strong);transition:background .3s}
.steps__item.is-done+.steps__item::before,.steps__item.is-done::before{background:var(--gold-line)}
.steps__btn{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;color:var(--muted);font:500 12px/1.3 var(--font-label);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.steps__num{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line-strong);border-radius:50%;font:400 15px/1 var(--font-body);letter-spacing:0;color:var(--text);transition:var(--d-micro) var(--ease);transition-property:background,border-color,color}
.steps__btn[aria-current] {color:var(--text)}
.steps__btn[aria-current] .steps__num{border-color:var(--gold);box-shadow:0 0 0 4px var(--gold-dim)}
.is-done .steps__num{background:transparent;border-color:var(--gold-line);color:var(--gold)}
.field.is-enhanced select{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.field.is-enhanced{position:relative}
.picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:8px;margin:8px 0 0}
.pick{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:64px;padding:12px 40px 12px 16px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font:inherit;font-size:16px;line-height:1.3;text-align:left;cursor:pointer;transition:var(--d-micro) var(--ease);transition-property:border-color,background,transform,box-shadow}
.pick:hover{border-color:var(--gold-line)}
.pick:active{transform:scale(.97)}
.pick__hint{color:var(--muted);font-size:13px}
.pick[aria-pressed="true"]{border-color:var(--gold-line);background:#f3eee514;box-shadow:inset 0 0 0 1px var(--gold-line)}
.pick[aria-pressed="true"]::after{content:"";position:absolute;top:12px;right:12px;width:20px;height:20px;border-radius:50%;background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%230a0908' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat;animation:pop .25s var(--ease)}
.picks--pills{display:flex;flex-wrap:wrap;gap:8px}
.picks--pills .pick{min-height:44px;padding:8px 28px;border-radius:999px;font-size:15px}
.picks--pills .pick[aria-pressed="true"]{padding-left:16px;padding-right:40px}
.picks--pills .pick[aria-pressed="true"]::after{top:50%;margin-top:-10px}
.picks--cars{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:2px 2px 8px;margin-inline:-2px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}
.pick--car{flex:0 0 min(42%,168px);justify-content:flex-start;min-height:0;padding:0 0 8px;overflow:hidden;scroll-snap-align:start;font-size:14px}
.pick--car img{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;margin:0 0 8px;background:var(--surface)}
.pick--car .pick__label,.pick--car .pick__hint{padding:0 8px}
.pick--car:not(:has(img)){justify-content:center;padding:16px 8px;min-height:120px}
.pick--car[hidden]{display:none}
.picks__find{margin:0 0 8px;max-width:360px}
.picks--views{margin:8px 0 16px}
.picks--views .pick{min-height:44px;padding:8px 16px;font-size:14px}
.picks--views .pick[aria-pressed="true"]{padding-right:14px}
.picks--views .pick[aria-pressed="true"]::after{display:none}
.picks__chosen{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;color:var(--muted);font-size:14px}
.picks__alts{margin:8px 0 0;font-size:14px;color:var(--muted)}
.picks__alts .chip--switch{margin:4px 8px 0 0}
.form__note--licence{margin:4px 0 16px}
@media (hover:hover) and (min-width:768px){.picks--cars{-webkit-mask-image:none;mask-image:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-auto-rows:212px;max-height:540px;overflow:hidden auto;scroll-snap-type:y proximity;padding-right:8px;-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 32px),transparent)}.pick--car{scroll-snap-align:start}}
.stepper{display:flex;align-items:center;gap:12px}
.stepper input{text-align:center;flex:0 1 96px;-moz-appearance:textfield;font-variant-numeric:tabular-nums}
.stepper input::placeholder{color:#b3aa9b99}
.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{appearance:none;margin:0}
.stepper__btn{flex:0 0 44px;height:44px;border:1px solid var(--line-strong);border-radius:50%;background:none;color:var(--text);font:300 22px/1 var(--font-body);cursor:pointer;transition:border-color var(--d-micro),transform .12s}
.stepper__btn:hover{border-color:var(--gold)}
.stepper__btn:active{transform:scale(.92)}
.form .review{grid-column:1 / -1;position:relative;margin:8px 0 24px;padding:16px 24px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface)}
.review__title{margin:0 0 8px;font:500 12px/1.4 var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.review__list{display:grid;grid-template-columns:auto 1fr;gap:8px 16px;margin:0;font-size:15px}
.review__list dt{color:var(--muted)}
.review__list dd{margin:0;color:var(--text)}
.review__edit{position:absolute;top:4px;right:16px;padding:12px 0;border:0;background:none;color:var(--gold);font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
.estimate{grid-column:1 / -1;margin:0 0 24px;padding:16px 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}
.estimate__line{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .4em;margin:0 0 4px;color:var(--muted);font-size:14px}
.estimate__figure{font:300 32px/1.1 var(--font-display);color:var(--text);font-variant-numeric:tabular-nums}
.estimate__note{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
.form__error{margin:0 0 16px;padding:12px 16px;border:1px solid #d9776a80;border-radius:var(--r-sm);background:#d9776a14;color:var(--danger);font-size:14px}
.form__actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 16px}
.form__actions .btn{flex:1 1 220px;overflow-wrap:anywhere}
@media (max-width:359.98px){.form__actions .btn{flex:1 1 100%}}
.form__note{font-size:var(--fs-0);color:var(--muted);margin:0}
.form__thanks,.form__fallback{padding:24px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface)}
.form__thanks-title,.form__fallback-title{font-size:var(--fs-h2);text-wrap:balance}
.form__thanks p,.form__fallback p{color:var(--muted)}
.form__thanks .form__actions,.form__fallback .form__actions{margin-bottom:0}
@media (min-width:768px){.form__thanks,.form__fallback{padding:40px}}
.contact{padding:24px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface)}
.contact__title{margin:0 0 16px}
.contact__list{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:8px}
.contact__list .btn{overflow-wrap:anywhere;padding-inline:16px;font-size:12px}
.contact__social{display:flex;flex-wrap:wrap;gap:8px 16px;list-style:none;padding:0;margin:0 0 16px}
.contact__social a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;color:var(--gold);font-weight:500;font-size:14px;text-decoration:none}
.contact__area,.contact__note{font-size:14px;color:var(--muted);margin:0}
.contact__note{margin-top:8px;color:var(--text)}
@media (min-width:768px){.form__step{grid-template-columns:repeat(2,minmax(0,1fr))}.field--full,.form__actions,.form__note,.form__error,.estimate,.form .review{grid-column:1 / -1}}
@media (min-width:1024px){.reserve__layout{grid-template-columns:minmax(0,1fr) 340px}.contact{position:sticky;top:calc(var(--header-h-min) + 24px)}}
@media (min-width:1280px){.reserve__layout{grid-template-columns:minmax(0,1fr) 380px}}
@media (hover:hover){.contact__social a:hover{text-decoration:underline}}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
@media (prefers-reduced-motion:reduce){.form--steps .form__step.is-active,.pick[aria-pressed="true"]::after{animation:none}}
@media (max-width:639.98px){.form__nav{flex-direction:column-reverse}.form__nav .btn{flex:none;white-space:nowrap}}
.field__msg--note{color:var(--muted)}
::-webkit-datetime-edit-day-field:focus,::-webkit-datetime-edit-month-field:focus,::-webkit-datetime-edit-year-field:focus,::-webkit-datetime-edit-hour-field:focus,::-webkit-datetime-edit-minute-field:focus,::-webkit-datetime-edit-ampm-field:focus{background:var(--gold);color:#0a0908}
.picks--cars{align-items:flex-start}
