/* Local forms using the existing Porto type, colour and button styles. */
.cr-order-section { padding:42px; background:#fff; border:1px solid #e8eaee; border-radius:5px; box-shadow:0 12px 34px rgba(22,33,59,.055); scroll-margin-top:115px; }
.cr-order-heading { text-align:center; margin-bottom:30px; }
.cr-eyebrow { display:block; color:#777e89; font-size:11px; font-weight:600; letter-spacing:1.6px; margin-bottom:8px; }
.cr-order-heading h2 { font-size:30px; line-height:1.3; font-weight:700; color:#212529; margin:0 0 13px; }
.cr-heading-line { width:42px; height:3px; background:#ed2323; margin:0 auto 17px; }
.cr-order-heading p { margin:0; font-size:14px; color:#666d77; text-align:center !important; }
.cr-form-field { margin-bottom:23px; }
.cr-mail-form label,.cr-service-options legend { display:block; margin-bottom:9px; color:#30353b; font-size:13px; font-weight:600; line-height:1.6; }
.cr-mail-form label > span[aria-hidden],.cr-service-options legend > span { color:#ed2323; }
.cr-order-section .cr-mail-form .form-control { width:100%; min-width:0; min-height:48px; height:48px; padding:11px 14px; border:1px solid #e2e5e9; border-radius:3px; background:#f5f6f8; color:#30353b; font:inherit; font-size:14px; line-height:1.65; box-shadow:none; }
.cr-mail-form textarea.form-control { min-height:135px; height:auto; resize:vertical; }
.cr-mail-form .form-control:focus { border-color:#ed2323; background:#fff; box-shadow:0 0 0 3px rgba(237,35,35,.08); outline:0; }
.cr-mail-form .form-control::placeholder { color:#9399a1; opacity:1; }
.cr-mail-form .cr-optional { color:#777; font-size:12px; font-weight:400; }
.cr-service-options { margin:2px 0 27px; padding:0; border:0; min-width:0; }
.cr-service-options legend { float:none; width:auto; font-size:14px; margin-bottom:12px; }
.cr-mail-form .cr-service-option { display:flex; gap:11px; align-items:flex-start; margin:0; padding:13px 12px; border:1px solid #e5e7eb; border-bottom:0; font-size:13px; font-weight:400; line-height:1.75; cursor:pointer; transition:background .15s; }
.cr-mail-form .cr-service-option:last-child { border-bottom:1px solid #e5e7eb; }
.cr-service-option:hover,.cr-service-option:focus-within { background:#f6f7f9; }
.cr-service-option:has(input:checked) { background:#fff7f7; border-left:3px solid #ed2323; padding-left:10px; }
.cr-service-option input { margin:5px 0 0; flex:0 0 17px; width:17px; height:17px; accent-color:#ed2323; }
.cr-service-option span { min-width:0; }
.cr-upload-field { display:flex; align-items:center; gap:12px; padding:17px; border:1px dashed #cdd2d9; border-radius:3px; background:#fafbfc; }
.cr-upload-field > i { color:#ed2323; font-size:20px; }
.cr-upload-field input { max-width:100%; min-width:0; font-size:13px; color:#626975; }
.cr-upload-field input::file-selector-button { border:0; border-radius:3px; color:#ed2323; background:#fff; padding:8px 12px; margin-right:10px; font:inherit; cursor:pointer; }
.cr-field-hint { display:block; margin:8px 0 0; color:#767d87; font-size:12px; line-height:1.7; }
.cr-order-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.cr-sum-field { width:190px; max-width:100%; }
.cr-submit-order { display:block; width:100%; padding:17px 26px; margin-top:0; font-size:15px; line-height:1.5; }
.cr-submit-order i { margin-left:10px; font-size:12px; }
.cr-form-trap { display:none !important; }
.cr-form-errors { margin:0 0 26px; padding:18px 20px; background:#fff4f4; border-left:3px solid #ed2323; color:#9e2020; }
.cr-form-errors:focus { outline:2px solid #ed2323; outline-offset:3px; }
.cr-form-errors ul { padding-left:19px; }
.cr-form-errors li { overflow-wrap:anywhere; }
.cr-home-order { padding:70px 0; background:#f5f6f8; }
.cr-home-order .cr-order-section { max-width:1040px; margin:0 auto; }
.cr-contact-top { margin-bottom:35px; }
.cr-contact-top h2 { font-size:22px; line-height:1.5; margin-bottom:15px; }
.cr-contact-details { padding:29px 25px; background:#f5f6f8; border-top:3px solid #ed2323; border-radius:3px; }
.cr-contact-details h2,.cr-contact-details h3 { margin-top:0; font-size:19px; line-height:1.5; }
.cr-contact-details p { font-size:13px; line-height:1.9; }
.cr-contact-details .cr-detail-group + .cr-detail-group { border-top:1px solid #e0e3e8; padding-top:24px; margin-top:24px; }
.cr-contact-after { margin-top:48px; }
.cr-contact-after h2 { font-size:24px; }
.cr-map-frame { border:1px solid #e4e7eb; border-radius:4px; overflow:hidden; margin:23px 0 35px; }
.cr-map-frame iframe { display:block; width:100%; height:360px; border:0; }
.cr-thank-you { max-width:760px; margin:0 auto; text-align:center; }
.cr-thank-icon { display:flex; align-items:center; justify-content:center; width:66px; height:66px; margin:0 auto 26px; border:2px solid #ed2323; border-radius:50%; color:#ed2323; font-size:25px; }
@media(max-width:767px) {
 .cr-order-section { padding:28px 20px; }
 .cr-order-heading h2 { font-size:25px; }
 .cr-order-section .cr-mail-form .form-control { font-size:16px; }
 .cr-mail-form .cr-service-option { font-size:13px; padding-top:13px; padding-bottom:13px; }
 .cr-order-bottom { align-items:flex-start; flex-direction:column; gap:0; }
 .cr-order-bottom > p { margin:-8px 0 20px; }
 .cr-home-order { padding:42px 0; }
 .cr-upload-field { padding:12px; gap:8px; }
 .cr-contact-details { margin-top:28px; height:auto; }
}
