.blakout-quote { margin-top: 3rem; padding: clamp(2rem, 5vw, 4rem); background: #f2f2f0; }
.blakout-quote__eyebrow { margin: 0 0 .5rem; color: #666; font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.blakout-quote h2 { margin: 0 0 1rem; font-size: clamp(2rem, 4vw, 3.5rem); }
.blakout-quote fieldset { margin: 2.2rem 0 0; padding: 0; border: 0; }
.blakout-quote legend { width: 100%; margin-bottom: 1rem; padding-bottom: .65rem; border-bottom: 1px solid #ccc; color: #000; font-size: 1.1rem; font-weight: 700; }
.blakout-quote label { display: block; margin-bottom: 1rem; color: #222; font-size: .84rem; font-weight: 650; }
.blakout-quote input:not([type="checkbox"]):not([type="file"]),
.blakout-quote select,
.blakout-quote textarea { width: 100%; margin-top: .45rem; padding: .85rem 1rem; border: 1px solid #c5c5c2; border-radius: 0; background: #fff; color: #111; font: inherit; }
.blakout-quote input:focus,
.blakout-quote select:focus,
.blakout-quote textarea:focus { outline: 2px solid #000; outline-offset: 2px; }
.blakout-quote__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem 1.25rem; }
.blakout-quote__grid--measurements { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.blakout-cushion { margin-bottom: 1rem; padding: 1.35rem; border: 1px solid #d0d0cd; background: #fff; }
.blakout-cushion__heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.blakout-cushion__heading h3 { margin: 0; font-size: 1.1rem; }
.blakout-cushion__heading button { min-height: 0; padding: .25rem; border: 0; background: transparent; color: #555; font-size: .72rem; text-decoration: underline; }
.blakout-quote__secondary { padding: .8rem 1rem; border: 1px solid #000; background: transparent; color: #000; }
.blakout-quote__submit { width: 100%; margin-top: 1.5rem; padding: 1rem 1.4rem; border: 1px solid #000; background: #000; color: #fff; }
.blakout-quote__help { display: block; color: #666; font-size: .78rem; font-weight: 400; }
.blakout-quote input[type="file"] { max-width: 100%; margin-top: .65rem; font-weight: 400; }
.blakout-quote__consent { display: flex !important; gap: .65rem; align-items: flex-start; margin-top: 2rem; }
.blakout-quote__consent input { margin-top: .25rem; }
.blakout-quote__notice { margin: 1.5rem 0; padding: 1rem; border-left: 4px solid #000; background: #fff; }
.blakout-quote__notice--error { border-color: #9e1b1b; }
.blakout-quote__trap { position: absolute !important; overflow: hidden; width: 1px; height: 1px; clip: rect(1px, 1px, 1px, 1px); }
.blakout-quote-only { display: inline-block; margin: .5rem 0; color: #555; font-size: .9rem; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; }
@media (max-width: 767px) {
	.blakout-quote { margin-right: -15px; margin-left: -15px; padding: 2rem 1.25rem; }
	.blakout-quote__grid, .blakout-quote__grid--measurements { grid-template-columns: 1fr; }
	.blakout-cushion { padding: 1.1rem; }
	.blakout-quote__secondary, .blakout-quote__submit { width: 100%; }
}
