.tc-quote { display: grid; gap: 1rem; max-width: 760px; margin-inline: auto; }
.tc-quote p { margin: 0; }
.tc-quote label, .tc-quote legend { display: block; font-weight: 600; margin-bottom: .35rem; }
.tc-quote input[type="text"], .tc-quote input[type="email"], .tc-quote input[type="tel"],
.tc-quote input[type="number"], .tc-quote input[type="date"], .tc-quote input[type="file"],
.tc-quote select, .tc-quote textarea {
  width: 100%; box-sizing: border-box; padding: .65rem .8rem; font: inherit;
  border: 1px solid var(--wp--preset--color--grey, #8a92a3); border-radius: 8px; background: #fff; color: inherit;
}
.tc-quote small { display: block; margin-top: .3rem; opacity: .75; }
.tc-quote__grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.tc-quote__sizes { border: 0; padding: 0; margin: 0; display: grid; gap: .75rem; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.tc-quote__sizes label { font-weight: 400; text-align: center; }
.tc-quote__consent label { font-weight: 400; display: flex; gap: .5rem; align-items: flex-start; }
.tc-quote__consent input { margin-top: .3rem; }
.tc-quote__hp { position: absolute; left: -9999px; }
.tc-quote__error { padding: .8rem 1rem; border-radius: 8px; background: #fdecea; color: #8a1c12; }
.tc-quote button { cursor: pointer; padding: .8rem 2rem; border-radius: 50px; border: 0;
  background: var(--wp--preset--color--color-3, #3B5A7A); color: var(--wp--preset--color--light, #fff); font: inherit; font-weight: 600; }
.tc-quote--done { padding: 1.5rem; border-radius: 12px; background: var(--wp--preset--color--color-1, #f3f3f3); text-align: center; font-size: 1.1rem; }
@media (max-width: 479px) { .tc-quote__sizes { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.tc-quote__product { padding: .8rem 1rem; border-radius: 8px; background: var(--wp--preset--color--color-1, #f2f6fc); border-left: 4px solid var(--wp--preset--color--magenta, #e2007a); }
.tc-quote__sizes { grid-template-columns: repeat(auto-fill, minmax(72px, 1fr)); }
