.quote-options[hidden], .quote-fieldset[hidden] { display: none; }
.quote-options { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 30px; }
.quote-option { padding: 18px 15px; text-align: left; background: #0d0d14; color: var(--text-main); border: 1px solid #38384c; border-radius: 6px; cursor: pointer; }
.quote-option strong { display: block; font-family: 'Orbitron', sans-serif; font-size: .85rem; line-height: 1.6; }
.quote-option span { display: block; margin-top: 6px; font-family: 'Rajdhani', sans-serif; font-size: 1.05rem; line-height: 1.4; color: #b6b6c4; }
.quote-option[aria-pressed="true"] { border-color: var(--neon-cyan); background: #112229; }
.quote-option:hover { border-color: var(--neon-cyan); }
.quote-option:focus-visible { outline: 2px solid var(--neon-cyan); outline-offset: 4px; }
.quote-fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.quote-fieldset legend { width: 100%; }
.quote-note { color: #c5c5d3; font-size: 1.1rem; line-height: 1.6; margin-bottom: 22px; }
.field-hint { color: #b6b6c4; font-size: 1rem; line-height: 1.4; margin-top: 8px; }
#build-budget { width: 100%; background: #0d0d14; border: 1px solid #252538; border-radius: 6px; padding: 12px 15px; color: var(--text-main); font: 500 1.1rem 'Rajdhani', sans-serif; }
#build-budget:focus { outline: 2px solid var(--neon-cyan); outline-offset: 2px; }
#quote-status { margin: 18px 0 0; }
#quote-status:empty { display: none; }
.btn-submit:disabled { opacity: .6; cursor: wait; }
@media (max-width: 480px) { .quote-options { grid-template-columns: 1fr; } .container { padding: 28px 18px; } }
