/* KLS public quotation — clear mobile decision controls */
.public-quote-page{min-height:100vh;padding:28px 16px;background:#eef1f5;color:#101828}
.public-quote-card{width:min(720px,100%);margin:0 auto;padding:30px;background:#fff;border:1px solid #dfe3e8;border-radius:20px;box-shadow:0 18px 50px rgba(16,24,40,.12)}
.public-quote-brand{display:flex;align-items:baseline;gap:10px;padding-bottom:18px;border-bottom:4px solid #101828}
.public-quote-brand b{font-size:38px;letter-spacing:-.06em}.public-quote-brand span{font-size:15px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.public-quote-card>small{display:block;margin-top:24px;font-size:10px;font-weight:900;letter-spacing:.14em;color:#667085}
.public-quote-card h1{margin:6px 0 8px;font-size:34px;letter-spacing:-.03em}.public-quote-intro{margin:0 0 22px;color:#475467}
.public-quote-route,.public-quote-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.public-quote-route p,.public-quote-details p,.public-quote-note{margin:0;padding:16px;border:1px solid #e4e7ec;border-radius:12px;background:#f8fafc}
.public-quote-route small,.public-quote-note small{display:block;margin-bottom:7px;font-size:9px;font-weight:900;letter-spacing:.12em;color:#667085}
.public-quote-details span,.public-quote-details b,.public-quote-details strong{display:block}.public-quote-details span{font-size:11px;color:#667085}.public-quote-details b{margin-top:5px}.public-quote-details strong{margin-top:5px;font-size:22px}
.public-quote-note{margin-top:12px;white-space:pre-wrap}
#public-quote-response{margin-top:28px;padding:22px;border:2px solid #101828;border-radius:16px;background:#fff}
.public-response-heading small{font-size:9px;font-weight:900;letter-spacing:.14em;color:#667085}.public-response-heading h2{margin:5px 0 5px;font-size:23px}.public-response-heading p{margin:0 0 18px;color:#475467}
#public-quote-response label{display:grid;gap:7px;margin-top:13px;font-size:12px;font-weight:800}
#public-quote-response input,#public-quote-response textarea{width:100%;border:1px solid #cfd5dd;border-radius:10px;padding:13px;font:inherit;background:#fff;color:#101828}
#public-quote-response textarea{min-height:82px;resize:vertical}
#public-quote-response .terms-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding:14px;border:1px solid #cfd5dd;border-radius:10px;background:#f8fafc;font-size:12px;line-height:1.5}
#public-quote-response .terms-consent input{width:18px;height:18px;margin:1px 0 0;flex:0 0 auto}
.public-quote-note a,.public-quote-card footer a,.terms-consent a{color:#174ea6;font-weight:800}
.public-quote-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-top:18px}
.public-quote-actions button{min-height:54px;border:0;border-radius:11px;padding:14px;font-size:15px;font-weight:900;cursor:pointer}
.public-quote-actions .danger{background:#fff;border:2px solid #b42318;color:#b42318}.public-quote-actions .primary{background:#101828;color:#fff}
.public-response{margin-top:26px;padding:20px;border-radius:13px}.public-response b,.public-response span{display:block}.public-response span{margin-top:5px;font-size:12px}.public-response.accepted{background:#dcfae6;color:#067647}.public-response.declined{background:#fee4e2;color:#b42318}
.public-quote-card>footer{margin-top:24px;padding-top:18px;border-top:1px solid #e4e7ec;text-align:center;font-size:12px;line-height:1.7;color:#667085}
@media(max-width:620px){.public-quote-page{padding:0;background:#fff}.public-quote-card{padding:22px 18px 28px;border:0;border-radius:0;box-shadow:none}.public-quote-route,.public-quote-details{grid-template-columns:1fr}.public-quote-card h1{font-size:28px}#public-quote-response{padding:18px 14px}.public-quote-actions{grid-template-columns:1fr}.public-quote-actions .primary{order:-1}}
