
.calculator .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.calculator .col-12
 {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
	text-align: center;
}

.calculator .col-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%
}

.calculator .justify-content-center {
    -ms-flex-pack: center!important;
    justify-content: center!important;
}
.calculator .flex-column {
    -ms-flex-direction: column!important;
    flex-direction: column!important;
}
.calculator .d-flex {
    display: -ms-flexbox!important;
    display: flex!important;
}

.calculator .row>div:not(.col):not([class^=col-]):not([class*=" col-"]) {
    width: auto!important;
}

.calculator-step {
    margin-top: 40px;
    margin-bottom: 32px;
}

.calculator button:not(.icon) {
	border-radius: 24px!important;
}

.line-dot {
    position: absolute;
    left: 50%;
}

.line-dot .dot {
    font-size: 1rem;
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.5;
    color: #37474f;
    position: relative;
    top: -33px;
    left: -50%;
    width: 32px;
    line-height: 31px;
    border-radius: 50%;
    text-align: center;
    background-color: #37474f;
    color: #fff;
    margin-top: -16px;
}

.d-block {
    display: block!important;
}

.calculator hr {
    box-sizing: content-box;
    overflow: visible;
}

.calculator hr {
    margin: 32px 0;
    background-color: #000;
    opacity: .2;
}

.mt-16 {
    margin-top: 16px!important;
	text-align: center;
}

.centered {
    margin-left: auto!important;
    margin-right: auto!important;
}

.icn-btn-wrapper {
    max-width: 460px;
    margin-left: auto!important;
    margin-right: auto!important;
	text-align: center;
}

