.tdc-order {
	color: #555;
	font-family: inherit;
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 16px 36px;
}

.tdc-order h1 {
	color: #555;
	font-size: 34px;
	font-weight: 800;
	line-height: 1.1;
	margin: 0 0 36px;
}

.tdc-order h2 {
	color: #e60012;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.1;
	margin: 26px 0 22px;
}

.tdc-rule {
	border-top: 1px solid #ccc;
	margin: 0 0 24px;
}

.tdc-grid {
	display: grid;
	gap: 22px 34px;
}

.tdc-grid--top {
	grid-template-columns: 1fr 1fr;
	padding-bottom: 28px;
}

.tdc-grid--details {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tdc-field label,
.tdc-label {
	display: block;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.25;
	margin: 0 0 8px;
}

.tdc-field input[type="text"],
.tdc-field input[type="email"],
.tdc-field input[type="tel"],
.tdc-field input[type="date"],
.tdc-field textarea {
	border: 1px solid #ccc;
	border-radius: 0;
	box-sizing: border-box;
	color: #555;
	font: inherit;
	font-size: 17px;
	min-height: 42px;
	padding: 8px 12px;
	width: 100%;
}

.tdc-field textarea {
	min-height: 132px;
	resize: vertical;
}

.tdc-field input[type="file"] {
	font-size: 15px;
}

.tdc-field input[type="file"]::file-selector-button {
	font: inherit;
	font-size: 15px;
	min-height: 30px;
	padding: 4px 12px;
}

.tdc-field--date-wanted {
	grid-column: 1;
	grid-row: 1;
}

.tdc-field--charge {
	grid-column: 2;
	grid-row: 1;
}

.tdc-field--po-number {
	grid-column: 3;
	grid-row: 1;
}

.tdc-field--deliver {
	grid-column: 1;
	grid-row: 2 / span 2;
}

.tdc-field--contact {
	grid-column: 2;
	grid-row: 2;
}

.tdc-field--phone {
	grid-column: 2;
	grid-row: 3;
}

.tdc-field--email {
	grid-column: 3;
	grid-row: 2;
}

.tdc-field--notes {
	grid-column: 1 / span 2;
	grid-row: 4;
}

.tdc-field--heard {
	align-self: start;
	grid-column: 3;
	grid-row: 4;
}

.tdc-order--no-heard .tdc-field--notes {
	grid-column: 1 / -1;
}

.tdc-check {
	align-items: center;
	display: flex;
	font-size: 17px;
	font-weight: 400;
	gap: 12px;
	margin: 10px 0;
}

.tdc-check input {
	height: 15px;
	width: 15px;
}

.tdc-readonly {
	color: #777;
	font-size: 18px;
	padding: 8px 0;
}

.tdc-order-head,
.tdc-product {
	align-items: center;
	border-bottom: 1px solid #ccc;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 100px 145px;
	gap: 28px;
	padding: 24px 0;
}

.tdc-order-head {
	padding: 0 0 18px;
}

.tdc-order-head strong {
	font-size: 16px;
	text-align: left;
}

.tdc-order-head strong:last-child {
	text-align: right;
}

.tdc-product__title {
	font-size: 28px;
	font-weight: 800;
	line-height: 1.1;
	margin-bottom: 4px;
}

.tdc-product__title--navy {
	color: #003777;
}

.tdc-product__title--chocolate {
	color: #542f20;
}

.tdc-product__title--charcoal {
	color: #555;
}

.tdc-product__desc {
	font-size: 17px;
}

.tdc-qty {
	border: 1px solid #ccc;
	box-sizing: border-box;
	font-size: 17px;
	height: 40px;
	padding: 6px 10px;
	width: 100px;
}

.tdc-line-total {
	color: #777;
	font-size: 17px;
	font-variant-numeric: tabular-nums;
	text-align: right;
}

.tdc-totals {
	margin: 48px auto 0;
	max-width: none;
	width: 100%;
}

.tdc-totals div {
	align-items: center;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 145px;
	font-size: 20px;
	gap: 22px;
	margin: 22px 0;
}

.tdc-totals span {
	text-align: right;
}

.tdc-totals strong {
	font-variant-numeric: tabular-nums;
	text-align: right;
}

.tdc-total {
	border-bottom: 2px solid #666;
	border-top: 2px solid #666;
	font-size: 26px !important;
	font-weight: 800;
	margin-left: auto !important;
	max-width: 560px;
	padding: 10px 0;
	width: 100%;
}

.tdc-actions {
	display: flex;
	justify-content: flex-end;
	margin-top: 24px;
}

.tdc-actions--review {
	gap: 14px;
	justify-content: flex-start;
}

.tdc-button {
	background: #e60012;
	border: 0;
	border-radius: 5px;
	color: #fff;
	cursor: pointer;
	font-size: 20px;
	font-weight: 700;
	min-height: 46px;
	padding: 10px 24px;
}

.tdc-button--secondary {
	background: #555;
}

.tdc-quote h1 {
	margin-bottom: 22px;
}

.tdc-quote-grid {
	grid-template-columns: 1fr 1fr 1fr;
	margin-bottom: 28px;
}

.tdc-quote-details {
	grid-template-columns: 1fr 1fr;
	margin-bottom: 28px;
}

.tdc-quote-deliver {
	grid-column: 1;
	grid-row: 1 / span 2;
}

.tdc-quote-contact {
	grid-column: 2;
	grid-row: 1;
}

.tdc-quote-phone {
	grid-column: 2;
	grid-row: 2;
}

.tdc-quote-notes {
	grid-column: 1;
	grid-row: 3;
}

.tdc-quote-email {
	grid-column: 2;
	grid-row: 3;
}

.tdc-quote-quantity-title {
	color: #555 !important;
	font-size: 18px !important;
	margin-top: 12px !important;
}

.tdc-quote-product {
	grid-template-columns: 100px minmax(0, 1fr);
}

.tdc-actions--quote {
	justify-content: flex-start;
}

.tdc-order__step--hidden {
	display: none;
}

.tdc-summary-table {
	border-collapse: collapse;
	color: #222;
	font-size: 14px;
	margin-bottom: 8px;
	max-width: 760px;
	width: 100%;
}

.tdc-summary-table td,
.tdc-summary-table th {
	border-bottom: 1px solid #ccc;
	padding: 5px;
}

.tdc-summary-table th {
	text-align: left;
}

@media (max-width: 900px) {
	.tdc-order h1 {
		font-size: 30px;
		margin-bottom: 28px;
	}

	.tdc-order h2 {
		font-size: 26px;
	}

	.tdc-grid--top,
	.tdc-grid--details {
		grid-template-columns: 1fr;
	}

	.tdc-field--date-wanted,
	.tdc-field--charge,
	.tdc-field--po-number,
	.tdc-field--deliver,
	.tdc-field--contact,
	.tdc-field--phone,
	.tdc-field--email,
	.tdc-field--notes,
	.tdc-field--heard {
		grid-column: auto;
		grid-row: auto;
	}

	.tdc-quote-grid,
	.tdc-quote-details {
		grid-template-columns: 1fr;
	}

	.tdc-quote-deliver,
	.tdc-quote-contact,
	.tdc-quote-phone,
	.tdc-quote-notes,
	.tdc-quote-email {
		grid-column: auto;
		grid-row: auto;
	}

	.tdc-quote-product {
		grid-template-columns: 1fr;
	}

	.tdc-field--notes {
		grid-column: span 1;
	}

	.tdc-order-head,
	.tdc-product {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.tdc-order-head {
		display: none;
	}

	.tdc-actions {
		justify-content: stretch;
	}

	.tdc-button {
		width: 100%;
	}
}
