.calculator-page{
  padding:30px 0 70px;
}

.calculator-page-width{
  width:min(820px,calc(100% - 40px));
  margin:auto;
}

.breadcrumb{
  display:flex;
  gap:8px;

  margin-bottom:27px;

  color:var(--quiet);

  font-size:12px;
}

.breadcrumb a:hover{
  color:var(--accent);
}

.calculator-title{
  margin-bottom:22px;
}

.calculator-title h1{
  margin:0;

  font-size:clamp(30px,4vw,40px);
  line-height:1.05;

  font-weight:540;
  letter-spacing:-.045em;
}

.calculator-title p{
  margin:8px 0 0;

  color:var(--muted);

  font-size:13px;
}


/* TOOL */

.mva-tool{
  overflow:hidden;

  border:1px solid var(--line);
  border-radius:14px;

  background:var(--surface);

  box-shadow:var(--shadow);
}

.mva-tabs{
  padding:6px;

  display:grid;
  grid-template-columns:repeat(3,1fr);

  gap:5px;

  border-bottom:1px solid var(--line);

  background:var(--surface-soft);
}

.mode-tab{
  min-height:40px;

  padding:7px 10px;

  border:0;
  border-radius:8px;

  background:transparent;
  color:var(--muted);

  cursor:pointer;

  font-size:12px;
  font-weight:450;
}

.mode-tab.active{
  background:var(--surface);
  color:var(--text);

  box-shadow:0 1px 3px rgba(0,0,0,.06);
}

.mva-body{
  padding:28px;
}


/* CONTROLS */

.mva-controls{
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:14px;
}

.mva-controls label{
  display:block;
}

.mva-controls label > span{
  display:block;

  margin-bottom:6px;

  color:var(--muted);

  font-size:12px;
}

.mva-controls input,
.mva-controls select{
  width:100%;
  height:46px;

  padding:0 12px;

  border:1px solid var(--line);
  border-radius:8px;

  outline:0;

  background:var(--bg);
  color:var(--text);

  font:inherit;
  font-size:13px;
  font-weight:500;
}

.mva-controls input:focus,
.mva-controls select:focus{
  border-color:var(--accent);

  box-shadow:
    0 0 0 3px
    color-mix(in srgb,var(--accent) 8%,transparent);
}

#custom-rate-wrap{
  grid-column:1 / -1;
}


/* RESULTS */

.mva-results{
  margin-top:25px;

  display:grid;
  grid-template-columns:1fr 1fr;

  border-left:3px solid var(--accent);

  background:var(--accent-soft);
}

.mva-results > div{
  min-height:92px;

  padding:18px 20px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  border-right:1px solid
    color-mix(in srgb,var(--accent) 12%,transparent);

  border-bottom:1px solid
    color-mix(in srgb,var(--accent) 12%,transparent);
}

.mva-results > div:nth-child(2n){
  border-right:0;
}

.mva-results > div:nth-last-child(-n+2){
  border-bottom:0;
}

.mva-results span{
  display:block;

  margin-bottom:6px;

  color:var(--muted);

  font-size:12px;
}

.mva-results strong{
  display:block;

  font-size:24px;
  line-height:1.1;

  font-weight:520;
  letter-spacing:-.035em;
}


/* FORMULA */

.formula-line{
  margin-top:15px;

  display:flex;
  justify-content:space-between;

  gap:20px;

  color:var(--quiet);

  font-size:12px;
}

.formula-line code{
  color:var(--muted);
}


/* CONTENT */

.calculator-content{
  max-width:680px;

  margin:48px auto 0;
}

.calculator-content h2{
  margin:35px 0 9px;

  font-size:20px;
  font-weight:520;

  letter-spacing:-.025em;
}

.calculator-content p{
  margin:0;

  color:var(--muted);

  font-size:13px;
  line-height:1.7;
}


/* FEEDBACK */

.feedback-note{
  margin-top:42px;
  padding:20px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:30px;

  border:1px solid var(--line);
  border-radius:11px;

  background:var(--surface);
}

.feedback-note strong{
  font-size:13px;
  font-weight:520;
}

.feedback-note p{
  max-width:430px;

  margin-top:4px;

  font-size:12px;
}

.feedback-note a{
  flex:0 0 auto;

  color:var(--accent);

  font-size:12px;
}


