@charset "UTF-8";

/* CALCULATORS BUTTONS */

.THF_button {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: auto;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .625rem;
    line-height: 1.25;
    text-transform: uppercase;
    color: var(--black);
    background-color: rgba(24, 73, 99, .1);
    border: .0625rem solid rgba(8, 147, 205, .25);
    border-radius: 0.125rem;
    padding: 0.375rem 0.75rem;
    background-position: center;
    transition: background 0.8s;
}

.zoom-control button {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--black);
    font-size: 1.5rem;
    text-decoration: none;
    height: 1.375em;
    width: 1.375em;
    background-color: rgba(24, 73, 99, .1);
    border: .0625rem solid rgba(8, 147, 205, .25);
    border-radius: 50%;
    background-position: center;
    transition: background 0.8s;
}

.zoom-control button i {
    font-size: 1.25rem;
}

.THF_button:hover,
.zoom-control button:hover {
    background: rgba(24, 73, 99, .075) radial-gradient(circle, transparent 1%, rgba(24, 73, 99, .075) 1%) center/15000%;
}

.THF_button:active,
.zoom-control button:active {
    color: rgba(17, 29, 34, .8);
    background-color: var(--lime-web);
    background-size: 100%;
    transition: background 0s;
}

/* CALCULATORS CHECKBOX */

#checkboxOptions {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.heritage-icon-copy_clipboard {
    color: var(--white);
}

.heritage-checkbox * {
    box-sizing: border-box;
}

.heritage-checkbox input:not([type=checkbox]):not([type=radio]) {
    display: none;
}

.heritage-checkbox {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    line-height: 1;
    white-space: nowrap;
}

.heritage-checkbox input {
    position: absolute;
    left: 0;
    top: 0;
    min-width: 1em;
    width: 100%;
    height: 100%;
    z-index: 2;
    opacity: 0;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

.heritage-checkbox .state label {
    position: initial;
    display: inline-block;
    font-weight: 500;
    letter-spacing: .05rem;
    text-transform: uppercase;
    vertical-align: baseline;
    margin: 0;
    text-indent: 1.75em;
    min-width: calc(1em + 2px);
    color: var(--black);
}

.heritage-checkbox .state label:after,
.heritage-checkbox .state label:before {
    content: '';
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    display: block;
    box-sizing: border-box;
    border-radius: 0;
    border: .109375rem solid transparent;
    z-index: 0;
    position: absolute;
    left: 0;
    top: calc((0% - (100% - 1em)) - 8%);
    background-color: transparent;
}

.heritage-checkbox .state label:before {
    border-color: rgba(24, 73, 99, .4);
}

.heritage-checkbox .incidents label {
    position: initial;
    display: inline-block;
    font-weight: 500;
    letter-spacing: .05rem;
    text-transform: uppercase;
    vertical-align: baseline;
    margin: 0;
    min-width: calc(1em + 2px);
    color: var(--black);
}

.heritage-checkbox .state.thf-is-hover,
.heritage-checkbox .state.thf-is-indeterminate {
    display: none;
}

.heritage-checkbox.thf-icon .state .icon {
    position: absolute;
    font-size: 1em;
    width: calc(1em + 2px);
    height: calc(1em + 2px);
    left: 0;
    z-index: 1;
    text-align: center;
    line-height: normal;
    top: calc((0% - (100% - 1em)) - 8%);
    border: 1px solid transparent;
    background-color: var(--lime-web);
    opacity: 0;
}

.heritage-checkbox.thf-icon .state .icon:before {
    margin: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: .7rem;
    line-height: 1;
}

.heritage-checkbox.thf-icon input:checked~.state .icon {
    opacity: 1;
}

.heritage-checkbox.thf-icon input:checked~.state label:before {
    border-color: rgba(24, 73, 99, .4);
}

.heritage-checkbox.thf-plain.thf-plain .icon {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.heritage-checkbox.thf-round .state label:after,
.heritage-checkbox.thf-round .state label:before {
    border-radius: 100%;
}

.heritage-checkbox.thf-round.thf-icon .state .icon {
    border-radius: 100%;
    overflow: hidden;
}

.heritage-checkbox.thf-round.thf-icon .state .icon:before {
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
}

.heritage-checkbox.thf-smooth .icon,
.heritage-checkbox.thf-smooth label:after,
.heritage-checkbox.thf-smooth label:before {
    transition: all .5s ease;
}

.heritage-checkbox.thf-smooth input:checked+.state label:after {
    transition: all .3s ease;
}

.heritage-checkbox.thf-smooth input:checked+.state .icon {
    -webkit-animation: zoom .2s ease;
    animation: zoom .2s ease;
}

.heritage-checkbox.thf-smooth.thf-default input:checked+.state label:after {
    -webkit-animation: zoom .2s ease;
    animation: zoom .2s ease;
}

.heritage-checkbox.thf-smooth.thf-plain input:checked+.state label:before {
    content: '';
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    transition: all .5s ease;
}

/* CALCULATORS SELECT BOX */

/* id applies to select element itself, not a wrapper element */
#templateSelect {
    display: block;
    font-family: var(--font-family-sans-serif);
    font-weight: 400;
    font-size: 1rem;
    color: var(--black);
    line-height: 1.3;
    padding: .6em 1.4em .5em .8em;
    width: 100%;
    max-width: 100%;
    /* useful when width is set to anything other than 100% */
    box-sizing: border-box;
    margin: 0;
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: .125em;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    user-select: none;
    background-color: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    /* note: bg image below uses 2 urls. The first is an svg data uri for the arrow icon, and the second is the gradient. for the icon, if you want to change the color, be sure to use `%23` instead of `#`, since it's a url. You can also swap in a different svg icon or an external image reference */
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23c4d82d%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    background-repeat: no-repeat, repeat;
    /* arrow icon position (1em from the right, 50% vertical) , then gradient position*/
    background-position: right .7em top 50%, 0 0;
    /* icon size, then gradient */
    background-size: .65em auto, 100%;
    transition: all .3s ease-in-out;
}

/* Hide arrow icon in IE browsers */
#templateSelect::-ms-expand {
    display: none;
}

