/*
 * Junior Kotipathi Calculator
 * All selectors are scoped to .jkc-wrap to prevent theme/plugin CSS collisions.
 */
#jkc-calculator.jkc-wrap,
.jkc-wrap {
  --jkc-red: #ed3c22;
  --jkc-red-dark: #d91f26;
  --jkc-orange: #f5a623;
  --jkc-cream: #fff9ea;
  --jkc-cream-2: #fff2cf;
  --jkc-text: #292929;
  --jkc-muted: #6b6256;
  --jkc-border: #ead9ae;
  display: block !important;
  width: 100% !important;
  max-width: 1000px !important;
  margin: 30px auto !important;
  color: var(--jkc-text) !important;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  text-align: left !important;
  isolation: isolate !important;
  position: relative !important;
  direction: ltr !important;
  unicode-bidi: normal !important;
  clear: both !important;
}

/* Neutralize common theme/editor rules that target semantic elements inside content areas. */
#jkc-calculator.jkc-wrap h1,
#jkc-calculator.jkc-wrap h2,
#jkc-calculator.jkc-wrap h3,
#jkc-calculator.jkc-wrap h4,
#jkc-calculator.jkc-wrap h5,
#jkc-calculator.jkc-wrap h6,
#jkc-calculator.jkc-wrap p,
#jkc-calculator.jkc-wrap ul,
#jkc-calculator.jkc-wrap ol,
#jkc-calculator.jkc-wrap li,
#jkc-calculator.jkc-wrap section,
#jkc-calculator.jkc-wrap form,
#jkc-calculator.jkc-wrap label,
#jkc-calculator.jkc-wrap button {
  max-width: none !important;
  transform: none !important;
}

#jkc-calculator.jkc-wrap .jkc-card,
#jkc-calculator.jkc-wrap .jkc-card * {
  text-wrap: normal !important;
}

#jkc-calculator.jkc-wrap *,
.jkc-wrap * {
  box-sizing: border-box !important;
}

#jkc-calculator.jkc-wrap button,
#jkc-calculator.jkc-wrap input,
#jkc-calculator.jkc-wrap select,
#jkc-calculator.jkc-wrap textarea {
  font-family: inherit !important;
}

#jkc-calculator .jkc-card {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid var(--jkc-border) !important;
  border-left: 1px solid var(--jkc-border) !important;
  border-right: 1px solid var(--jkc-border) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: 0 14px 40px rgba(120,70,20,.10) !important;
}

#jkc-calculator .jkc-header {
  display: block !important;
  margin: 0 !important;
  padding: 30px 34px 27px !important;
  color: #fff !important;
  background: linear-gradient(120deg,var(--jkc-red),#f15a24 58%,var(--jkc-red-dark)) !important;
  border: 0 !important;
  border-bottom: 5px solid var(--jkc-orange) !important;
}
#jkc-calculator .jkc-kicker { margin: 0 0 7px !important; color:#fff !important; font-size:12px !important; font-weight:800 !important; letter-spacing:.09em !important; line-height:1.2 !important; }
#jkc-calculator h2 { margin:0 !important; padding:0 !important; color:#fff !important; font-size:clamp(27px,4vw,40px) !important; line-height:1.08 !important; font-weight:700 !important; }
#jkc-calculator .jkc-header p { margin:10px 0 0 !important; padding:0 !important; max-width:680px !important; color:#fff !important; opacity:.92 !important; font-size:15px !important; line-height:1.55 !important; }

#jkc-calculator .jkc-main {
  display:grid !important;
  grid-template-columns:1.05fr .95fr !important;
  gap:28px !important;
  margin:0 !important;
  padding:32px !important;
  border:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  background:#fff !important;
}

