/* Price and value: explain the project before asking the visitor to calculate. */
.economy-overview { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: clamp(40px,7vw,100px); padding-top: clamp(20px,3vw,44px); }
.economy-overview-heading { max-width: 42ch; }
.economy-overview-heading h2 { margin-bottom: 25px; }
.economy-overview-heading .lead { color: var(--muted); }
.economy-overview-heading .text-link { margin-top: 6px; }
.economy-cost-parts { list-style: none; padding: 0; margin: 0; }
.economy-cost-parts li { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 20px; padding: 23px 0; border-top: 1px solid #b5c1a9; }
.economy-cost-parts li:first-child { padding-top: 22px; }
.economy-cost-parts li:last-child { border-bottom: 1px solid #b5c1a9; }
.economy-number { padding-top: 4px; font-size: 12px; letter-spacing: .08em; color: #5e7150; }
.economy-cost-parts h3 { margin: 0 0 9px; font-size: 23px; line-height: 1.3; }
.economy-cost-parts p { margin: 0; color: var(--muted); font-size: 16px; line-height: 1.65; }
.economy-comparison { background: #e8ecdf; border-block: 1px solid #c3ceb6; }
.economy-comparison-heading { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.9fr); align-items: end; gap: 40px; margin-bottom: 36px; }
.economy-comparison-heading h2 { margin-bottom: 0; }
.economy-comparison-heading .section-intro { margin-bottom: 0; max-width: 47ch; }
.economy-scope-table-wrap { border: 1px solid #b4c19f; background: var(--surface); }
.economy-scope-table { width: 100%; table-layout: fixed; border-collapse: collapse; text-align: left; }
.economy-scope-table caption { padding: 18px 22px; text-align: left; color: var(--muted); font-size: 13px; border-bottom: 1px solid #c3ceb6; }
.economy-scope-table th, .economy-scope-table td { padding: 19px 22px; vertical-align: top; overflow-wrap: anywhere; }
.economy-scope-table thead th { background: #f1f3e9; color: var(--ink); font-size: 15px; font-weight: 500; line-height: 1.5; }
.economy-scope-table thead th:first-child { width: 38%; }
.economy-scope-table thead th:last-child { background: #dfe8cb; }
.economy-scope-table tbody th { font-weight: 500; color: var(--ink); font-size: 15px; line-height: 1.6; }
.economy-scope-table tbody td { font-size: 15px; color: #526047; line-height: 1.6; }
.economy-scope-table tbody tr { border-top: 1px solid #d3dbc8; }
.economy-scope-table td:last-child { background: #f3f6ed; }
.economy-increment { display: grid; grid-template-columns: 48px minmax(0,1fr); align-items: start; gap: 22px; margin-top: 30px; max-width: 85ch; }
.economy-increment-mark { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid #93a17e; color: #445933; font-size: 25px; line-height: 1; }
.economy-increment h3 { font-size: 22px; margin: 0 0 9px; }
.economy-increment p { margin: 0; color: #526047; font-size: 16px; }
.economy-preparation { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.85fr); gap: clamp(42px,7vw,100px); align-items: start; }
.economy-factors { margin-top: 30px; }
.economy-factors article { margin-top: 23px; padding-top: 21px; border-top: 1px solid var(--line); }
.economy-factors h3 { margin: 0 0 10px; font-size: 21px; }
.economy-factors p { margin: 0; color: var(--muted); font-size: 16px; }
.economy-prep-card { min-width: 0; padding: clamp(26px,3.4vw,42px); border: 1px solid #b6c59e; background: #eaf0df; }
.economy-prep-card .eyebrow { color: #4f6638; margin-bottom: 22px; }
.economy-prep-card h3 { font-size: 31px; line-height: 1.2; letter-spacing: -.035em; margin: 0 0 24px; }
.economy-prep-card ul { list-style: none; padding: 0; margin: 0 0 25px; }
.economy-prep-card li { position: relative; padding-left: 24px; margin-block: 12px; font-size: 16px; line-height: 1.6; color: #435638; }
.economy-prep-card li::before { content: '✓'; position: absolute; left: 0; color: #526c39; }
.economy-prep-card > p:not(.eyebrow) { color: #526047; font-size: 15px; }
.economy-prep-card .button { width: 100%; margin-top: 6px; }
.economy-prep-card .text-link { margin-top: 10px; }
.economy-tool-section { background: #e8ecdf; border-block: 1px solid #c3ceb6; }
.economy-calculator-reveal > summary { display: flex; align-items: center; justify-content: space-between; gap: 34px; width: min(calc(100% - var(--gutter) * 2),1320px); margin-inline: auto; padding-block: 36px; list-style: none; }
.economy-calculator-reveal > summary::-webkit-details-marker { display: none; }
.economy-tool-summary-copy { display: grid; gap: 12px; max-width: 78ch; }
.economy-tool-summary-copy .eyebrow { color: #52683d; margin: 0; }
.economy-tool-summary-copy strong { font-size: clamp(26px,3vw,38px); font-weight: 400; letter-spacing: -.035em; line-height: 1.2; }
.economy-tool-summary-copy > span:last-child { color: #526047; font-size: 16px; }
.economy-tool-plus { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; border: 1px solid #9fb285; color: #40572d; font-size: 29px; line-height: 1; transition: transform 180ms var(--ease); }
.economy-calculator-reveal[open] > summary { border-bottom: 1px solid #b9c6a9; }
.economy-calculator-reveal[open] .economy-tool-plus { transform: rotate(45deg); }
.economy-calculator-content { min-width: 0; }
.economy-calculator-content .calculator-section > .container { padding-top: clamp(36px,4vw,58px); }
.economy-calculator-content .calculator-section .section-heading { margin-bottom: 34px; }
@media (max-width: 900px) {
  .economy-overview { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .economy-overview-heading { max-width: 62ch; }
  .economy-comparison-heading { grid-template-columns: minmax(0,1fr); align-items: start; gap: 24px; }
  .economy-comparison-heading .section-intro { max-width: 60ch; }
  .economy-preparation { gap: 32px; grid-template-columns: minmax(0,1fr) minmax(0,.95fr); }
}
@media (max-width: 650px) {
  .economy-overview { padding-top: 12px; }
  .economy-overview-heading .lead { font-size: 19px; }
  .economy-cost-parts li { grid-template-columns: 28px minmax(0,1fr); gap: 14px; }
  .economy-cost-parts h3 { font-size: 22px; }
  .economy-scope-table caption { padding: 15px 12px; font-size: 12px; }
  .economy-scope-table th, .economy-scope-table td { padding: 14px 12px; }
  .economy-scope-table thead th { font-size: 13px; }
  .economy-scope-table thead th:first-child { width: 36%; }
  .economy-scope-table tbody th, .economy-scope-table tbody td { font-size: 13px; line-height: 1.55; }
  .economy-increment { grid-template-columns: 38px minmax(0,1fr); gap: 15px; margin-top: 25px; }
  .economy-increment-mark { width: 38px; height: 38px; font-size: 22px; }
  .economy-increment h3 { font-size: 21px; }
  .economy-increment p { font-size: 15px; }
  .economy-preparation { grid-template-columns: minmax(0,1fr); gap: 34px; }
  .economy-prep-card { padding: 27px 24px; }
  .economy-calculator-reveal > summary { gap: 20px; padding-block: 29px; }
  .economy-tool-summary-copy > span:last-child { font-size: 15px; }
  .economy-tool-plus { flex-basis: 40px; width: 40px; height: 40px; font-size: 26px; }
}
@media (max-width: 370px) {
  .economy-scope-table th, .economy-scope-table td { padding-inline: 9px; }
  .economy-scope-table tbody th, .economy-scope-table tbody td { font-size: 12px; }
  .economy-calculator-reveal > summary { gap: 12px; }
  .economy-tool-plus { flex-basis: 34px; width: 34px; height: 34px; }
}

.economy-shortcuts { margin-top:-34px; padding-bottom:30px; }
@media(max-width:760px) { .economy-shortcuts { margin-top:-28px; padding-bottom:20px; } }