.icn-btn-wrapper .img-btn-container.is-selected>.choice-btn, .icn-btn-wrapper .img-btn-container :checked>.choice-btn {
    background-image: linear-gradient(117deg,#03a9f4,#0288d1);
    color: #fff;
}

.icn-btn-wrapper .choice-btn {
    min-width: 113px;
    width: 113px;
    padding: 12px 0;
    color: #37474f;
    margin-top: 16px;
}

.icon {
    display: inline-block
}

.icn-btn-wrapper .icon-svg {
	width: 72px;
	height: 72px;
}

.yz-btn {
    margin-top: 32px;
    border: none;
    padding: 12px 30px;
    text-decoration: none;
    border-radius: 24px;
    color: #fff;
    font-weight: 700;
    min-width: 196px;
}

.yz-alert {
    display: -ms-flexbox;
    display: flex;
    padding: 8px;
    border: none;
    font-size: 12px;
    letter-spacing: normal;
    margin: 32px auto 0;
    border-radius: 12px;
    line-height: 1.5;
    text-align: left;
}

.yz-alert, .yz-alert .alert-icon {
    -ms-flex-align: center;
    align-items: center;
}

.yz-alert .alert-icon {
    min-width: 15px;
    min-height: 15px;
    width: 15px;
    height: 15px;
}

.yz-alert.yz-alert-danger {
    color: #37474f;
    background-color: #ffebee;
}

.yz-alert .alert-text {
    margin-left: 7px;
    margin-bottom: 0;
}

.yz-btn.pink {
    background-image: linear-gradient(101deg,#e91e63,#f7681c)
}

.yz-btn.plain-pink {
    background: #d61a70
}

.yz-btn.blue {
    background-image: linear-gradient(103deg,#03a9f4,#0288d1)
}

.yz-btn.grey {
    background-image: linear-gradient(104deg,#fafafa,#eee);
    color: #37474f
}

.yz-btn.grey.active {
    background-image: none;
    background-color: #37474f;
    color: #fff
}

.yz-btn.orange {
    background-image: linear-gradient(104deg,#fad961,#f7681c)
}

.yz-btn.orange:hover {
    color: #fff
}

.yz-btn.red {
    background-image: linear-gradient(104deg,#ef5350,#b71c1c)
}

.yz-btn.dark {
    background-image: none!important;
    background-color: #37474f!important;
    color: #fff!important
}

.yz-btn .white {
    background: #fff
}

.font-subtitle {
    font-size: 1rem;
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.5;
    color: #37474f;
    margin-top: 16px;
}

.icn-btn-wrapper .img-btn-container {
    cursor: pointer;
    display: inline-block;
    margin-bottom: 0;
    border: none;
    padding: 0;
    background: 0 0;
}
.calculator h2 {
	font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    color: #37474f;
	line-height: 1.27;
    margin: 32px 15px;
	text-align: center;
}

.calculator .input-label-wrapper {
    position: relative;
}

.calculator .input-label-wrapper .input.dual-number {
    width: 66px;
}

.calculator .input-label-wrapper .input {
    -webkit-appearance: none;
    width: 94px;
    border: 0;
    font-family: inherit;
    padding: 12px 0;
    height: 48px;
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    color: #37474f;
    border-bottom: 2px solid #37474f;
    background: 0 0;
    border-radius: 0;
    line-height: 1.18
}

.calculator .input-label-wrapper .label {
    position: absolute;
    top: 16px;
    margin-left: 7px;
}

.calculator label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

.calculator .icn-btn-wrapper .choice-btn {
    min-width: 113px;
    width: 113px;
    padding: 12px 0;
    color: #37474f;
    margin-top: 16px;
}

.calculator .daily-activities-wrapper .choice-btn {
    width: 230px;
    max-width: 230px;
}

.calculator .daily-activity-item-description {
    width: 100%;
    max-width: 182px;
    margin-top: 8px;
}

.calculator .calc-submit {
	font-size: 14px;
}

.calculator .calculator-step.is-invalid {
    border: 0;
}

.calculator .calculator-step.is-invalid .choice-btn {
    border: 1px solid red;
}

.calculator .calculator-step.is-invalid .invalid-highlight {
    color: #ef5350;
}

.calculator .calculator-step.is-invalid .invalid-highlight.input {
    border-bottom: 2px solid #ef5350;
}

.calculator-result-wrapper .container {
	width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.calculator-result-wrapper .mb-lg-64 {
    margin-bottom: 64px!important;
}

.calculator-result-wrapper hr {
    height: 0;
    margin: 32px 0;
    background-color: #000;
    opacity: .2;
}

.calculator-result-wrapper .col-12 {
	flex: 0 0 100%;
    max-width: 100%;
}

.calculator-result-wrapper .h2 {
	font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    color: #37474f;
	font-size: 2rem;
	text-align: center;
	font-size: 1.375rem;
    line-height: 1.27;
    margin: 32px 15px;
}

.infobox {
    margin-left: auto!important;
    margin-right: auto!important;
    max-width: 358px;
    border: 1px solid rgba(0,0,0,.1);
    border-radius: 12px;
    cursor: pointer;
	text-align: center;
}

.infobox .infobox-description {
    margin-bottom: 0;
    padding: 0 15px 32px;
}

.infobox .icon-svg {
	width: 71px;
	height: 71px;
}

.font-highlight {
    font-size: 1.375rem;
    color: #37474f;
    font-weight: 700;
}

.calculator-result-wrapper .col-12.col-xl-4 {
	margin-bottom: 1em;
}

.calculator-result-wrapper .resultado-kcal {
    display: flex;
    align-content: space-around;
    margin: auto;
    align-items: center;
    justify-content: space-between;
    width: 100%;
	flex-wrap: wrap;
}

.calculator-result-wrapper .resultado-kcal p {
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    color: #37474f;
    font-size: 2rem;
    width: 35%;
}

.calculator-result-wrapper .resultado-kcal p:first-child {
    text-align: center;
	min-width: 100%;
	width: 100%;
	font-size: 1.5rem;
}

.calculator-result-wrapper .resultado-kcal input[type=text] {
    background-color: #fff;
    border: 0;
    border-radius: 0;
    box-shadow: unset;
    color: #c9112b;
    padding: 0 0.75em;
    vertical-align: middle;
    width: 40%;
    font-weight: 700;
    font-style: normal;
    font-stretch: normal;
    font-size: 2rem;
	margin-left:2.5em;
}

.calculator-additional-note {
    text-align: center;
}

.calculator-additional-note p {
    font-size: 14px;
    font-style: italic;
    font-weight: 800;
}

@media (min-width: 768px) {
	
	.calculator .mt-md-32 {
		margin-top: 32px !important;
	}
	
	.calculator .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
	}
	
	.calculator .flex-md-row {
		-ms-flex-direction: row!important;
		flex-direction: row!important;
	}
	
	.calculator .flex-md-row {
		-ms-flex-direction: row!important;
		flex-direction: row!important;
	}

	.calculator .mb-xl-32 {
		margin-bottom: 32px!important;
	}
	
	.calculator .ml-lg-16 {
		margin-left: 16px!important;
	}

	.calculator .mr-md-16 {
		margin-right: 16px!important;
	}
	
	.calculator	.mb-xl-32 {
		margin-bottom: 32px!important;
	}
	
	.calculator .mt-xl-0 {
		margin-top: 0!important;
	}
	
	.calculator .mb-md-32 {
		margin-bottom: 32px!important;
	}
	
	.calculator-step {
		height: 236px;
		border: 1px solid rgba(0,0,0,.1);
		border-radius: 12px;
		margin: 22px 0 0;
	}
	
	.calculator .calculator-step.is-invalid {
		border: 1px solid red;
	}
	
	.d-md-none {
		display: none!important;
	}
	
	.line-dot .dot {
		top: 0;
	}
	
	.calculator-step h2 {
		font-size: 1.375rem;
	}
	
	.icn-btn-wrapper {
		margin-top: -16px;
	}
	
	.icn-btn-wrapper .choice-btn {
		width: 142px;
		max-width: 142px;
	}
	
	.ml-lg-32 {
		margin-left: 32px!important;
	}
	
	.mb-md-32 {
		margin-bottom: 32px!important;
	}
	
	.calculator .input-label-wrapper .input.dual-number {
		width: 66px;
	}
	
	.calculator #calculator-step-5 {
		padding: 0 15px;
	}
	
	.calculator #calculator-step-5 {
		height: auto;
	}
	
	.calculator-result-wrapper hr {
		margin-bottom: 64px;
	}
	
	.calculator-result-wrapper .resultado-kcal {
		flex-wrap: nowrap;
	}
	
	.calculator-result-wrapper .resultado-kcal p {		
		font-size: 2rem;
		width: 30%;
	}
	
	.calculator-result-wrapper .resultado-kcal p:first-child {		
		min-width: 55%;
		width: 55%;
		text-align: right;
		font-size: 2rem;
	}
	
	.calculator-result-wrapper .resultado-kcal input[type=text] {		
		width: 15%;
		font-size: 2rem;
		margin-left:0;
		text-align: center;
	}
	
	.calculator-result-wrapper .col-xl-4 {
		-ms-flex: 0 0 33.33333%;
		flex: 0 0 33.33333%;
		max-width: 33.33333%;
		padding-right: 15px;
		padding-left: 15px
	}
	
	.infobox {
		height: 340px;
	}
	
	.font-highlight {
		font-size: 1.9rem;
	}
}

@media(min-width: 375px) {
    .icn-btn-wrapper .choice-btn {
        min-width:134px;
        width: 100%;
        max-width: 142px
    }
	.icn-btn-wrapper .choice-btn {
		min-width: 134px;
		width: 100%;
		max-width: 142px;
	}
}