.quote-form-wrapper * {box-sizing: border-box;}
.quote-form-header {
    background: linear-gradient(135deg,#50493a,#3a3324);
    color:#fff;
    padding:40px 20px;
    text-align:center;
    border-bottom:5px solid #4ca89a;
}
.quote-form-header h1{font-size:2.2rem;margin-bottom:15px;}
.form-container {
    background:#fff;
    border-radius:10px;
    box-shadow:0 10px 30px rgba(80,73,58,.1);
    padding:30px;
    margin:40px auto;
    max-width:900px;
}
.form-section{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #eae7e0;}
.form-section h2{color:#4ca89a;margin-bottom:20px;font-size:1.5rem;display:flex;align-items:center;}
.form-section h2 i{margin-right:10px;}
.form-group{margin-bottom:20px;}
.form-group label{display:block;margin-bottom:8px;font-weight:600;}
.form-group input,.form-group select,.form-group textarea{
    width:100%;padding:14px;border:1px solid #ddd;border-radius:5px;font-size:16px;background:#fff;
}
.form-group select {
    appearance:none;
    background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2350493a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") no-repeat right 15px center/16px;
    padding-right:45px;
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
    border-color:#4ca89a;outline:none;box-shadow:0 0 0 2px rgba(76,168,154,0.2);
}
.radio-group,.checkbox-group{display:flex;flex-wrap:wrap;gap:15px;}
.radio-item,.checkbox-item{display:flex;align-items:center;}
.required::after{content:"*";color:#e74c3c;margin-left:4px;}
.optional{color:#888;font-style:italic;font-size:.9rem;}
.btn-submit{background:#4ca89a;color:#fff;border:none;padding:16px 40px;font-size:18px;font-weight:600;border-radius:5px;cursor:pointer;transition:.3s;margin:30px auto 10px;display:block;max-width:300px;width:100%;}
.btn-submit:hover{background:#3d8a7d;}
.denomination-comma-input {
    position: relative;
}
.denominations-preview {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}
.denom-tag {
    background: #4ca89a;
    color: white;
    padding: 5px 10px;
    border-radius: 15px;
    font-size: 14px;
    display: flex;
    align-items: center;
}
.denom-tag .remove-tag {
    margin-left: 5px;
    cursor: pointer;
    font-weight: bold;
}
.hidden {
    display: none !important;
}
.quote-success-message {
    background: #f5f9f8;
    border-left: 4px solid #4ca89a;
    padding: 20px;
    margin: 20px 0;
    text-align: center;
}
.quote-success-message h3 {
    color: #4ca89a;
    margin-bottom: 10px;
}
.quote-form-footer{background:#50493a;color:#fff;text-align:center;padding:30px 20px;margin-top:50px;}
.quote-form-footer .contact-info{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-bottom:20px;}
.quote-form-footer .contact-info a{color:#fff;text-decoration:none;display:flex;align-items:center;gap:8px;}
.quote-form-footer .contact-info a:hover{color:#4ca89a;}
@media(max-width:768px){
    .form-container{padding:20px;}
    .denom-input-group{flex-direction:column;align-items:stretch;}
    .quote-form-footer .contact-info{flex-direction:column;gap:15px;}
}