.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3474 .elementor-element.elementor-element-1bd4d0c .elementor-button{background-color:#393B39;}.elementor-3474 .elementor-element.elementor-element-cc238a7 .elementor-button{background-color:#393B39;}.elementor-3474 .elementor-element.elementor-element-ebdd22d .elementor-button{background-color:#393B39;}.elementor-3474 .elementor-element.elementor-element-1a2a678 .elementor-button{background-color:#393B39;}.elementor-3474 .elementor-element.elementor-element-74998d8 .elementor-button{background-color:#393B39;}.elementor-3474 .elementor-element.elementor-element-75bfcf0 .elementor-button{background-color:#393B39;}/* Start custom CSS for html, class: .elementor-element-5785085 */:root{
  --primary:#007acc;
  --primary-dark:#005fa3;
  --card:#ffffff;
  --bg:#f0f4f8;
  --border:#d7e0ea;
  --muted:#5b6b7a;
}

/* NEW: consistent box model */
*{ box-sizing: border-box; }

body{font-family:Arial,Helvetica,sans-serif;margin:20px;background:var(--bg)}
.wrap{max-width:1100px;margin:0 auto}
.calculator{background:var(--card);border-radius:12px;box-shadow:0 10px 26px rgba(0,0,0,.08);padding:24px}
h1{margin:0 0 14px 0}
.grid{display:grid;grid-template-columns:320px 1fr;gap:24px}
.card{background:#fff;border:1px solid var(--border);border-radius:10px;padding:16px}
label{font-weight:bold;display:block;margin:8px 0 6px}
input,select,button{width:100%;font-size:16px;padding:10px;border:1px solid #bbb;border-radius:6px}
button{background:var(--primary);color:#fff;border:none;cursor:pointer}
button:hover{background:var(--primary-dark)}
.btn-secondary{background:#4CAF50}
.muted{color:var(--muted);font-size:13px}

/* UPDATED: make two-column rows perfectly equal */
.row-2{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)); /* equal widths */
  gap:10px;
  align-items:end; /* align bottoms even when labels wrap */
}
/* NEW: make paired inputs the same height */
.row-2 input, .row-2 select{ height:48px; }

/* OPTIONAL: normalize number inputs across browsers */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
input[type=number]{ -moz-appearance:textfield; }

.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 0}
.kpis .card h4{margin:0 0 6px;font-size:13px;color:#394957}
.kpis .val{font-weight:bold;font-size:18px}

/* two-column row: chart (wider) + table (narrower) */
.two-col{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-top:14px}
.chart-holder{height:480px}
#growthChart{height:100% !important;width:100%}

table{width:100%;border-collapse:collapse}
th,td{padding:10px 12px;border-bottom:1px solid #e7edf4;text-align:left}
th{background:#f7fafc;font-weight:bold}
tbody tr:last-child td{border-bottom:none}

#result{margin-top:8px;font-weight:bold}

@media(max-width:950px){
  .grid{grid-template-columns:1fr}
  .kpis{grid-template-columns:1fr 1fr}
  .two-col{grid-template-columns:1fr}
  .chart-holder{height:360px}
}/* End custom CSS */