/* FAQ */

.calculator-faq{
  margin-top:42px;
  padding-top:34px;

  border-top:1px solid var(--line);
}

.calculator-faq-kicker{
  display:block;
  margin-bottom:8px;

  color:var(--accent);

  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}

.calculator-faq h2{
  margin:0 0 18px;

  font-size:22px;
  font-weight:520;
  letter-spacing:-.03em;
}

.calculator-faq details{
  border-top:1px solid var(--line);
}

.calculator-faq details:last-of-type{
  border-bottom:1px solid var(--line);
}

.calculator-faq summary{
  position:relative;

  padding:17px 34px 17px 0;

  cursor:pointer;
  list-style:none;

  font-size:13px;
  font-weight:520;
}

.calculator-faq summary::-webkit-details-marker{
  display:none;
}

.calculator-faq summary::after{
  content:"+";

  position:absolute;
  right:4px;
  top:50%;

  transform:translateY(-50%);

  color:var(--accent);

  font-size:20px;
  font-weight:300;
}

.calculator-faq details[open] summary::after{
  content:"−";
}

.calculator-faq details p{
  max-width:650px;

  margin:0 0 12px;
  padding-right:20px;

  color:var(--muted);

  font-size:12px;
  line-height:1.7;
}

.calculator-faq details code{
  display:inline-block;

  margin-bottom:18px;
  padding:7px 10px;

  border-radius:7px;

  background:var(--surface-soft);
  color:var(--text);

  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Consolas,
    monospace;

  font-size:12px;
}


/* MOBILE */

@media(max-width:620px){

  .calculator-page{
    padding-top:20px;
  }

  .calculator-page-width{
    width:calc(100% - 24px);
  }

  .breadcrumb{
    margin:0 3px 20px;
  }

  .calculator-title{
    padding:0 3px;
  }

  .calculator-title h1{
    font-size:29px;
  }

  .mva-tabs{
    display:flex;

    overflow-x:auto;

    padding:6px;

    scrollbar-width:none;
  }

  .mva-tabs::-webkit-scrollbar{
    display:none;
  }

  .mode-tab{
    flex:0 0 auto;
    min-width:145px;
  }

  .mva-body{
    padding:22px 15px;
  }

  .mva-controls{
    grid-template-columns:1fr;
  }

  #custom-rate-wrap{
    grid-column:auto;
  }

  .mva-results{
    grid-template-columns:1fr;
  }

  .mva-results > div,
  .mva-results > div:nth-child(2n),
  .mva-results > div:nth-last-child(-n+2){
    border-right:0;
    border-bottom:1px solid
      color-mix(in srgb,var(--accent) 12%,transparent);
  }

  .mva-results > div:last-child{
    border-bottom:0;
  }

  .mva-results strong{
    font-size:22px;
  }

  .formula-line{
    flex-direction:column;
    gap:4px;
  }

  .calculator-content{
    padding:0 4px;
    margin-top:38px;
  }

  .calculator-faq{
    margin-top:34px;
    padding-top:28px;
  }

  .calculator-faq h2{
    font-size:20px;
  }

  .calculator-faq summary{
    padding-top:15px;
    padding-bottom:15px;

    font-size:12px;
  }

  .feedback-note{
    align-items:flex-start;
    flex-direction:column;

    gap:12px;
  }

}


/* =========================================================
   FINAL ANSWER
   ========================================================= */

.mva-final-answer{
  margin-top:18px;
  padding:20px 22px;

  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);

  background:
    color-mix(in srgb,var(--accent-soft) 55%,var(--surface));
}

.mva-final-answer > span{
  display:block;

  margin-bottom:6px;

  color:var(--muted);

  font-size:12px;
  font-weight:600;

  text-transform:uppercase;
  letter-spacing:.08em;
}

.mva-final-answer strong{
  display:block;

  font-size:34px;
  line-height:1.05;

  font-weight:540;
  letter-spacing:-.04em;
}

.mva-final-answer p{
  margin:8px 0 0;

  color:var(--muted);

  font-size:12px;
  line-height:1.6;
}


@media(max-width:620px){

  .mva-final-answer{
    padding:18px;
  }

  .mva-final-answer strong{
    font-size:30px;
  }

}
