
.quote-calculator { margin-block:clamp(28px,4vw,40px); }
.quote-calculator h2 { margin:0 0 12px; }
.quote-calculator > h2 + p { margin-bottom:0; }
.quote-calculator [hidden] { display:none !important; }
.qc-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; margin-top:20px; }
.qc-quote { min-width:0; display:grid; gap:14px; align-content:start; }
.qc-quote h3 { margin:0; }
.qc-field { display:flex; flex-direction:column; justify-content:flex-end; gap:6px; min-width:0; }
.qc-field label,.qc-question legend { color:var(--navy); font-weight:600; font-size:1rem; line-height:1.45; }
.qc-field input { min-width:0; width:100%; min-height:44px; margin:0; padding:9px 12px; line-height:1.5; color:var(--ink); font-style:normal; }
.qc-field input::placeholder { color:var(--muted); opacity:.8; font-style:italic; }
.qc-field input[aria-invalid=true] { border:2px solid var(--navy); }
.qc-toggles { display:grid; gap:14px; }
.qc-question { margin:0; padding:0; border:0; min-width:0; }
.qc-question legend { padding:0; margin-bottom:6px; }
.qc-choices { display:flex; gap:8px; flex-wrap:wrap; }
.qc-choice { display:flex; align-items:center; gap:8px; padding:8px 12px; min-height:44px; border:1px solid var(--muted); border-radius:var(--radius); cursor:pointer; color:var(--navy); font-size:1rem; }
.qc-choice:has(input:checked) { background:var(--sand); border-color:var(--navy); }
.qc-choice input { width:18px; height:18px; padding:0; margin:0; accent-color:var(--teal-dark); }
.qc-help { margin:0; color:var(--muted); font-size:.875rem; line-height:1.5; }
.qc-results { padding:16px; border-left:3px solid var(--teal-dark); border-radius:0 var(--radius) var(--radius) 0; background:var(--sand); color:var(--ink); align-self:start; overflow-wrap:anywhere; }
.qc-results p { margin:0 0 10px; font-size:1rem; line-height:1.5; }
.qc-results p:last-child { margin-bottom:0; }
.qc-result-line { display:block; }
.qc-rate { text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
.qc-results .qc-daily { color:var(--navy); font-size:1.5rem; line-height:1.3; }
.qc-results .qc-details { color:var(--ink); font-size:.875rem; line-height:1.35; }
.qc-actions { align-self:start; }
.qc-actions .button { max-width:100%; cursor:pointer; }
.qc-remove { padding:8px 0; min-height:44px; background:transparent; border:0; color:var(--teal-dark); text-decoration:underline; font-size:1rem; cursor:pointer; }
.qc-comparison { margin:20px 0 0; padding-block:16px; border-block:1px solid var(--divider); color:var(--navy); font-weight:600; overflow-wrap:anywhere; }
.qc-comparison p { margin:0 0 12px; }
.qc-comparison p:last-child { margin-bottom:0; }
.qc-explanation { margin:16px 0 0; }
.qc-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media print { .qc-actions { display:none; } }


[data-quote-calculator]{border:1px solid var(--mist);border-radius:10px;padding:24px;background:var(--paper)}
[data-quote-calculator] .qc-grid{grid-template-columns:minmax(0,1fr)}
[data-quote-calculator] .qc-input-row{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
[data-quote-calculator] .qc-quote{gap:18px;grid-row:auto;grid-template-rows:none}
[data-quote-calculator] .qc-quote+.qc-quote{border-top:1px solid var(--mist);padding-top:24px}
[data-quote-calculator] .qc-toggles{grid-template-columns:minmax(0,1fr)}
[data-quote-calculator] .qc-results{background:var(--sand);padding:20px;border:0;border-radius:6px}
[data-quote-calculator] .qc-results .qc-total{font-weight:600;font-size:1.25rem;line-height:1.4}
[data-quote-calculator] .qc-time-heading{font-weight:600;margin-top:20px;margin-bottom:8px}
[data-quote-calculator] .qc-time-split{margin-bottom:4px}
[data-quote-calculator] .qc-small-details{font-size:.875rem;color:var(--muted);margin:0}
[data-quote-calculator] .qc-small-details summary{padding:8px 0;cursor:pointer;text-decoration:none}
[data-quote-calculator] .qc-small-details .qc-field,[data-quote-calculator] .qc-small-details .qc-toggles{margin:16px 0}
[data-quote-calculator] .qc-help,[data-quote-calculator] .qc-explanation{font-size:.82rem;line-height:1.5;color:var(--muted)}
[data-quote-calculator] .qc-field input{background:var(--paper);border:1px solid var(--divider);border-radius:5px;min-height:46px}
[data-quote-calculator] .qc-field input[aria-invalid=true]{border:2px solid var(--navy)}
[data-quote-calculator] .qc-money-details{margin-top:16px;font-size:.9rem;line-height:1.55}
[data-quote-calculator] .qc-money-details summary{cursor:pointer;font-weight:600}
@media(min-width:900px){
[data-quote-calculator].is-comparing .qc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}
[data-quote-calculator].is-comparing .qc-quote{grid-row:span 8;grid-template-rows:subgrid}
[data-quote-calculator].is-comparing .qc-quote+.qc-quote{border-top:0;padding-top:0}
.layout-reading:has(.calculator-embed.is-comparing){grid-template-columns:minmax(0,1fr);max-width:1160px}
.layout-reading:has(.calculator-embed.is-comparing)>.content{width:100%;max-width:none}
.layout-reading:has(.calculator-embed.is-comparing)>.rail{display:none}
.layout-reading:has(.calculator-embed.is-comparing)>.content>:not(.calculator-embed){max-width:740px;margin-left:auto;margin-right:auto}
}
@media(max-width:599px){[data-quote-calculator]{padding:20px 16px}}

[data-quote-calculator] .qc-results .qc-hours-individual{margin-top:16px;margin-bottom:4px}
[data-quote-calculator] .qc-results .qc-hours-group{margin-bottom:16px}

@media(max-width:599px){[data-quote-calculator] .qc-results .qc-total{text-decoration:underline}[data-quote-calculator] .qc-total-amount{display:block;margin-top:4px;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}}