#jkc-calculator .jkc-controls {
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:24px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  background:transparent !important;
}
#jkc-calculator .jkc-field { display:block !important; margin:0 !important; padding:0 0 22px !important; border:0 !important; border-bottom:1px solid var(--jkc-border) !important; background:transparent !important; }
#jkc-calculator .jkc-label-row { display:flex !important; justify-content:space-between !important; align-items:center !important; gap:15px !important; margin:0 0 12px !important; padding:0 !important; border:0 !important; }
#jkc-calculator .jkc-label-row label { margin:0 !important; padding:0 !important; color:var(--jkc-text) !important; font-size:15px !important; font-weight:750 !important; }
#jkc-calculator .jkc-label-row strong { margin:0 !important; padding:0 !important; color:var(--jkc-red) !important; font-size:17px !important; font-weight:800 !important; }

/* Hard reset for range inputs to defeat theme/plugin rules. */
#jkc-calculator input.jkc-range[type="range"],
#jkc-calculator input.jkc-range[type="range"]:focus,
#jkc-calculator input.jkc-range[type="range"]:active {
  -webkit-appearance:none !important;
  appearance:none !important;
  display:block !important;
  width:100% !important;
  height:22px !important;
  min-height:22px !important;
  margin:8px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  color:var(--jkc-red) !important;
  cursor:pointer !important;
  opacity:1 !important;
}
#jkc-calculator input.jkc-range[type="range"]::-webkit-slider-runnable-track {
  width:100% !important;
  height:7px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--jkc-red),var(--jkc-orange)) !important;
}
#jkc-calculator input.jkc-range[type="range"]::-webkit-slider-thumb {
  -webkit-appearance:none !important;
  appearance:none !important;
  width:22px !important;
  height:22px !important;
  margin:-7px 0 0 !important;
  padding:0 !important;
  border:3px solid #fff !important;
  border-radius:50% !important;
  background:var(--jkc-red) !important;
  box-shadow:0 2px 8px rgba(0,0,0,.18) !important;
}
#jkc-calculator input.jkc-range[type="range"]::-moz-range-track {
  width:100% !important;
  height:7px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,var(--jkc-red),var(--jkc-orange)) !important;
}
#jkc-calculator input.jkc-range[type="range"]::-moz-range-progress {
  height:7px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--jkc-red) !important;
}
#jkc-calculator input.jkc-range[type="range"]::-moz-range-thumb {
  width:16px !important;
  height:16px !important;
  border:3px solid #fff !important;
  border-radius:50% !important;
  background:var(--jkc-red) !important;
  box-shadow:0 2px 8px rgba(0,0,0,.18) !important;
}
#jkc-calculator input.jkc-range[type="range"]::-ms-track { width:100% !important; height:7px !important; border:0 !important; color:transparent !important; background:transparent !important; }
#jkc-calculator input.jkc-range[type="range"]::-ms-fill-lower,
#jkc-calculator input.jkc-range[type="range"]::-ms-fill-upper { height:7px !important; border:0 !important; border-radius:999px !important; background:var(--jkc-orange) !important; }
#jkc-calculator input.jkc-range[type="range"]::-ms-thumb { width:18px !important; height:18px !important; border:3px solid #fff !important; border-radius:50% !important; background:var(--jkc-red) !important; }

#jkc-calculator .jkc-range-labels { display:flex !important; justify-content:space-between !important; gap:12px !important; margin:7px 0 0 !important; padding:0 !important; color:var(--jkc-muted) !important; font-size:12px !important; line-height:1.3 !important; }
#jkc-calculator .jkc-range-labels span { margin:0 !important; padding:0 !important; color:inherit !important; }

#jkc-calculator .jkc-rate-box { display:flex !important; justify-content:space-between !important; align-items:center !important; min-height:54px !important; margin:0 !important; padding:0 15px !important; border:1px solid var(--jkc-border) !important; border-radius:12px !important; background:var(--jkc-cream) !important; }
#jkc-calculator .jkc-rate-box span { color:var(--jkc-text) !important; font-size:15px !important; }
#jkc-calculator .jkc-rate-box strong { color:var(--jkc-red) !important; font-size:18px !important; }

