.red-q, .red-b {
	--q-red:  var(--red-r-500, #C81115);
	--q-red7: var(--red-r-700, #8C0C0F);
	--q-red3: var(--red-r-300, #C86062);
	--q-k0:   var(--red-k-000, #000000);
	--q-k05:  var(--red-k-050, #080808);
	--q-k15:  var(--red-k-150, #1A1A1A);
	--q-k5:   var(--red-k-500, #737373);
	--q-k6:   var(--red-k-600, #999999);
	--q-k8:   var(--red-k-800, #E0E0E0);
	--q-ok:   var(--red-ok, #6FA37C);
	--q-warn: var(--red-warn, #C9A227);
	--q-rule: var(--red-rule, rgba(255,255,255,.10));
	--q-rule2: var(--red-rule-up, rgba(255,255,255,.20));
	--q-mono: var(--red-mono, ui-monospace, "SF Mono", Menlo, monospace);
	--q-ease: var(--red-ease, cubic-bezier(.22,.61,.36,1));
	max-width: 1100px;
	margin: 0 auto;
	font-feature-settings: "tnum" 1;
}

.red-q h1, .red-b h1 { font-weight: 200; letter-spacing: -.035em; color: #fff; margin-bottom: 14px; }
.red-q-lede { max-width: 62ch; color: var(--q-k6); font-size: 15.5px; line-height: 1.75; margin-bottom: 34px; }
.red-hint { font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .1em; color: var(--q-k5); line-height: 1.7; }

.red-q-index { display: flex; align-items: center; gap: 18px; margin-bottom: 26px; }
.red-q-index .n { font-family: var(--q-mono); font-size: 11px; letter-spacing: .1em; color: var(--q-red); }
.red-q-index .rule { flex: 1; height: 1px; background: var(--q-rule); }
.red-q-index .l { font-family: var(--q-mono); font-size: 11px; letter-spacing: .26em; text-transform: uppercase; color: var(--q-k6); }

.red-tier-actions { margin-top: 16px; }
.red-btn-quote, .red-btn-project { display: block; width: 100%; text-align: center; margin-top: 8px; }
.red-bulk-link { font-family: var(--q-mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; color: var(--q-red3); }
.red-flag {
	border-left: 1px solid var(--q-warn);
	background: linear-gradient(90deg, rgba(201,162,39,.09), transparent 75%);
	padding: 13px 18px; font-size: 13px; color: var(--q-k6); margin: 16px 0;
}
.red-flag b { color: var(--q-warn); font-weight: 500; }

.red-quote-indicator { display: inline-flex; align-items: center; gap: 7px; }
.red-quote-indicator__count { padding: 2px 5px; font-size: 9.5px; font-family: var(--q-mono); }

.red-q-note, .red-q-ok {
	border-left: 1px solid var(--q-red);
	background: linear-gradient(90deg, rgba(200,17,21,.08), transparent 70%);
	padding: 16px 22px; margin: 26px 0; font-size: 14px; color: var(--q-k6); line-height: 1.65;
}
.red-q-note b { display: block; color: var(--q-k8); font-weight: 500; font-size: 13px; margin-bottom: 4px; }
.red-q-note--warn { border-left-color: var(--q-warn); background: linear-gradient(90deg, rgba(201,162,39,.09), transparent 70%); }
.red-q-ok { border-left-color: var(--q-ok); background: linear-gradient(90deg, rgba(111,163,124,.1), transparent 72%); }
.red-q-ok h2 { font-size: 23px; font-weight: 200; color: #fff; margin-bottom: 8px; }
.red-q-ok code { font-family: var(--q-mono); color: var(--q-red3); letter-spacing: .08em; }

.red-q-empty { border: 1px dashed var(--q-rule2); padding: 40px 32px; text-align: center; color: var(--q-k5); }
.red-q-empty p { margin-bottom: 18px; }

.red-q-table { width: 100%; border-collapse: collapse; }
.red-q-table th {
	font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .18em; text-transform: uppercase;
	color: var(--q-k5); text-align: left; padding: 13px 10px; border-bottom: 1px solid var(--q-rule2); font-weight: 500;
}
.red-q-table td { padding: 16px 10px; border-bottom: 1px solid var(--q-rule); font-size: 14px; vertical-align: middle; }
.red-q-table .r { text-align: right; }
.red-q-prod { display: flex; align-items: center; gap: 16px; }
.red-q-prod img { width: 62px; height: 62px; object-fit: cover; background: var(--q-k15); }
.red-q-prod a { color: var(--q-k8); }
.red-q-prod small, .red-q-table small { display: block; font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .1em; color: var(--q-k5); }
.red-q-table input[type=number] { width: 58px; text-align: center; font-family: var(--q-mono); font-size: 12px; }
.red-q-table input, .red-q-form input, .red-q-form select, .red-q-form textarea {
	background: none; border: 0; border-bottom: 1px solid var(--q-rule2);
	color: #fff; padding: 9px 2px; width: 100%; outline: none;
	transition: border-color .35s var(--q-ease);
}
.red-q-table input:focus, .red-q-form input:focus, .red-q-form textarea:focus, .red-q-form select:focus { border-bottom-color: var(--q-red); }
.red-q-x { background: none; border: 0; color: var(--q-k5); cursor: pointer; font-size: 16px; }
.red-q-x:hover { color: var(--q-red); }

.red-q-foot { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; flex-wrap: wrap; margin-top: 22px; }
.red-q-ind { margin-left: auto; min-width: 280px; }
.red-q-ind p { display: flex; justify-content: space-between; margin: 5px 0; font-size: 14px; color: var(--q-k6); }
.red-q-import { margin-top: 14px; }
.red-q-link { background: none; border: 0; color: var(--q-k5); text-decoration: underline; cursor: pointer; font-size: 13px; }

.red-q-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(258px,1fr)); gap: 0 34px; }
.red-q-field { margin-bottom: 24px; }
.red-q-field label { display: block; font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--q-k5); margin-bottom: 7px; }
.red-q-field .req { color: var(--q-red); }
.red-q-field--chk { display: flex; align-items: flex-end; padding-bottom: 14px; }
.red-q-fs { border: 0; border-top: 1px solid var(--q-rule); padding: 20px 0 0; margin: 0 0 24px; }
.red-q-fs legend { font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .18em; text-transform: uppercase; color: var(--q-k5); padding: 0 14px 0 0; }
.red-q-opt { display: inline-flex !important; align-items: center; gap: 9px; margin: 0 26px 10px 0; font-size: 14px; color: var(--q-k6); text-transform: none !important; letter-spacing: 0 !important; }
.red-q-opt input { width: auto !important; accent-color: var(--q-red); }
.red-q-hp { position: absolute; left: -9999px; }
.red-q-submit { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin: 34px 0; }

.red-q-vhead { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--q-rule2); margin-bottom: 26px; }
.red-status-pill {
	display: inline-block; padding: 5px 11px; border-radius: 0;
	font-family: var(--q-mono); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; white-space: nowrap;
}
.red-q-totals { max-width: 360px; margin-left: auto; margin-top: 24px; }
.red-q-totals p { display: flex; justify-content: space-between; padding: 8px 0; margin: 0; font-size: 14px; color: var(--q-k6); }
.red-q-totals p span:last-child { font-family: var(--q-mono); font-size: 13px; letter-spacing: .04em; }
.red-q-totals .g { border-top: 1px solid var(--q-rule2); margin-top: 10px; padding-top: 16px; font-size: 23px; font-weight: 200; color: #fff; letter-spacing: -.025em; }
.red-q-actions { margin: 34px 0; }
.red-q-decline { margin-top: 20px; font-size: 13px; }
.red-q-decline summary { cursor: pointer; color: var(--q-k5); font-family: var(--q-mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.red-q-decline textarea { width: 100%; margin: 12px 0; background: none; border: 0; border-bottom: 1px solid var(--q-rule2); color: #fff; padding: 9px 2px; }
.red-q-help { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--q-rule); font-size: 13px; color: var(--q-k5); }

.red-b-concepts { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 1px; background: var(--q-rule); }
.red-b-concept {
	position: relative; display: block; background: var(--q-k05); padding: 30px 26px;
	text-decoration: none; overflow: hidden; transition: background .4s var(--q-ease);
}
.red-b-concept:hover { background: var(--q-k15); }
.red-b-concept::after {
	content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px;
	background: var(--q-red); transform: scaleX(0); transform-origin: left; transition: transform .45s var(--q-ease);
}
.red-b-concept:hover::after { transform: scaleX(1); }
.red-b-concept .n { font-family: var(--q-mono); font-size: 11px; letter-spacing: .1em; color: var(--q-red); }
.red-b-concept h3 { font-size: 18px; font-weight: 400; color: #fff; margin: 12px 0 8px; }
.red-b-concept p { font-size: 13.5px; color: var(--q-k5); margin-bottom: 16px; }
.red-b-concept .c { font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--q-k6); }
.red-b-back { display: inline-block; margin-bottom: 20px; font-family: var(--q-mono); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--q-k5); }

.red-b-layout { display: grid; grid-template-columns: minmax(0,1fr) 340px; gap: 1px; background: var(--q-rule); }
.red-b-stations, .red-b-summary { background: var(--q-k05); }
.red-b-summary { padding: 28px 26px; position: sticky; top: 20px; align-self: start; }

.red-b-station { border-bottom: 1px solid var(--q-rule); transition: background .4s var(--q-ease); }
.red-b-station.is-covered { background: rgba(111,163,124,.05); }
.red-b-shead { display: flex; align-items: center; gap: 18px; padding: 20px 24px; }
.red-b-shead .n { font-family: var(--q-mono); font-size: 10px; letter-spacing: .12em; color: var(--q-k5); min-width: 22px; }
.red-b-station.is-covered .red-b-shead .n { color: var(--q-ok); }
.red-b-shead .t { flex: 1; }
.red-b-shead h4 { font-size: 15.5px; font-weight: 400; color: var(--q-k8); margin: 0; }
.red-b-shead .t span { font-family: var(--q-mono); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: var(--q-k5); }
.red-b-shead .t span.ess { color: var(--q-red3); }
.red-b-chosen { padding: 0 24px 16px 64px; font-family: var(--q-mono); font-size: 10.5px; letter-spacing: .05em; color: var(--q-ok); line-height: 1.8; }
.red-b-picker { padding: 0 24px 24px; border-top: 1px solid var(--q-rule); }
.red-b-search { margin: 18px 0; }
.red-b-sinput { width: 100%; background: none; border: 0; border-bottom: 1px solid var(--q-rule2); color: #fff; padding: 9px 2px; outline: none; }
.red-b-results { display: grid; grid-template-columns: repeat(auto-fill, minmax(196px,1fr)); gap: 1px; background: var(--q-rule); max-height: 460px; overflow-y: auto; }
.red-b-pick { background: var(--q-k15); padding: 14px; display: flex; flex-direction: column; gap: 8px; font-size: 13px; }
.red-b-pick img { width: 100%; height: 104px; object-fit: cover; background: var(--q-k0); }
.red-b-pick strong { font-size: 12.5px; font-weight: 400; color: var(--q-k8); line-height: 1.38; }
.red-b-pick .p { font-family: var(--q-mono); font-size: 11.5px; color: #fff; }
.red-b-pick .r { display: flex; gap: 6px; margin-top: auto; }
.red-b-pick input { width: 46px; background: none; box-shadow: inset 0 0 0 1px var(--q-rule); border: 0; color: var(--q-k8); text-align: center; font-family: var(--q-mono); font-size: 11px; padding: 7px 0; }

.red-b-gauge { margin-bottom: 24px; }
.red-b-gauge .track { height: 2px; background: var(--q-rule); position: relative; overflow: hidden; }
.red-b-gauge .track span { position: absolute; inset: 0 auto 0 0; width: 0; background: var(--q-red); transition: width .55s var(--q-ease); }
.red-b-gauge .label { font-family: var(--q-mono); font-size: 9.5px; letter-spacing: .15em; text-transform: uppercase; color: var(--q-k5); margin-top: 11px; }
.red-b-gauge .label.is-ok { color: var(--q-ok); }
.red-b-list { list-style: none; margin: 0 0 18px; padding: 0; }
.red-b-list li { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--q-rule); }
.red-b-list strong { display: block; font-size: 12.5px; font-weight: 400; color: var(--q-k8); line-height: 1.4; }
.red-b-list small { font-family: var(--q-mono); font-size: 10px; color: var(--q-k5); }
.red-b-list input { width: 42px; background: none; box-shadow: inset 0 0 0 1px var(--q-rule); border: 0; color: var(--q-k8); text-align: center; font-family: var(--q-mono); font-size: 11px; padding: 6px 0; }
.red-b-total { font-family: var(--q-mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--q-k6); margin: 14px 0; }
.red-b-go { width: 100%; }
.red-b-x { background: none; border: 0; color: var(--q-k5); cursor: pointer; font-size: 15px; }
.red-b-x:hover { color: var(--q-red); }

.red-toast {
	position: fixed; right: 26px; bottom: 26px; z-index: 400;
	display: flex; align-items: center; gap: 20px;
	background: var(--red-k-150, #1A1A1A);
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.2), 0 20px 50px rgba(0,0,0,.7);
	padding: 16px 22px;
	font-family: var(--red-mono, monospace); font-size: 10px; letter-spacing: .14em; text-transform: uppercase;
	color: #E0E0E0; opacity: 0; transform: translateY(14px); pointer-events: none;
	transition: opacity .35s, transform .35s;
}
.red-toast.is-visible { opacity: 1; transform: none; pointer-events: auto; }
.red-toast::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 1px; background: #C81115; }
.red-toast a { color: #C86062; cursor: pointer; }

@media (max-width: 900px) {
	.red-b-layout { grid-template-columns: 1fr; }
	.red-b-summary { position: static; }
}
@media (max-width: 600px) {
	.red-q-table thead { display: none; }
	.red-q-table tr { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 14px 0; border-bottom: 1px solid var(--q-rule); }
	.red-q-table td { border: 0; padding: 3px 0; }
	.red-q-prod { grid-column: 1 / -1; }
	.red-q-vhead { flex-direction: column; }
}
.red-qd{max-width:900px;margin:0 auto 40px;font-family:inherit;color:#1d1d1f}
.red-qd__bar{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}
.red-qd__print{background:none;border:1px solid #cfcfd4;border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer;color:#333}
.red-qd__doc{background:#fff;border:1px solid #e3e3e7;border-radius:6px;box-shadow:0 10px 30px rgba(0,0,0,.06);padding:44px 48px;border-top:6px solid #c8102e}
.red-qd__head{display:flex;justify-content:space-between;gap:30px;padding-bottom:26px;border-bottom:1px solid #e6e6e9}
.red-qd__from{display:flex;flex-direction:column;gap:2px;font-size:13px;color:#555}
.red-qd__from img{width:120px;height:auto;margin-bottom:10px}
.red-qd__from strong{font-size:15px;color:#111}
.red-qd__title{text-align:right}
.red-qd__title h1{margin:0 0 12px;font-size:30px;letter-spacing:.18em;font-weight:800;color:#111}
.red-qd__title dl{margin:0;display:grid;gap:4px}
.red-qd__title dl div{display:flex;justify-content:flex-end;gap:14px;font-size:13px}
.red-qd__title dt{color:#777}.red-qd__title dd{margin:0;font-weight:700;min-width:120px;text-align:right}
.red-qd__title dd.is-exp{color:#c8102e}
.red-qd__to{margin:24px 0 8px;display:flex;flex-direction:column;gap:2px;font-size:14px}
.red-qd h2{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#888}
.red-qd__items{width:100%;border-collapse:collapse;margin:26px 0 0;font-size:14px}
.red-qd__items th{background:#1d1d1f;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:10px 12px;text-align:left}
.red-qd__items td{padding:14px 12px;border-bottom:1px solid #ececef;vertical-align:top}
.red-qd__items tbody tr:nth-child(even) td{background:#fafafb}
.red-qd__items .r{text-align:right;white-space:nowrap}.red-qd__items .n{width:28px;color:#999}
.red-qd__items .sku{font-family:ui-monospace,Menlo,monospace;font-size:12px;color:#666;white-space:nowrap}
.red-qd__items a{color:#111;text-decoration:none;font-weight:600}.red-qd__items a:hover{color:#c8102e}
.red-qd__items small{display:block;color:#777;font-size:12px;margin-top:3px}
.red-qd__bottom{display:grid;grid-template-columns:1fr 320px;gap:30px;margin-top:24px}
.red-qd__notes{background:#fff7f8;border-left:3px solid #c8102e;padding:12px 14px;border-radius:4px;margin-bottom:16px}
.red-qd__notes p,.red-qd__terms p{margin:0;font-size:13px;line-height:1.5;color:#444}
.red-qd__totals p{display:flex;justify-content:space-between;margin:0;padding:8px 0;border-bottom:1px solid #ececef;font-size:14px}
.red-qd__totals p.disc span:last-child{color:#1a7f37}
.red-qd__totals p.g{border:0;margin-top:8px;padding:14px 16px;background:#1d1d1f;color:#fff;border-radius:6px;font-size:17px;font-weight:800}
.red-qd__totals p.g .amount{color:#fff}
.red-qd__note{margin:18px 0 0;padding:12px 14px;border-radius:6px;background:#f5f5f7;font-size:14px}.red-qd__note.is-warn{background:#fff4e0}.red-qd__note.is-ok{background:#e7f6ec}
.red-qd__act{margin:22px 0 0;text-align:center}
.red-qd__accept{display:inline-block;background:#c8102e;color:#fff!important;border:0;border-radius:10px;padding:15px 34px;font-size:16px;font-weight:700;cursor:pointer;text-decoration:none}
.red-qd__accept:hover{background:#a50d26}
.red-qd__hint{margin:8px 0 0;font-size:13px;color:#777}
.red-qd__decline{margin:14px auto 0;max-width:520px;text-align:left;font-size:13px}.red-qd__decline textarea{width:100%;margin:8px 0}
.red-qd__help{text-align:center;font-size:13px;color:#777;margin-top:22px}
@media (max-width:700px){.red-qd__doc{padding:24px 18px}.red-qd__head{flex-direction:column}.red-qd__title{text-align:left}.red-qd__title dl div{justify-content:flex-start}.red-qd__bottom{grid-template-columns:1fr}.red-qd__items th.n,.red-qd__items td.n,.red-qd__items th:nth-child(3),.red-qd__items td.sku{display:none}}
@media print{header.site-header,.site-footer,.red-qd__bar,.red-qd__act,.red-qd__help,.woocommerce-breadcrumb,nav{display:none!important}.red-qd__doc{box-shadow:none;border:0;padding:0}.red-qd__items th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.red-qd__totals p.g{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.red-qd__signin{background:#fff;border:1px solid #e3e3e7;border-radius:10px;padding:18px;max-width:560px;margin-left:auto;margin-right:auto}.red-qd__signin p{margin:0 0 12px;font-size:14px;color:#444;line-height:1.5}
