
/* =========================================================
   GET A QUOTE — POLISHED PAGE
========================================================= */
.quote-section{padding:0 0 78px;background:#f8fafc;overflow:hidden}
.quote-hero{background:linear-gradient(135deg,#06142f 0%,#0a1e45 62%,#102d63 100%);position:relative;overflow:hidden;padding:72px 0 108px;color:#fff}
.quote-hero:before,.quote-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.quote-hero:before{width:380px;height:380px;left:-210px;top:-210px;background:radial-gradient(circle,rgba(37,99,235,.28),transparent 68%)}
.quote-hero:after{width:520px;height:520px;right:-260px;top:-330px;background:radial-gradient(circle,rgba(59,130,246,.18),transparent 68%)}
.quote-hero-inner{text-align:center;position:relative;z-index:1}
.quote-label{display:inline-block;color:#5d8dff;font-size:13px;font-weight:800;letter-spacing:2px;margin-bottom:14px}
.quote-hero h1, .quote-hero h2{margin:0;color:#fff;font-size:48px;line-height:1.12;letter-spacing:-1.2px;font-weight:800}
.quote-title-line{display:block;width:62px;height:4px;border-radius:20px;background:#2f6df3;margin:20px auto 18px}
.quote-hero p{margin:0;color:#d7e1f2;font-size:17px;line-height:1.75}
.quote-content-wrap{position:relative;margin-top:-72px;z-index:2}
.quote-form-wrapper{max-width:1000px;margin:0 auto;padding:38px 42px 28px;border:1px solid #dbe4f1;border-radius:15px;background:#fff;box-shadow:0 22px 55px rgba(15,35,70,.10)}
.quote-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.form-group{margin-bottom:22px}
.form-group label{display:block;margin:0 0 9px;font-size:13px;font-weight:750;color:#102b52}
.form-group label span{color:#2563eb}.form-group label em{font-style:normal;color:#7a8798;font-weight:500}
.quote-input-wrap,.quote-textarea-wrap{position:relative}
.quote-field-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:2;color:#6c7b91;font-size:17px;pointer-events:none}
.quote-input-wrap input,.quote-input-wrap select,.quote-textarea-wrap textarea{width:100%;box-sizing:border-box;border:1px solid #ccd8e8;border-radius:8px;background:#fff;color:#233752;font-family:inherit;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.quote-input-wrap input,.quote-input-wrap select{height:48px;padding:0 14px 0 43px}
.quote-input-wrap select{appearance:auto;cursor:pointer}
.quote-textarea-wrap textarea{min-height:138px;padding:15px 16px 28px 43px;resize:vertical;line-height:1.6}
.quote-input-wrap input::placeholder,.quote-textarea-wrap textarea::placeholder{color:#8794a7}
.quote-input-wrap input:focus,.quote-input-wrap select:focus,.quote-textarea-wrap textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.09);background:#fbfdff}
.quote-label-row{display:flex;justify-content:space-between;align-items:center}
.quote-counter{font-size:11px;color:#8a97a8}
.quote-textarea-icon{top:19px;transform:none}
.quote-upload{min-height:128px;border:1.5px dashed #b8c8df;border-radius:10px;background:#fbfdff;display:flex;align-items:center;justify-content:center;gap:16px;text-align:center;transition:.2s ease;cursor:pointer}
.quote-upload:hover,.quote-upload.is-dragging{border-color:#2563eb;background:#f4f8ff}
.quote-upload-icon{font-size:34px;color:#2563eb;line-height:1}
.quote-upload strong{display:block;color:#233b61;font-size:14px;margin-bottom:7px}.quote-upload span{display:block;color:#7b889a;font-size:12px;margin-bottom:8px}.quote-upload small{display:block;color:#7b889a;font-size:11px;margin-top:5px}
.quote-file-btn{display:inline-flex!important;align-items:center;justify-content:center;padding:8px 16px!important;margin:0!important;border-radius:6px!important;background:#2563eb;color:#fff!important;font-size:12px!important;font-weight:700!important;cursor:pointer!important;width:auto!important}
.quote-hidden-file{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.quote-submit{width:100%;height:50px;padding:0 25px;border:0;border-radius:7px;background:#2563eb;color:#fff;font-size:15px;font-weight:800;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;display:flex;align-items:center;justify-content:center;gap:10px}
.quote-submit span{font-size:17px}.quote-submit:hover{background:#1d4ed8;transform:translateY(-2px);box-shadow:0 12px 26px rgba(37,99,235,.24)}
.quote-privacy{text-align:center;color:#78879a;font-size:12px;margin-top:13px}.quote-privacy span{color:#2563eb;margin-right:5px}
.quote-benefits{max-width:1000px;margin:28px auto 0;padding:20px 25px;background:#fff;border:1px solid #e0e7f0;border-radius:13px;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;box-shadow:0 10px 28px rgba(15,35,70,.05)}
.quote-benefit{display:flex;align-items:center;gap:13px;padding:7px 13px;border-right:1px solid #e4eaf2}.quote-benefit:last-child{border-right:0}.quote-benefit>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;flex:none;background:#eaf2ff;color:#2563eb;font-size:20px;font-weight:800}.quote-benefit strong{display:block;color:#0f2c54;font-size:13px;margin-bottom:4px}.quote-benefit small{display:block;color:#7c899a;font-size:11px;line-height:1.4}
@media(max-width:768px){.quote-hero{padding:58px 0 98px}.quote-hero h1, .quote-hero h2{font-size:36px}.quote-hero p{font-size:15px}.quote-desktop-break{display:none}.quote-form-wrapper{padding:28px 20px 23px}.quote-form-grid{grid-template-columns:1fr;gap:0}.quote-benefits{grid-template-columns:1fr 1fr;padding:16px}.quote-benefit{border-right:0;border-bottom:1px solid #e4eaf2;padding:12px 7px}.quote-benefit:nth-last-child(-n+2){border-bottom:0}.quote-content-wrap{margin-top:-62px}}
@media(max-width:480px){.quote-hero h1, .quote-hero h2{font-size:31px}.quote-hero p{font-size:14px}.quote-form-wrapper{border-radius:12px}.quote-benefits{grid-template-columns:1fr}.quote-benefit{border-bottom:1px solid #e4eaf2!important}.quote-benefit:last-child{border-bottom:0!important}}
