.bgooba-calculator {
    box-sizing: border-box;
    width: 100%;
    max-width: 980px;
    border: 1px solid #e1e4e2;
    border-radius: 0;
    background: #fff;
    color: #273d3a;
    overflow: hidden;
}

.bgooba-calculator *,
.bgooba-calculator *::before,
.bgooba-calculator *::after {
    box-sizing: inherit;
}

.bgooba-calculator__body { padding: clamp(1.25rem, 4vw, 2.5rem); }
.bgooba-calculator__title { margin: 0 0 .5rem; color: var(--bgooba-primary-colour, #04447c); }
.bgooba-calculator__intro { margin: 0 0 1.5rem; }
.bgooba-calculator__form { display: grid; gap: 1rem; }
.bgooba-calculator__field { display: grid; gap: .4rem; }
.bgooba-calculator__field label { font-weight: 600; }
.bgooba-calculator__field select,
.bgooba-calculator__field > input:not([type="checkbox"]) { width: 100%; min-height: 44px; padding: .65rem .75rem; border: 1px solid #d9ddd8; border-radius: 12px; background: #eef0ed; color: var(--bgooba-accent-colour, #24ac4c); font: inherit; }
.bgooba-calculator__checkbox { grid-template-columns: auto 1fr; align-items: center; }
.bgooba-calculator__checkbox input { width: 1.1rem; height: 1.1rem; margin: 0; }
.bgooba-calculator__money { display: flex; align-items: center; border: 1px solid #d9ddd8; border-radius: 12px; background: #eef0ed; }
.bgooba-calculator__money > span { padding-left: .75rem; color: var(--bgooba-accent-colour, #24ac4c); }
.bgooba-calculator__money input { width: 100%; min-height: 44px; padding: .65rem .75rem .65rem .35rem; border: 0; background: transparent; font: inherit; }
.bgooba-calculator__money input:focus { outline: 0; box-shadow: none; }
.bgooba-calculator__money:focus-within { outline: 2px solid currentColor; outline-offset: 2px; }
.bgooba-calculator input[type="number"] { appearance: textfield; -moz-appearance: textfield; }
.bgooba-calculator input[type="number"]::-webkit-inner-spin-button,
.bgooba-calculator input[type="number"]::-webkit-outer-spin-button { margin: 0; -webkit-appearance: none; }
.bgooba-calculator__submit { justify-self: start; min-height: 44px; padding: .7rem 2rem; border: 0; border-radius: 999px; background: var(--bgooba-accent-colour, #24ac4c); color: #fff; cursor: pointer; font: inherit; font-weight: 700; text-transform: uppercase; }
.bgooba-calculator__submit:disabled { cursor: wait; opacity: .65; }
.bgooba-calculator__result { margin-top: 1.25rem; padding: clamp(1.25rem, 3vw, 2rem); border: 0; border-radius: 14px; background: var(--bgooba-primary-colour, #04447c); color: #fff; }
.bgooba-calculator__result--error { color: #8a2424; }
.bgooba-calculator__results-list { margin: 0; }
.bgooba-calculator__result-group + .bgooba-calculator__result-group { margin-top: 1.5rem; }
.bgooba-calculator__result-group h3 { margin: 0 0 .4rem; font-size: 1.15rem; }
.bgooba-calculator__result-row { display: grid; gap: .2rem; padding: .85rem 0; border-bottom: 1px solid rgba(255, 255, 255, .3); }
.bgooba-calculator__result-row:last-child { border-bottom: 0; }
.bgooba-calculator__result-row dt { font-size: 1.05rem; font-weight: 700; }
.bgooba-calculator__result-row dd { margin: 0; font-size: clamp(1.75rem, 4vw, 2.35rem); font-weight: 400; line-height: 1.15; text-align: left; overflow-wrap: anywhere; }
.bgooba-calculator__result-row--total { margin-top: .25rem; border-top: 2px solid currentColor; border-bottom: 0; font-size: 1.05em; }
.bgooba-calculator__overall-total { margin-top: 1.5rem; padding: .25rem .75rem; background: rgba(255, 255, 255, .12); font-size: 1.1rem; }
.bgooba-calculator__api-message { margin: 1rem 0 0; color: #8a2424; }
.bgooba-calculator__interest-rate { font-size: 2rem; font-weight: 700; }

@media (min-width: 760px) {
    .bgooba-calculator:not([data-calculator="interest-rate"]) .bgooba-calculator__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 1fr); column-gap: 1.75rem; }
    .bgooba-calculator__title,
    .bgooba-calculator__intro { grid-column: 1 / -1; }
    .bgooba-calculator__result { margin-top: 0; align-self: start; min-height: 100%; }
}

@media (max-width: 600px) {
    .bgooba-calculator__body { padding: 1.25rem; }
}
