/** Shopify CDN: Minification failed

Line 54:4 Unexpected "}"
Line 164:2 Unexpected "}"

**/
:root{
    --bg:#fbf7f2;
    --panel:#ffffff;
    --ink:#0f172a;
    --muted:#64748b;
    --ring:#e5e7eb;
    --accent:#d97706;
    --pill:#fff7ed;
    --tint:#fffaf1;
    --shadow:0 1px 2px rgba(0,0,0,.04),0 12px 30px rgba(2,6,23,.06);
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
  .container{max-width:1200px;margin:40px auto;padding:0 16px}
  h1{font-size:40px;font-weight:700;margin:0 0 8px}
  .sub{color:var(--muted);margin:0 0 20px;font-size:14px}
  .columns{display:grid;grid-template-columns:1fr;gap:20px;align-items:start}
  @media(min-width:900px){.columns{grid-template-columns:520px minmax(0,1fr)}}

  .section{background:var(--panel);border:1px solid var(--ring);border-radius:18px;box-shadow:var(--shadow)}
  .section-body{padding:20px}
  .section-title{font-size:16px;font-weight:600;margin:0 0 14px}

  .grid2{display:grid;grid-template-columns:1fr;gap:14px}
  @media(min-width:700px){.grid2{grid-template-columns:1fr 1fr}}

  label{font-size:13px;color:var(--muted);display:block;margin-bottom:6px}
  input,select{width:100%;padding:10px 12px;border:1px solid var(--ring);border-radius:12px;background:#fff;color:#111;box-shadow:0 1px 0 rgba(0,0,0,.02) inset}

  .btns{display:flex;gap:10px;margin-top:12px}
  button{appearance:none;border:0;padding:12px 16px;border-radius:14px;font-weight:700;cursor:pointer}
  #calcBtn{background:var(--accent);color:#fff;box-shadow:0 4px 14px rgba(217,119,6,.25)}
  #resetBtn{background:#fff;border:1px solid var(--ring)}

  /* Chips */
  .addons.chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}
  
  .chip{display:flex;align-items:center;justify-content:flex-start;gap:10px;border:1px solid var(--ring);border-radius:12px;padding:10px 12px;background:#fff;cursor:pointer;user-select:none;box-shadow:0 1px 2px rgba(0,0,0,.04);width:100%;min-width:0} /* chip width fix */
  .chip:hover{box-shadow:0 2px 6px rgba(0,0,0,.06)}
  .chip input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid #cbd5e1;border-radius:5px;background:#fff;position:relative;margin-right:6px}
  .chip input:checked{background:#10b981;border-color:#10b981}
  .chip input:checked::after{content:"";position:absolute;left:4px;top:1px;width:6px;height:10px;border:2px solid #fff;border-top:0;border-left:0;transform:rotate(45deg)}
  .chip-text{font-size:13px;color:#0f172a;flex:1;min-width:0;white-space:normal;overflow:visible;text-overflow:clip}
  
  .chip{gap:10px}
  
    .chip{flex-wrap:wrap}
    }

  /* Sliders */
  .slider-rows{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;align-items:start}
  @media(max-width:700px){.slider-rows{grid-template-columns:1fr}}
  .slider-row.disabled{display:none}
  .slider-row label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}
  .slider-wrap{display:flex;align-items:center;gap:10px}
  .slider-wrap input[type=range]{flex:1}
  .slider-wrap output{font-size:12px;color:#0f172a;font-weight:600;background:#f1f5f9;border:1px solid var(--ring);padding:2px 8px;border-radius:999px;min-width:48px;text-align:center}

  /* Recommendation card */
  .rec{background:linear-gradient(180deg,var(--tint),#fff);border:2px solid var(--ring);border-left:8px solid var(--accent);border-radius:18px;padding:28px;margin-top:26px;min-height:420px;box-shadow:var(--shadow);overflow:hidden}
  .rec-title{font-size:18px;font-weight:800}
  .rec-sub{font-size:13px;margin-top:2px;color:var(--muted)}
  .rec-lead{font-size:15px;font-weight:600;margin:12px 0}

  /* Plan cards */
  .plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}
  .plan-card{background:#fff;border:1px solid var(--ring);border-radius:14px;padding:14px 16px;text-align:center;box-shadow:0 2px 6px rgba(0,0,0,.06);min-height:110px;display:flex;flex-direction:column;justify-content:center}
  .plan-title{font-weight:700;font-size:12px;letter-spacing:.02em;text-transform:uppercase;color:#475569}
  .plan-price{font-size:24px;font-weight:800;line-height:1.2;margin-top:6px}
  .plan-unit{font-size:12px;color:var(--muted);margin-top:4px}
  .hydrowind{border-top:5px solid #059669}
  .solarwind{border-top:5px solid #d97706}
  .allsolar{border-top:5px solid #dc2626}

  /* Results cards */
  .cards{display:grid;grid-template-columns:1fr;gap:12px}
  @media(min-width:900px){.cards{grid-template-columns:1fr 1fr}}
  .card{background:#fff;border:1px solid var(--ring);border-radius:16px;padding:14px}
  .full{grid-column:1 / -1}
  .label{font-size:12px;font-weight:700;color:#64748b;letter-spacing:.02em;text-transform:uppercase}
  .metric{font-size:26px;font-weight:800;margin-top:4px}
  .muted{color:var(--muted);font-size:12px}
  canvas{max-height:260px}
  #supportChart{margin-top:14px; display:block}

  .slider-wrap input[type=range]{flex:1}
  .slider-wrap output{min-width:52px;text-align:center}

  .help{font-size:12px;color:var(--muted);margin-left:6px;cursor:help;user-select:none}

.support-note{text-align:center;font-size:18px;font-weight:800;color:#0f172a;margin-top:10px}

  /* Prominent, centered support note */
  #supportNote{ text-align:center; font-size:16px; font-weight:800; margin-top:10px; }
  #supportNote .ren{ color:#059669; }   /* renewable accent */
  #supportNote .non{ color:#374151; }   /* non‑renewable accent */

  /* Icons above the support note */
  #supportIcons{display:flex;justify-content:center;gap:28px;margin-top:8px}
  #supportIcons .icon-block{display:flex;flex-direction:column;align-items:center}
  #supportIcons svg{width:48px;height:48px}
  .ren-icon{fill:#059669}
  .non-icon{fill:#374151}
  #supportIcons .icon-caption{font-size:20px;color:var(--muted);margin-top:4px}

  /* Large percentages under icons; hide old note */
  #supportIcons .icon-percent{font-size:32px;font-weight:800;margin-top:6px}
  #supportIcons .icon-percent.ren{color:#059669}
  #supportIcons .icon-percent.non{color:#374151}
  #supportNote{display:none !important}

  
  .state-renew{ border-left:4px solid #059669; }

  /* card link style */
  .card a{color:#2563eb;text-decoration:underline}

  

  /* Range inputs *//* Section spacing & columns gap */
  .columns{ gap: 20px }
  .section-title{ margin-bottom: 16px }

  /* Sustainable Choice card breathing room */
  .rec{ margin-top: 26px; }

  /* Icons/percent under chart spacing */
  

  /* Sustainable Choice slider UX improvements */
  .sc-control{display:flex;align-items:center;gap:10px;margin-top:10px}
  .sc-btn{background:#fff;border:1px solid var(--ring);border-radius:10px;padding:8px 12px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.04)}
  .sc-btn:active{transform:translateY(1px)}
  #scSlider{flex:1;height:36px}
  #scSlider::-webkit-slider-runnable-track{height:8px;background:#e5e7eb;border-radius:999px}
  #scSlider::-webkit-slider-thumb{-webkit-appearance:none;margin-top:-8px;height:22px;width:22px;border-radius:999px;background:#d97706;border:2px solid #fff;box-shadow:0 1px 3px rgba(0,0,0,.25)}
  #scSlider::-moz-range-track{height:8px;background:#e5e7eb;border-radius:999px}
  #scSlider::-moz-range-thumb{height:22px;width:22px;border:2px solid #fff;border-radius:999px;background:#d97706;box-shadow:0 1px 3px rgba(0,0,0,.25)}
  .sc-ticks{display:grid;gap:0 6px;margin-top:8px;margin-bottom:6px;font-size:12px;color:#64748b;user-select:none}
  .sc-ticks .tick{display:block;text-align:center;cursor:pointer;padding:2px 0;border-radius:6px}
  .sc-ticks .tick.active{color:#b45309;font-weight:700;background:#fff7ed}

  /* ----- Print styles for PDF export ----- */
  
    a[href]:after { content: none !important; }
    * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    body { background: #fff; }
    .container { max-width: 100%; margin: 0; padding: 0 12px; }
    .btns, .rec-sub .sc-ticks, .sc-btn { display:none !important; } /* hide controls */
    .print-only { display:block !important; }
    .section { box-shadow: none !important; }
    .rec { box-shadow: none !important; }
    .columns { gap: 16px !important; grid-template-columns: 1fr 1fr !important; }
    .cards { grid-template-columns: 1fr 1fr !important; }
    .full { grid-column: 1 / -1 !important; }
    .section, .card { break-inside: avoid; page-break-inside: avoid; }
    h1 { margin-top: 8px; }
  }
/* ---- Namespaced button group: avoids theme .btns conflicts ---- */
.bec-actions{
  display:flex !important;
  gap:12px;
  margin:18px 0 20px;
  align-items:center;
  position:relative;
  z-index: 10;
}

/* Some themes add chevrons via ::before/::after on generic .btns containers */
.bec-actions::before,
.bec-actions::after{
  content:none !important;
  display:none !important;
}

.bec-button{
  display:inline-flex !important;
  align-items:center; justify-content:center;
  padding:12px 16px;
  border-radius:14px;
  font-weight:700; line-height:1;
  text-decoration:none;
  border:0 !important;
  pointer-events:auto !important;
  opacity:1 !important; visibility:visible !important;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}

.bec-button--primary{
  background:#d97706 !important; color:#fff !important;
  box-shadow:0 4px 14px rgba(217,119,6,.25);
}

.bec-button--secondary{
  background:#fff !important; color:#0f172a !important;
  border:1px solid #e5e7eb !important;
}

/* Ensure surrounding containers never clip them */
.section, .section-body, .rec{
  position:relative;
  overflow:visible !important;
}
/* --- Extra spacing for Inputs and Buttons --- */
.section .grid2{ margin-bottom:12px; }                 /* below the main inputs grid */
.section .addons.chips{ margin-bottom:12px; }          /* below the equipment toggles */
.section .slider-rows{ margin-bottom:12px; }           /* below the area sliders */

.bec-actions{ margin-top:18px; margin-bottom:28px !important; }  /* below Calc/Reset */

.rec{ margin-top:22px; }                                /* top gap before the Recommendation card */
.sc-control{ display:flex !important; align-items:center; gap:10px; margin-top:10px }
.sc-btn{
  display:inline-flex !important; align-items:center; justify-content:center;
  background:#fff; border:1px solid #e5e7eb; border-radius:10px;
  padding:8px 12px; font-weight:800; line-height:1; cursor:pointer;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.sc-btn:active{ transform:translateY(1px) }
#scSlider{ flex:1; height:36px }
.sc-ticks{ display:grid; gap:0 6px; margin-top:8px; margin-bottom:6px; font-size:12px; color:#64748b; user-select:none }
.sc-ticks .tick{ text-align:center; cursor:pointer; padding:2px 0; border-radius:6px }
.sc-ticks .tick.active{ color:#b45309; font-weight:700; background:#fff7ed }
/* ---- Fix SC slider thumb centering and override theme defaults ---- */
#scSlider{
  -webkit-appearance: none !important;
  appearance: none !important;
  height: 36px;            /* container height */
  background: transparent; /* no blue bar */
  width: 100%;
}

/* WebKit (Chrome/Safari/Edge) */
#scSlider::-webkit-slider-runnable-track{
  height: 8px;
  background: #e5e7eb;
  border-radius: 999px;
}
#scSlider::-webkit-slider-thumb{
  -webkit-appearance: none;
  width: 22px; height: 22px;
  border-radius: 50%;
  background: #d97706;
  border: 2px solid #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.25);
  /* Center thumb on the 8px track: (track - thumb)/2 = (8 - 22)/2 = -7px */
  margin-top: calc((8px - 22px) / 2);
}

/* Firefox */
#scSlider::-moz-range-track{
  height: 8px;
  background: #e5e7eb;
  border-radius: 999px;
}
#scSlider::-moz-range-thumb{
  width: 22px; height: 22px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #d97706;
  box-shadow: 0 1px 3px rgba(0,0,0,.25);
}

/* Just in case any theme utility sets borders/outlines/padding */
#scSlider { border: 0 !important; outline: none; padding: 0; }
/* ===== Mobile polish for Business Energy Estimator ===== */

/* Prevent any sideways scrolling */
.container{ overflow-x:hidden; }

/* Title */
.container > h1{ font-size:24px; line-height:1.2; }
@media (min-width:700px){ .container > h1{ font-size:30px; } }

/* Inputs grid & controls */
.grid2{ grid-template-columns:1fr !important; gap:12px; }
@media (min-width:700px){ .grid2{ grid-template-columns:1fr 1fr !important; gap:14px; } }

.addons.chips{
  grid-template-columns:repeat(auto-fit, minmax(160px, 1fr)) !important;
  gap:10px;
}

/* Area sliders stack nicely */
.slider-rows{ grid-template-columns:1fr !important; gap:12px; }
@media (min-width:700px){ .slider-rows{ grid-template-columns:1fr 1fr !important; } }

/* Buttons become full width on phones */
.bec-actions{ flex-wrap:wrap; gap:10px; }
@media (max-width:480px){
  .bec-actions .bec-button{ width:100%; justify-content:center; }
}

/* Recommendation (Sustainable Choice) card */
.rec{ padding:18px; }
@media (min-width:700px){ .rec{ padding:24px; } }

/* ± slider row can wrap on small screens */
.sc-control{ flex-wrap:wrap; }
.sc-control #scSlider{ min-width:200px; }
@media (max-width:420px){
  .sc-control #scSlider{ min-width:140px; }
}

/* Tick labels: allow scroll instead of wrapping to 2 lines */
.sc-ticks{
  display:grid;
  overflow-x:auto;
  white-space:nowrap;
  scrollbar-width:none;      /* Firefox */
}
.sc-ticks::-webkit-scrollbar{ display:none; }   /* WebKit */

/* Plan cards stack (1 → 2 → 3 cols) */
.plan-grid{ grid-template-columns:1fr !important; gap:12px; }
@media (min-width:520px){ .plan-grid{ grid-template-columns:1fr 1fr !important; } }
@media (min-width:900px){ .plan-grid{ grid-template-columns:repeat(3,1fr) !important; } }

/* Results cards: single column on phones */
.cards{ grid-template-columns:1fr !important; gap:12px; }
@media (min-width:900px){ .cards{ grid-template-columns:1fr 1fr !important; } }

/* Chart height & spacing on mobile */
#supportChart{ max-height:220px; }
@media (max-width:480px){ #supportChart{ max-height:180px; } }
#supportIcons .icon-percent{ font-size:22px; }
@media (min-width:700px){ #supportIcons .icon-percent{ font-size:32px; } }

/* Reduce rounding/padding on small screens to win space */
.section{ border-radius:14px; }
.section-body{ padding:16px; }
@media (min-width:700px){
  .section-body{ padding:20px; }
}

/* Improve touch experience */
* { -webkit-tap-highlight-color: rgba(0,0,0,0); }
input, select, button { font-size:16px; } /* avoids zoom on iOS */
/* ===== Force single-column on mobile & prevent cut-off ===== */
@media (max-width: 900px){
  /* Kill any theme flex/2-col overrides */
  .columns{
    display:block !important;
    grid-template-columns:1fr !important;
  }
  /* Ensure each section spans full width and can shrink */
  .columns > .section{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  /* Avoid hidden overflow from parent wrappers */
  .container, .columns, .section{
    overflow:visible !important;
  }
}

/* If any ancestor sets flex that constrains width, allow children to shrink */
.columns, .columns * { min-width: 0; }
/* ===== Force single-column on mobile & prevent cut-off ===== */
@media (max-width: 900px){
  /* Kill any theme flex/2-col overrides */
  .columns{
    display:block !important;
    grid-template-columns:1fr !important;
  }
  /* Ensure each section spans full width and can shrink */
  .columns > .section{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  /* Avoid hidden overflow from parent wrappers */
  .container, .columns, .section{
    overflow:visible !important;
  }
}

/* If any ancestor sets flex that constrains width, allow children to shrink */
.columns, .columns * { min-width: 0; }
