.pickup-page { color-scheme:dark; }
.pickup-page .skip-link { opacity:0; }
.pickup-page .skip-link:focus { opacity:1; }
.pickup-shell { width:min(1100px,calc(100% - 3rem)); margin:0 auto; padding:clamp(2.8rem,6vw,5.5rem) 0 4rem; }
.pickup-intro { max-width:900px; }
.pickup-intro h1 { max-width:17ch; margin:.9rem 0 1.5rem; font-family:ui-serif,Georgia,serif; font-size:clamp(2.45rem,5.4vw,4.6rem); font-weight:400; letter-spacing:-.035em; line-height:1.08; text-wrap:balance; opacity:1; transform:none; animation:none; }
.pickup-lead { max-width:66ch; color:var(--muted-strong); font-size:1.05rem; line-height:1.75; }
.pickup-process { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.6rem; padding:1.8rem 0; margin:2.3rem 0 3rem; border-top:1px solid var(--line-warm); border-bottom:1px solid var(--line); }
.pickup-process li { display:flex; align-items:center; gap:1rem; min-width:0; }
.pickup-process li>span { color:var(--amber-soft); font-size:.75rem; letter-spacing:.1em; }
.pickup-process p { margin:0; color:var(--muted-strong); font-size:.9rem; line-height:1.5; }
.pickup-form-heading h2 { font-size:1.65rem; margin:0 0 .65rem; font-weight:500; }
.pickup-form-heading p { color:var(--muted); max-width:65ch; line-height:1.6; margin:0 0 1.8rem; }
.pickup-form { padding:clamp(1.3rem,3.5vw,3rem); background:var(--surface); border:1px solid var(--line-strong); border-radius:1.1rem; }
.pickup-form fieldset { min-width:0; border:0; border-top:1px solid var(--line); padding:1.6rem 0 2rem; margin:0; }
.pickup-form fieldset:first-of-type { border-top:0; }
.pickup-form legend { display:flex; align-items:center; gap:.85rem; padding:0 .8rem 0 0; font-weight:600; font-size:1.06rem; }
.pickup-form legend>span:first-child { color:var(--amber); font-weight:400; font-size:.75rem; }
.pickup-grid { display:grid; gap:1.3rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.pickup-grid--client { grid-template-columns:repeat(2,minmax(0,1fr)); }
.pickup-grid--client .pickup-field:first-child { grid-column:1/-1; }
.pickup-grid--address { grid-template-columns:.7fr 1.15fr 1.15fr; }
.pickup-grid--address .pickup-field:first-child { grid-column:1/-1; }
.pickup-grid--vehicle { grid-template-columns:repeat(3,minmax(0,1fr)); }
.pickup-field { min-width:0; position:relative; }
.pickup-field label { display:inline-block; font-size:.85rem; color:var(--muted-strong); margin-bottom:.55rem; }
.pickup-required { margin-left:.3rem; color:var(--amber-soft); font-size:.8rem; }
.pickup-page input:not([type="radio"]):not([type="hidden"]),.pickup-page select,.pickup-page textarea { display:block; width:100%; max-width:100%; min-width:0; border:1px solid var(--line-strong); border-radius:.5rem; background:var(--bg); color:var(--text); padding:.85rem .9rem; font:inherit; font-size:1rem; line-height:1.4; }
.pickup-page textarea { resize:vertical; }
.pickup-page [hidden] { display:none!important; }
.pickup-page input:focus-visible,.pickup-page select:focus-visible,.pickup-page textarea:focus-visible { outline:2px solid var(--amber); outline-offset:3px; }
.pickup-page [aria-invalid="true"] { border-color:#e6a592!important; }
.pickup-page input[type="hidden"] { display:none; }
.pickup-vehicle-field input:not([type="hidden"]) { margin-top:.5rem; }
.pickup-form fieldset>.pickup-field { margin-top:1.3rem; }
.pickup-help { color:var(--muted); font-size:.84rem; line-height:1.65; margin:0 0 1.2rem; }
#pickup-catalog-status { margin:.8rem 0 0; min-height:1.3em; }
.pickup-shipping { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-bottom:1rem; }
.pickup-choice { display:flex; align-items:flex-start; gap:.85rem; padding:1.2rem; border:1px solid var(--line-strong); border-radius:.6rem; cursor:pointer; line-height:1.6; }
.pickup-choice input { flex-shrink:0; width:1.15rem; height:1.15rem; margin:.22rem 0 0; accent-color:var(--amber); }
.pickup-choice:has(input:checked) { border-color:var(--amber); background:rgba(213,154,82,.06); }
.pickup-choice:focus-within { outline:2px solid var(--amber); outline-offset:3px; }
.pickup-submit-row { display:flex; align-items:center; justify-content:space-between; gap:2rem; border-top:1px solid var(--line); padding-top:1.8rem; }
.pickup-submit-row p { max-width:43ch; color:var(--muted); font-size:.8rem; line-height:1.7; margin:0; }
.pickup-submit-row button { flex-shrink:0; min-height:52px; font-size:.8rem; letter-spacing:.06em; padding:1rem 1.6rem; cursor:pointer; }
.pickup-submit-row button:disabled { opacity:.65; cursor:wait; }
.pickup-error { display:block; color:#e6a592; margin-top:.5rem; }
.pickup-error-summary { border:1px solid #e6a592; padding:1.3rem; margin:1rem 0 1.5rem; border-radius:.6rem; }
.pickup-error-summary a { color:var(--text); text-decoration:underline; }
.pickup-error-summary li { margin:.5rem 0; }
.pickup-confirmation { border:1px solid var(--line-warm); border-radius:1rem; padding:clamp(1.6rem,4vw,3rem); background:var(--surface); }
.pickup-confirmation h2 { margin:.6rem 0; font-size:2rem; font-weight:500; }
.pickup-confirmation p { line-height:1.7; }
.pickup-confirmation a { margin-top:1rem; }
.pickup-honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:760px) {
    .pickup-shell { width:calc(100% - 2rem); padding-top:2.5rem; }
    .pickup-process { grid-template-columns:1fr; gap:1rem; margin:1.8rem 0 2.2rem; padding:1.4rem 0; }
    .pickup-grid--vehicle,.pickup-grid--address { grid-template-columns:1fr; }
    .pickup-shipping { grid-template-columns:1fr; }
    .pickup-submit-row { flex-direction:column; align-items:stretch; gap:1.3rem; }
    .pickup-submit-row button { width:100%; white-space:normal; }
}
@media(max-width:480px) {
    .pickup-grid,.pickup-grid--client { grid-template-columns:1fr; }
    .pickup-intro h1 { font-size:clamp(2.2rem,9.5vw,2.7rem); }
    .pickup-form { padding:1.25rem 1rem; }
    .pickup-form fieldset { padding-bottom:1.6rem; }
    .pickup-choice { padding:1rem; }
}