/* Hover style */
#templateSelect:hover {
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23111d22%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

/* Focus style */
#templateSelect:focus {
    border-color: rgba(0, 0, 0, .25);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    outline: none;
}

/* Set options to normal weight */
#templateSelect option {
    font-weight: normal;
}

/* Support for rtl text, explicit support for Arabic and Hebrew */
*[dir="rtl"] #templateSelect,
:root:lang(ar) #templateSelect,
:root:lang(iw) #templateSelect {
    background-position: left .7em top 50%, 0 0;
    padding: .6em .8em .5em 1.4em;
}

/* Disabled styles */
#templateSelect:disabled,
#templateSelect[aria-disabled=true] {
    color: graytext;
    background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22graytext%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(to bottom, rgba(24, 73, 97, .1) 0%, rgba(24, 73, 97, .1) 100%);
}

#templateSelect:disabled:hover,
#templateSelect[aria-disabled=true] {
    border-color: var(--lightgray);
}

/* CALCULATORS FORM */

.formInput {
    display: block;
    width: 100%;
    max-width: 100%;
    /* useful when width is set to anything other than 100% */
    height: calc(1.5em + 0.75rem + 2px);
    font-size: 1rem;
    line-height: 1.25;
    color: var(--black);
    background-color: var(--white);
    background-clip: padding-box;
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: .125em;
    padding: .375rem .75rem;
    box-sizing: border-box;
    margin: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(246, 246, 246, 0.5) 47%, rgba(237, 237, 237, 0.5) 100%);
    background-repeat: repeat;
    background-position: 0 0;
    background-size: 100%;
    transition: all .3s ease-in-out;
}

.formInput:hover {
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .1);
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.formInput:focus {
    border-color: rgba(0, 0, 0, .25);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    -moz-box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    box-shadow: 0px 0px 3px 1px rgba(196, 216, 45, .7);
    outline: none;
}

.formButton {
    width: auto;
    font-family: var(--font-family-sans-serif-alt);
    font-weight: 400;
    font-size: .625rem;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
    color: var(--black);
    background-color: rgba(24, 73, 99, .1);
    border: .0625rem solid rgba(8, 147, 205, .25);
    border-radius: .125rem;
    padding: .535rem 0.75rem;
    background-position: center;
    transition: background 0.8s;
}

.formButton:hover,
.formButton button:hover {
    background: rgba(24, 73, 99, .075) radial-gradient(circle, transparent 1%, rgba(24, 73, 99, .075) 1%) center/15000%;
}

.formButton:active,
.formButton button:active {
    color: rgba(17, 29, 34, .8);
    background-color: var(--lime-web);
    background-size: 100%;
    transition: background 0s;
}

/* CALCULATORS AUTOCOMPLETE */