#jkc-calculator .jkc-result { display:block !important; margin:0 !important; padding:30px !important; border:1px solid var(--jkc-border) !important; border-radius:20px !important; background:linear-gradient(145deg,var(--jkc-cream),var(--jkc-cream-2)) !important; text-align:center !important; }
#jkc-calculator .jkc-result-label { display:block !important; margin:0 !important; color:var(--jkc-muted) !important; font-size:14px !important; font-weight:750 !important; }
#jkc-calculator .jkc-result-value { display:block !important; margin:9px 0 0 !important; padding:0 !important; color:var(--jkc-red) !important; font-size:clamp(36px,5vw,54px) !important; line-height:1.05 !important; font-weight:850 !important; letter-spacing:-.03em !important; }
#jkc-calculator .jkc-result-note { display:block !important; margin:9px 0 0 !important; color:var(--jkc-muted) !important; font-size:12px !important; }
#jkc-calculator .jkc-summary { display:block !important; margin:25px 0 0 !important; padding:0 !important; border:0 !important; border-top:1px solid var(--jkc-border) !important; text-align:left !important; }
#jkc-calculator .jkc-summary > div { display:flex !important; justify-content:space-between !important; gap:12px !important; margin:0 !important; padding:12px 0 !important; border:0 !important; border-bottom:1px solid var(--jkc-border) !important; font-size:13px !important; }
#jkc-calculator .jkc-summary span { color:var(--jkc-muted) !important; }
#jkc-calculator .jkc-summary strong { color:var(--jkc-text) !important; text-align:right !important; }
#jkc-calculator .jkc-cta { display:block !important; width:100% !important; min-height:52px !important; margin:20px 0 0 !important; padding:0 20px !important; border:0 !important; border-radius:12px !important; color:#fff !important; background:linear-gradient(90deg,var(--jkc-red),#f15a24) !important; font-size:15px !important; font-weight:800 !important; line-height:1 !important; cursor:pointer !important; box-shadow:0 7px 18px rgba(237,60,34,.18) !important; }
#jkc-calculator .jkc-cta:hover { filter:brightness(.96) !important; }
#jkc-calculator .jkc-cta:focus-visible { outline:3px solid rgba(245,166,35,.45) !important; outline-offset:2px !important; }

#jkc-calculator .jkc-form-panel { display:block; margin:0; padding:30px 32px; background:#fffdf7; border:0; border-top:1px solid var(--jkc-border); }
#jkc-calculator .jkc-form-panel[hidden] { display:none !important; }
#jkc-calculator .jkc-form-heading h3 { margin:0 !important; padding:0 !important; color:var(--jkc-text) !important; font-size:25px !important; line-height:1.2 !important; }
#jkc-calculator .jkc-form-heading p { margin:6px 0 20px !important; padding:0 !important; color:var(--jkc-muted) !important; font-size:14px !important; }
#jkc-calculator .jkc-selected-plan { margin:0 0 20px !important; padding:13px 15px !important; border:1px solid var(--jkc-border) !important; border-radius:12px !important; background:var(--jkc-cream-2) !important; color:#513a18 !important; font-size:14px !important; font-weight:750 !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7,
#jkc-calculator .jkc-cf7-wrap .wpcf7 form { box-sizing:border-box !important; width:100% !important; max-width:none !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7 form > p,
#jkc-calculator .jkc-cf7-wrap .wpcf7 form > div,
#jkc-calculator .jkc-cf7-wrap .wpcf7 form > label { max-width:none !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-form-control-wrap { display:block !important; width:100% !important; margin:0 !important; padding:0 !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-form-control { box-sizing:border-box !important; }

