/* Quote form slideshow (js/quote-steps.js). Without JavaScript every step shows at once. */
.qs fieldset.qs-step{border:0;padding:0;margin:0 0 26px;min-width:0}
.qs-step legend{padding:0;margin:0;width:100%}
.qs-q{margin:0 0 6px;font-size:clamp(24px,3vw,32px);line-height:1.15;color:#fff;text-transform:none;letter-spacing:0}
.qs-q:focus{outline:0}
.qs-q:focus-visible{outline:3px solid var(--yellow2);outline-offset:4px;border-radius:4px}
.qs-hint{margin:0 0 16px;color:#cfd4de;font-size:16px}
.qs-step legend+.qs-cards,.qs-step legend+.field{margin-top:14px}
.qs-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:6px}
.qs-cards-ico{grid-template-columns:repeat(3,1fr)}
.qs-cards-3{grid-template-columns:repeat(3,1fr)}
.qs-card{position:relative;display:flex;align-items:center;gap:12px;min-height:64px;padding:14px 16px;background:rgba(255,255,255,.06);border:2px solid rgba(255,255,255,.18);border-radius:16px;font-size:16px;font-weight:700;line-height:1.25;cursor:pointer;transition:background .15s,border-color .15s,transform .15s,color .15s}
.qs-card:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.4);transform:translateY(-2px)}
.qs-card input{position:absolute;opacity:0;width:1px;height:1px;margin:0;padding:0;pointer-events:none}
.qs-card b{display:block;font-size:18px;font-weight:800}
.qs-card small{display:block;margin-top:3px;font-size:14px;font-weight:500;color:#cfd4de}
.qs-card svg{flex:none;width:30px;height:30px;fill:none;stroke:var(--yellow2);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.qs-cards-ico .qs-card{flex-direction:column;justify-content:center;text-align:center;min-height:118px;gap:10px}
.qs-cards-ico .qs-card svg{width:38px;height:38px}
.qs-cards-3 .qs-card{justify-content:center;text-align:center}
.qs-wide{grid-column:1/-1}
.qs-cards-ico .qs-wide{flex-direction:row;min-height:64px}
.qs-cards-ico .qs-wide svg{width:30px;height:30px}
/* Picked card: yellow with dark text (never yellow text on white) */
.qs-card:has(input:checked){background:var(--yellow2);border-color:var(--yellow2);color:var(--ink)}
.qs-card:has(input:checked) small{color:var(--ink)}
.qs-card:has(input:checked) svg{stroke:var(--ink)}
.qs-card:has(input:checked)::after{content:"";position:absolute;top:10px;right:10px;width:20px;height:20px;border-radius:50%;background:var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fbdf05' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center/13px no-repeat}
.qs-card:has(input:focus-visible){outline:3px solid var(--yellow2);outline-offset:3px}
.qs-card:has(input:checked:focus-visible){outline-color:#fff}
.qs-rush b::after{content:"";display:inline-block;width:16px;height:16px;margin-left:6px;vertical-align:-2px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2 3 14h9l-1 8 10-12h-9z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 2 3 14h9l-1 8 10-12h-9z'/%3E%3C/svg%3E") center/contain no-repeat}
.qs-extra,.qs-upload{margin-top:18px}
.qs-extra input{max-width:240px}
.qs textarea{min-height:170px}
.qs-err{color:var(--yellow);font-weight:700;font-size:15px;margin:10px 0 0}.qs-err:empty{display:none}
.qs [aria-invalid=true]{border-color:var(--yellow)}
/* Progress */
.qs-top{margin-bottom:22px}
.qs-count{margin:0 0 8px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#fff}
.qs-bar{height:8px;border-radius:99px;background:rgba(255,255,255,.16);overflow:hidden}
.qs-bar span{display:block;height:100%;width:0;border-radius:99px;background:var(--yellow2);transition:width .35s ease}
/* Back / Next */
.qs-nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.qs-nav [hidden]{display:none}
.qs-back{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.5)}
.qs-back:hover{border-color:#fff}
.qs-next,.qs-send{margin-left:auto}
.qs-back:not([hidden])+.qs-next,.qs-back[hidden]+.qs-next{margin-left:auto}
/* Summary on the last step */
.qs-sum{margin:8px 0 4px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.06)}
.qs-sum h4{margin:0 0 8px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#cfd4de}
.qs-sum dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:15px}
.qs-sum dt{color:#cfd4de}
.qs-sum dd{margin:0;display:flex;justify-content:space-between;gap:10px;font-weight:700}
.qs-edit{background:none;border:0;padding:0;font:inherit;font-size:14px;color:var(--yellow);text-decoration:underline;text-underline-offset:3px;cursor:pointer;white-space:nowrap}
/* Slide in */
.qs-on .qs-step{margin-bottom:22px}
.qs-in-fwd{animation:qsFwd .32s ease}
.qs-in-back{animation:qsBack .32s ease}
@keyframes qsFwd{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes qsBack{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.qs-card,.qs-bar span{transition:none}.qs-card:hover{transform:none}}
@media(max-width:900px){.qs-cards-ico{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.qs-cards-ico,.qs-cards-3{grid-template-columns:repeat(2,1fr)}.qs-cards{grid-template-columns:1fr}.qs-cards-3,.qs-cards-ico{grid-template-columns:repeat(2,1fr)}.qs-cards-ico .qs-card{min-height:104px}.qs-cards-ico .qs-wide{min-height:64px}.qs-sum dl{grid-template-columns:1fr}.qs-sum dt{margin-top:6px}}
