.tool-grid,.agency-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.agency-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.growth-tool-form label,.agency-grid label{display:block;font-weight:600}.growth-tool-form input:not([type=checkbox]):not([type=radio]),.agency-grid input[type=text],.agency-grid textarea{display:block;box-sizing:border-box;width:100%;margin:.4rem 0 1rem;padding:.65rem;border:1px solid #718377;border-radius:.35rem;font:inherit;color:#17382d;background:#fff}.agency-grid fieldset{min-width:0;border:1px solid #abb9ae;border-radius:.5rem;padding:1rem}.agency-grid legend{font-weight:700}.tool-summary{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.7}.print-only{display:none}[hidden]{display:none!important}#cost-result:focus{outline:2px solid #285c45;outline-offset:8px}#cost-error{color:#9d2222}@media(max-width:760px){.tool-grid,.agency-grid{grid-template-columns:1fr}}@media print{.site-nav,.footer,.skip-link,.actions,button,#cost-form,#agency-form{display:none!important}.content-main{max-width:none;margin:0;padding:0}.content-card{box-shadow:none;border:0;break-inside:auto}body:has([data-cost-tool]) .content-card:not([data-cost-tool]),body:has([data-agency-tool]) .content-card:not([data-agency-tool]){display:none}body:has([data-agency-tool]) [data-agency-tool]>p{display:none}.print-only{display:block}.tool-summary{font-size:11pt;line-height:1.45}}

/* Scope the local-save control: the generic site input rule fills its parent. */
#agency-form .agency-save-row{display:flex;align-items:flex-start;gap:.65rem;font-weight:600;max-width:42rem;cursor:pointer}
#agency-form #agency-save{display:inline-block;flex:0 0 1.25rem;width:1.25rem;height:1.25rem;padding:0;margin:.2rem 0 0;border-radius:.2rem}
[data-public-renewal] .agency-grid input[type=text]{min-height:48px;font-size:15px}
[data-public-renewal] .agency-grid textarea[rows="1"]{min-height:48px}
#agency-form .agency-grid{grid-template-columns:repeat(var(--agency-count,1),minmax(0,1fr))}

.agency-example{margin-top:1.25rem}.agency-example .comparison-cards{margin:1rem 0}
#agency-comparison:focus{outline:2px solid #285c45;outline-offset:5px}
@media(max-width:800px){#agency-form .agency-grid{grid-template-columns:1fr}}
@media print{.agency-example{display:none!important}}

.comparison-agency h4{white-space:pre-wrap}

@media print{#cost-example-preview{display:none!important}}

#cost-form fieldset{min-width:0;border:1px solid var(--line);border-radius:6px;padding:1rem;margin:1rem 0}#cost-form legend{font-weight:700;padding:0 .3rem}#cost-form details{margin:.5rem 0}#cost-difference-text{white-space:pre-line;line-height:1.6}#cost-result-b{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1.5rem}
/* Print the complete text summary once, including both quotes and differences. */
@media print {
  #cost-result > :not(#cost-summary) { display: none !important; }
  #cost-summary { font-size: 10pt; line-height: 1.35; }
}
#cost-form .tool-grid > label { grid-column: auto; }
@media print{#estimate-form,#estimate>p,.cost-mode{display:none!important}}
.cost-mode{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 20px}.cost-mode a{flex:1 1 240px;padding:16px 18px;border:1px solid #9aa99a;border-radius:8px;background:#fffdf7;color:#204e3e;font-weight:700;text-decoration:none}.cost-mode a[aria-current="page"]{background:#204e3e;color:#fff;border-color:#204e3e}.cost-mode a:focus-visible,.cost-presets button:focus-visible{outline:3px solid #aa552f;outline-offset:3px}.cost-radio{display:inline-flex!important;align-items:center;gap:8px;margin:0 18px 10px 0}.cost-radio input{width:auto!important;min-height:auto!important;margin:0!important}.cost-presets{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 16px}.cost-presets button{min-height:44px;padding:8px 14px;background:#e6eddd;color:#204e3e;border:1px solid #9aa99a;border-radius:6px}.cost-presets button:hover{background:#d8e4cf}.cost-example-table{overflow-x:auto}.cost-example-table table{width:100%;border-collapse:collapse;min-width:490px}.cost-example-table th,.cost-example-table td{text-align:left;padding:12px;border-bottom:1px solid #cad6bf}.cost-example-table caption{text-align:left;font-weight:700;padding:12px 0}
@media(max-width:420px){.cost-mode a{flex-basis:100%}.cost-totals .main-total dd{font-size:clamp(2.2rem,10vw,3.75rem)}}