#jkc-calculator .jkc-cf7-wrap .wpcf7 { margin:0 !important; padding:0 !important; }
#jkc-calculator .jkc-cf7-grid { display:grid !important; grid-template-columns:1fr 1fr !important; gap:18px !important; }
#jkc-calculator .jkc-cf7-wrap p { margin:0 0 18px !important; padding:0 !important; }
#jkc-calculator .jkc-cf7-wrap label { display:block !important; margin:0 !important; padding:0 !important; color:var(--jkc-text) !important; font-size:14px !important; font-weight:750 !important; }
#jkc-calculator .jkc-cf7-wrap input[type="text"],
#jkc-calculator .jkc-cf7-wrap input[type="tel"],
#jkc-calculator .jkc-cf7-wrap select { display:block !important; width:100% !important; min-height:52px !important; height:auto !important; margin:7px 0 0 !important; padding:0 14px !important; border:1px solid var(--jkc-border) !important; border-radius:12px !important; background:#fff !important; color:var(--jkc-text) !important; font-size:16px !important; line-height:1.2 !important; outline:none !important; box-shadow:none !important; }
#jkc-calculator .jkc-cf7-wrap input:focus, #jkc-calculator .jkc-cf7-wrap select:focus { border-color:var(--jkc-red) !important; box-shadow:0 0 0 3px rgba(237,60,34,.11) !important; }
#jkc-calculator .jkc-cf7-wrap select:disabled { opacity:.55 !important; background:#f4f1e8 !important; }
#jkc-calculator .jkc-cf7-location-title { margin-bottom:8px !important; font-size:14px !important; font-weight:750 !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-list-item { margin:0 18px 0 0 !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-list-item label { display:inline-flex !important; align-items:center !important; gap:7px !important; font-weight:650 !important; }
#jkc-calculator .jkc-cf7-wrap input[type="radio"], #jkc-calculator .jkc-cf7-wrap input[type="checkbox"] { width:auto !important; min-height:0 !important; height:auto !important; margin:0 !important; accent-color:var(--jkc-red) !important; }
#jkc-calculator .jkc-cf7-submit { display:block !important; min-height:52px !important; width:100% !important; margin:0 !important; padding:0 20px !important; border:0 !important; border-radius:12px !important; color:#fff !important; background:linear-gradient(90deg,var(--jkc-red),#f15a24) !important; font-size:15px !important; font-weight:800 !important; line-height:1 !important; cursor:pointer !important; box-shadow:0 7px 18px rgba(237,60,34,.18) !important; }
#jkc-calculator .jkc-cf7-submit:hover { filter:brightness(.96) !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-acceptance { color:var(--jkc-muted) !important; font-size:13px !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-not-valid-tip { margin-top:5px !important; color:#b42318 !important; font-size:12px !important; }
#jkc-calculator .jkc-cf7-wrap .wpcf7-response-output { margin:18px 0 0 !important; padding:12px 14px !important; border-radius:10px !important; font-size:13px !important; }
#jkc-calculator .jkc-cf7-missing { margin:0 !important; padding:18px !important; border:1px solid #e7c8c2 !important; border-radius:12px !important; background:#fff3f1 !important; color:#6e241b !important; }
#jkc-calculator .jkc-cf7-missing p { margin:8px 0 0 !important; }
#jkc-calculator .jkc-footnote { margin:0 !important; padding:18px 32px 22px !important; border:0 !important; border-top:1px solid var(--jkc-border) !important; color:var(--jkc-muted) !important; font-size:11px !important; line-height:1.55 !important; }

@media (max-width:760px) {
  #jkc-calculator .jkc-main { grid-template-columns:1fr !important; padding:22px !important; }
  #jkc-calculator .jkc-header { padding:25px 22px 23px !important; }
  #jkc-calculator .jkc-result { padding:25px 20px !important; }
  #jkc-calculator .jkc-form-panel { padding:25px 22px !important; }
  #jkc-calculator .jkc-cf7-grid { grid-template-columns:1fr !important; gap:0 !important; }
  #jkc-calculator .jkc-footnote { padding:17px 22px 22px !important; }
}
