.brava-required{color:#d63638;font-weight:700;margin-inline-start:.2em}
.brava-contact-required{font-size:.76em;font-weight:500;opacity:.62;margin-inline-start:.35rem}
.brava-field-help,.brava-field-error{display:block;margin-top:.38rem;font-size:.84em;line-height:1.55}
.brava-field-help{opacity:.72}
.brava-field-error{color:#b32d2e;font-weight:600}
.brava-field--error input,.brava-field--error textarea,.brava-field--error select{border-color:#d63638!important;box-shadow:0 0 0 1px rgba(214,54,56,.18)}
.brava-quote-form select{width:100%;max-width:100%;min-height:44px}
.brava-form-guidance .brava-required{margin-inline-start:.25rem}
.brava-form-toolbar{grid-column:1/-1;display:flex;justify-content:flex-end;margin-bottom:-.25rem}
.brava-help-toggle{width:34px;height:34px;border:1px solid rgba(127,127,127,.28);border-radius:50%;background:transparent;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;line-height:1;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}
.brava-help-toggle:hover,.brava-help-toggle:focus-visible{transform:translateY(-1px);border-color:currentColor;background:rgba(127,127,127,.06)}
.brava-help-toggle[aria-expanded="true"]{background:rgba(127,127,127,.08)}
.brava-ajax-status{grid-column:1/-1;padding:.85rem 1rem;border-radius:10px;margin:0 0 .3rem;line-height:1.6}
.brava-ajax-status:empty,.brava-ajax-status[hidden]{display:none}
.brava-ajax-status--success{background:#e6f4ee;color:#087b57}
.brava-ajax-status--warning{background:#fff4dd;color:#7a5200}
.brava-ajax-status--error{background:#fbeaea;color:#9f2323}
.brava-quote-form[aria-busy="true"]{opacity:.88}
.brava-quote-form button[disabled]{cursor:wait;opacity:.72}
[data-brava-help][hidden]{display:none!important}

.brava-dismissible{position:relative;padding-inline-end:3rem!important}
.brava-notice-close{position:absolute;inset-inline-end:.65rem;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;background:transparent;border-radius:50%;font-size:1.35rem;line-height:1;cursor:pointer;opacity:.65;display:inline-flex;align-items:center;justify-content:center}
.brava-notice-close:hover,.brava-notice-close:focus-visible{opacity:1;background:rgba(0,0,0,.06)}
.brava-dismissible[hidden]{display:none!important}


/* Brava 2.8.5 — notices, Turnstile presentation, privacy row */
.brava-ajax-status,
.brava-quote-notice {
    position: relative;
    padding-inline-end: 2.65rem;
}
.brava-notice-close {
    position: absolute;
    inset-inline-end: .7rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.8rem;
    height: 1.8rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: currentColor;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
    opacity: .68;
}
.brava-notice-close:hover,
.brava-notice-close:focus-visible {
    opacity: 1;
    background: rgba(0,0,0,.06);
}
.brava-privacy-row {
    grid-column: 1 / -1;
    display: flex !important;
    align-items: flex-start;
    gap: .6rem;
    margin-top: .25rem;
}
.brava-privacy-row input[type="checkbox"] {
    flex: 0 0 auto;
    width: 1.15rem;
    height: 1.15rem;
    margin: .15rem 0 0;
}
.brava-privacy-label {
    display: inline !important;
    margin: 0 !important;
    line-height: 1.65;
}
.cf-turnstile[data-brava-turnstile-client-status="failed"],
.cf-turnstile[data-brava-turnstile-client-status="timeout"] {
    display: none !important;
}

.brava-privacy-row .brava-field-error {
    flex: 0 0 100%;
    width: 100%;
    margin-inline-start: calc(1.15rem + .6rem);
}
@media (max-width: 520px) {
    .brava-privacy-row {
        gap: .5rem;
    }
    .brava-privacy-label {
        font-size: .92rem;
    }
}


/* Brava 2.8.6 — robust privacy consent layout */
.brava-quote-form .brava-privacy-row {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start !important;
    column-gap: .65rem !important;
    row-gap: .35rem !important;
    width: 100% !important;
    max-width: none !important;
    margin: .4rem 0 0 !important;
}
.brava-quote-form .brava-privacy-row input[type="checkbox"] {
    grid-column: 1;
    grid-row: 1;
    width: 1.15rem !important;
    height: 1.15rem !important;
    min-width: 1.15rem !important;
    margin: .18rem 0 0 !important;
    padding: 0 !important;
}
.brava-quote-form .brava-privacy-label {
    grid-column: 2;
    grid-row: 1;
    display: block !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.65 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere;
}
.brava-quote-form .brava-privacy-label a {
    display: inline !important;
    white-space: nowrap;
    margin-inline-start: .25rem;
}
.brava-quote-form .brava-privacy-row .brava-field-error {
    grid-column: 2;
    grid-row: 2;
    width: auto !important;
    margin: 0 !important;
}
@media (max-width: 520px) {
    .brava-quote-form .brava-privacy-row {
        column-gap: .5rem !important;
    }
    .brava-quote-form .brava-privacy-label {
        font-size: .92rem !important;
    }
}

/* Brava Core 3.1.0 — RFQ list handoff */
.brava-quote-list-summary{padding:18px;border:1px solid var(--brava-border,#d8dce2);border-radius:16px;background:var(--brava-surface-soft,#f6f7f8)}.brava-quote-list-summary__head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}.brava-quote-list-summary__head h3{margin:0;font-size:1.05rem}.brava-quote-list-summary__head a{font-weight:700}.brava-quote-list-summary__item{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--brava-border,#d8dce2)}.brava-quote-list-summary__item span{color:var(--brava-text-muted,#67717e);font-size:.9rem;text-align:end}@media(max-width:640px){.brava-quote-list-summary__head,.brava-quote-list-summary__item{align-items:flex-start;flex-direction:column}.brava-quote-list-summary__item span{text-align:start}}

/* 3.11.1 — wholesale request context above the original contact form */
.brava-wholesale-request-panel{margin:0 0 26px;padding:22px;border:1px solid #d7e7df;border-radius:18px;background:linear-gradient(180deg,#f5fbf7 0%,#fbfdfc 100%)}
.brava-wholesale-request-panel__head{margin-bottom:18px}.brava-wholesale-request-panel__eyebrow{display:inline-block;margin-bottom:5px;color:#08783f;font-size:.78rem;font-weight:800}.brava-wholesale-request-panel__head h3{margin:0 0 7px;font-size:1.35rem}.brava-wholesale-request-panel__head p{margin:0;color:#64716b;line-height:1.75}
.brava-wholesale-request-panel__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.brava-wholesale-request-panel__grid p{margin:0}.brava-wholesale-request-panel__grid label{display:block;margin-bottom:7px;font-weight:700}.brava-wholesale-request-panel__grid input,.brava-wholesale-request-panel__grid select,.brava-wholesale-request-panel__grid textarea{width:100%;border:1px solid #cfd9d3;border-radius:11px;background:#fff;padding:10px 12px}.brava-wholesale-request-panel__grid input,.brava-wholesale-request-panel__grid select{min-height:46px}.brava-wholesale-request-panel__grid textarea{min-height:96px;resize:vertical}.brava-wholesale-request-panel__models{grid-column:1/-1}
@media(max-width:820px){.brava-wholesale-request-panel__grid{grid-template-columns:1fr 1fr}.brava-wholesale-request-panel__models{grid-column:1/-1}}@media(max-width:580px){.brava-wholesale-request-panel{padding:17px}.brava-wholesale-request-panel__grid{grid-template-columns:1fr}.brava-wholesale-request-panel__models{grid-column:auto}}

/* Brava Core 3.11.2 — simplified customer-facing request form */
.brava-template-field{padding:16px 18px;border:1px solid #e2e6e9;border-radius:14px;background:#fafbfb}
.brava-template-field label{display:block;margin-bottom:8px;font-weight:800}
.brava-template-field select{background:#fff}
.brava-quote-form #brava-message{min-height:330px;padding:18px 20px;line-height:1.9;resize:vertical;background:#fff}
.brava-message-help--structured{padding:14px 16px;border-inline-start:3px solid var(--brava-primary,#e5007d);border-radius:10px;background:#f7f8f9;white-space:normal;line-height:1.9;opacity:1}
@media(max-width:640px){.brava-quote-form #brava-message{min-height:290px;padding:15px 16px}.brava-template-field{padding:14px}}


/* Brava Core 3.11.4 — structured message editor with inline editable placeholders */
.brava-message-editor{margin:0;min-height:330px;border:1px solid #cfd6dc;border-radius:13px;background:#fff;overflow:hidden;box-shadow:inset 0 1px 2px rgba(15,24,33,.025)}
.brava-message-editor[hidden]{display:none!important}
.brava-message-editor__surface{min-height:330px;padding:18px 20px;color:#30383f;line-height:2;cursor:text}
.brava-message-editor__line{min-height:1.8em;white-space:pre-wrap;overflow-wrap:anywhere}
.brava-message-editor__line.is-empty{min-height:1em}
.brava-message-placeholder{display:inline;padding:.08em .42em;border-radius:6px;background:#fff0a6;color:#5d4900;font-weight:700;box-shadow:inset 0 0 0 1px rgba(185,139,0,.2);cursor:text;transition:background .15s ease,box-shadow .15s ease}
.brava-message-placeholder:hover{background:#ffe77a}
.brava-message-placeholder:focus{outline:2px solid #d4a500;outline-offset:2px;background:#ffe36a;box-shadow:none}
.brava-message--structured-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;opacity:0!important;pointer-events:none!important}
@media(max-width:640px){.brava-message-editor,.brava-message-editor__surface{min-height:290px}.brava-message-editor__surface{padding:15px 16px;line-height:1.9}}


/* Brava Core 3.11.5 — full-width subject and structured request editor */
.brava-quote-form{
    width:100%;
    min-width:0;
}
.brava-quote-form > *{
    min-width:0;
}
.brava-quote-form .brava-form-full,
.brava-quote-form .brava-message-field{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0;
}
.brava-message-field > label{
    display:block;
    margin-bottom:8px;
}
.brava-quote-form #brava-request-subject,
.brava-quote-form #brava-message,
.brava-quote-form .brava-message-editor,
.brava-quote-form .brava-message-editor__surface{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
}
.brava-quote-form .brava-message-editor,
.brava-quote-form .brava-message-editor__surface{
    min-height:clamp(360px, 42vh, 540px);
}
.brava-quote-form .brava-message-editor__surface{
    padding:22px 24px;
    font-size:1rem;
    line-height:2.05;
    text-align:start;
}
.brava-quote-form .brava-message-editor__line{
    width:100%;
    max-width:none;
}
.brava-quote-form .brava-message-placeholder{
    max-width:100%;
    white-space:normal;
    overflow-wrap:anywhere;
}
@media (min-width:1024px){
    .brava-quote-form{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        column-gap:20px;
        row-gap:20px;
    }
    .brava-quote-form #brava-request-subject{
        min-height:54px;
    }
}
@media (max-width:767px){
    .brava-quote-form .brava-message-editor,
    .brava-quote-form .brava-message-editor__surface{
        min-height:330px;
    }
    .brava-quote-form .brava-message-editor__surface{
        padding:16px;
        line-height:1.9;
    }
}


/* Brava Core 3.11.7 — mobile structured-editor viewport stability */
.brava-quote-form,
.brava-quote-form > *,
.brava-message-field,
.brava-message-editor,
.brava-message-editor__surface,
.brava-message-editor__line{
    min-width:0;
    max-width:100%;
}
.brava-message-editor{
    overflow:hidden;
}
.brava-message-editor__surface,
.brava-message-editor__line{
    overflow-wrap:anywhere;
    word-break:normal;
}
.brava-message-placeholder{
    max-width:100%;
    box-decoration-break:clone;
    -webkit-box-decoration-break:clone;
}
@media (max-width:1023px){
    /* 16px prevents iOS/WebKit form-focus auto zoom. That zoom was especially
       visible after selecting a request template and activating contenteditable. */
    .brava-quote-form input,
    .brava-quote-form select,
    .brava-quote-form textarea,
    .brava-message-editor__surface,
    .brava-message-placeholder{
        font-size:16px!important;
    }
    .brava-quote-form{
        grid-template-columns:minmax(0,1fr)!important;
        width:100%;
        max-width:100%;
        overflow:visible;
    }
    .brava-form-full,
    .brava-template-field,
    .brava-message-field{
        grid-column:1/-1!important;
        width:100%!important;
        max-width:100%!important;
    }
    .brava-message-editor__surface{
        width:100%!important;
        padding-inline:16px!important;
        overflow-x:hidden;
    }
}

/* Brava Core 3.12.1 — visible form results and stable consent alignment */
.brava-ajax-status,
.brava-notice[data-brava-static-status]{
    scroll-margin-block-start:clamp(88px,12vw,132px);
}
.brava-ajax-status:focus,
.brava-notice[data-brava-static-status]:focus{
    outline:3px solid rgba(229,0,125,.32);
    outline-offset:4px;
}
.brava-result-arrived{
    animation:brava-result-arrival .7s ease-out both;
}
@keyframes brava-result-arrival{
    0%{transform:translateY(-8px);box-shadow:0 0 0 0 rgba(229,0,125,.28)}
    55%{transform:translateY(0);box-shadow:0 0 0 7px rgba(229,0,125,.08)}
    100%{transform:translateY(0);box-shadow:0 0 0 0 rgba(229,0,125,0)}
}
.brava-quote-form .brava-privacy-row{
    display:block!important;
    width:100%!important;
    margin:.4rem 0 0!important;
}
.brava-quote-form .brava-privacy-control{
    display:flex!important;
    align-items:flex-start!important;
    gap:.65rem!important;
    width:100%!important;
    min-width:0!important;
}
.brava-quote-form .brava-privacy-control input[type="checkbox"]{
    flex:0 0 1.15rem!important;
    width:1.15rem!important;
    height:1.15rem!important;
    min-width:1.15rem!important;
    min-height:1.15rem!important;
    max-width:1.15rem!important;
    max-height:1.15rem!important;
    margin:.22em 0 0!important;
    padding:0!important;
}
.brava-quote-form .brava-privacy-control .brava-privacy-label{
    flex:1 1 auto!important;
    display:block!important;
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    text-align:start!important;
    line-height:1.65!important;
}
.brava-quote-form .brava-privacy-row .brava-field-error{
    display:block!important;
    width:auto!important;
    margin:.35rem calc(1.15rem + .65rem) 0 0!important;
}
[dir="ltr"] .brava-quote-form .brava-privacy-row .brava-field-error{
    margin:.35rem 0 0 calc(1.15rem + .65rem)!important;
}
@media (max-width:520px){
    .brava-quote-form .brava-privacy-control{gap:.5rem!important}
    .brava-quote-form .brava-privacy-row .brava-field-error{margin-inline-start:calc(1.15rem + .5rem)!important;margin-inline-end:0!important}
}
@media (prefers-reduced-motion:reduce){
    .brava-result-arrived{animation:none}
}