.autocomplete-suggestions {
    text-align: left;
    cursor: default;
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-top: 0;
    border-bottom-left-radius: .125em;
    border-bottom-right-radius: .125em;
    background: var(--white);
    box-shadow: -1px 1px 3px rgba(0, 0, 0, .1);

    /* core styles should not be changed */
    position: absolute;
    display: none;
    z-index: 9999;
    max-height: 254px;
    overflow: hidden;
    overflow-y: auto;
    box-sizing: border-box;
}

.autocomplete-suggestion {
    position: relative;
    font-size: 1rem;
    line-height: 1.75;
    color: var(--black);
    padding: .5rem .75rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.autocomplete-suggestion b {
    font-weight: normal;
    color: var(--cyan-web);
}

.autocomplete-suggestion.selected {
    background: var(--xlightgray);
}

/* CALCULATORS RANGE SLIDER */

input[type=range] {
    height: 25px;
    -webkit-appearance: none;
    width: 100%;
    background-color: transparent;
}

input[type=range]:focus {
    outline: none;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 0px 0px 0px var(--black);
    background: var(--lightgray);
    border-radius: 5px;
    border: .0625rem solid rgba(0, 0, 0, .25);
}

input[type=range]::-webkit-slider-thumb {
    box-shadow: 0px 0px 0px #111D22;
    border: .0625rem solid var(--red-web);
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: rgba(237, 237, 237, 1);
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -7.5px;
}

input[type=range]::-webkit-slider-thumb:hover {
    background: rgba(255, 255, 255, 1);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    transition: all .1s ease-in-out;
}

input[type=range]::-webkit-slider-thumb:active {
    background: var(--lime-web);
    border-color: rgba(0, 0, 0, .25);
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: var(--lightgray);
}

input[type=range]::-moz-range-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    box-shadow: 0px 0px 0px var(--black);
    background: var(--lightgray);
    border-radius: 5px;
    border: .0625rem solid rgba(0, 0, 0, .25);
}

input[type=range]::-moz-range-thumb {
    box-shadow: 0px 0px 0px #111D22;
    border: .0625rem solid var(--red-web);
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: rgba(237, 237, 237, 1);
    cursor: pointer;
}

input[type=range]::-moz-range-thumb:hover {
    background: rgba(255, 255, 255, 1);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    transition: all .1s ease-in-out;
}

input[type=range]::-moz-range-thumb:active {
    background: var(--lime-web);
    border-color: rgba(0, 0, 0, .25);
}

input[type=range]::-ms-track {
    width: 100%;
    height: 5px;
    cursor: pointer;
    animate: 0.2s;
    background: transparent;
    border-color: transparent;
    color: transparent;
}

input[type=range]::-ms-fill-lower {
    background: var(--lightgray);
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: 10px;
    box-shadow: 0px 0px 0px var(--black);
}

input[type=range]::-ms-fill-upper {
    background: var(--lightgray);
    border: .0625rem solid rgba(0, 0, 0, .25);
    border-radius: 10px;
    box-shadow: 0px 0px 0px var(--black);
}

input[type=range]::-ms-thumb {
    margin-top: 1px;
    box-shadow: 0px 0px 0px #111D22;
    border: 1px solid var(--red-web);
    height: 18px;
    width: 18px;
    border-radius: 25px;
    background: rgba(237, 237, 237, 1);
    cursor: pointer;
}

input[type=range]::-ms-thumb:hover {
    background: rgba(255, 255, 255, 1);
    -webkit-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    -moz-box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    box-shadow: 0px 0px 3px 1px rgba(0, 0, 0, .15);
    transition: all .1s ease-in-out;
}

input[type=range]::-ms-thumb:active {
    background: var(--lime-web);
    border-color: rgba(0, 0, 0, .25);
}

input[type=range]:focus::-ms-fill-lower {
    background: var(--lightgray);
}

input[type=range]:focus::-ms-fill-upper {
    background: var(--lightgray);
}

/* RESPONSIVE STYLES */

@media all and (min-width: 1024px) {}

@media all and (max-width: 1200px) {}

@media all and (max-width: 1024px) {}

@media all and (max-width: 992px) {}

@media all and (max-width: 768px) {}

@media all and (max-width: 576px) {

    .THF_button {
        padding: 0.5rem 0.45rem;
        font-size: .5rem;
        line-height: 1;
    }

    .heritage-checkbox {
        font-size: .75rem;
    }

    .heritage-checkbox .state label {
        letter-spacing: normal;
        text-indent: 1.25rem;
    }

    .heritage-checkbox.thf-round.thf-icon .state .icon:before {
        -webkit-transform: scale(.6);
        -ms-transform: scale(.6);
        transform: scale(.6);
    }

}