@import url('https://fonts.googleapis.com/css2?family=Alegreya+Sans:ital,wght@0,400;0,700;1,400&family=Alegreya:ital,wght@0,400;0,700;1,400&display=swap');
/* 
*,
*::before,
*::after {
  box-sizing: content-box;
} */
:root {
            --primary-color: linear-gradient(145deg, #66d370, #3f998e 85%);
            --secondary-color: linear-gradient(145deg, #3f998e, #315e8a 120%);
        }
body {
	font-family:'Alegreya', serif;
	font-size:1.35em;
	margin:0;
	padding:0;
}

img {
	max-width:100%;
}
h1 {
	font-family:'Alegreya', serif;
	font-size:4em;
	font-weight:normal;
	line-height:1.2em;
	text-align:center;
	margin-top:1em;
	margin-bottom:0.7em;
}
h2 {
	
	font-size:2.5em;
	font-weight:normal;
	line-height:1.1em;
	margin:0.83em 0;
}
h3 {
	font-weight:bold;
}
p {
	margin:1em 0;
	line-height:1.25em
}
h2 + p {
	margin-top:-0.7em;
}
h3 + .subTitle {
	margin:-0.5em 0 1.2em;
}
.note {
	margin:1.5em 0 1em;
}
	
.headerBox {
	position:sticky;
	z-index:10000;
	top:0;
	background:white;
	height:75px;
}
.headerContentBox {
	display:flex;
	max-width:1200px;
	height:75px;
	margin:auto;
	padding:0 25px;
	justify-content:space-between;
	align-items:center;
}
.layout-column {
	max-width:1200px;
	margin: auto;
	padding:0 25px;
}
.sBox {
	margin:0 0 5em;
}
.sBox h3 {
	font-family:'Alegreya sans', sans-serif;
	font-size:2em;
	line-height:1em;
	margin:0 0 0.2em;
}
.sBox2 {
	display:flex;
	margin-top:2em;
}
.box2 {
	background: rgb(237, 240, 243);
	width:50%;
	padding:1.8em;
	border-radius:1em;
}
.box2:first-child {
	margin-right:2em;
}
.box2 h3 {
	font-size:1.5em;
	margin:0;
}
.cText {
	text-align:center;
}
.cBox {
	margin: 2em auto;
	padding: 0.2em 2em 2em;
	border-radius:1em;
}
.box900 {
	max-width: 900px;
	margin:0 auto;
	border-radius:1em;
}
.box900 h2 {
	margin:0 0 0.5em;
}
.black {
	color:white;
	background:linear-gradient(145deg, #3f998e, #315e8a 120%);
	padding: 1.5em 2em;
}

.lineBox, .lineBox5 {
	display:grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 1fr;
    gap: 32px;
    align-content: stretch;
}
.brick {
	font-family:'Alegreya sans', sans-serif;
	background: rgb(240, 240, 240);
	position:relative;
	border-radius:1em;
	padding:40px;
}
.brick h3 {
	font-size:1.5em;
	margin-top:50px;
}
.brick h3::before {
	position:absolute;
	margin-top:-50px;
}
.wrapperSlides5 {
		overflow:auto;
	}
/*.lineBox5 {
	display:grid;
	grid-template-columns: repeat(3, 1fr);
	grid-auto-rows: 1fr;
    gap: 32px;
    align-content: stretch;
}*/
.lineBox5 .brick {
	min-width:250px;
	/* padding-bottom:0; */
}
.lineBox5 .brick h3 {
	margin:0;
}
.lineBox5 .brick p {
	margin:0.5em 0 0;
}
.saleBox {
	display:flex;
	justify-content: center;
    align-items: center;
	margin: 2em 0 5em;
}
.price {
	margin-right:25px;
}
.price p {
	font-size:2em;
	margin:0;
}
	
.infoBox {
	background:linear-gradient(145deg, #e2ebf0, #cfd9df 85%);
	max-width:900px;
	margin:4em auto 5em;
	display:flex;
	border-radius:1em;
}
.infoBox h2,
.stickyBox h2 {
	font-family:'Alegreya sans', sans-serif;
	font-size:2em;
}
.pictPart {
	width:50%;
	align-self:flex-end;
}
.textPart {
	width:47%;
	margin-right:3%;
	align-self:center;
}
.stickyBox {
	margin:0 0 2em;
	background: rgb(245, 245, 245);
	border-radius: 1em;
	position: -webkit-sticky;
    position: sticky;
    top: 30px;
	display:flex;
}
.stickyBox:nth-child(2n) {
		background:white;
		box-shadow: rgba(0, 60, 129, 0.09) 0px -20px 50px 0px;
}
.sBC {
	display:flex;
	flex-direction: column;
}
.psevdobutton {
	padding:14px 19px 16px;
	border-radius: 0.7em;
	background:linear-gradient(145deg, #66d370, #3f998e 85%);
	box-shadow: 0 10px 40px 0 rgba(10, 37, 64, .251), 0 3px 8px 0 rgba(10, 37, 64, .271);
	font-family:'Alegreya Sans', sans-serif;
	color:#fff !important;
	border:none !important;
	cursor:pointer;
	text-decoration:none;
	display: inline-block;
	margin: -0.5em 0 -1em;
}
.psevdobutton:hover {
	background:linear-gradient(145deg, #3f998e, #315e8a 120%);
	border:none;
}

.gray,
.green,
.caseBox {
	position:relative;
	isolation: isolate;
	/*padding: 3em 0;*/
	padding: 1em 0;
}
.gray::before,
.caseBox::before {
	content:'';
	position:absolute;
	top:0px; right:50%; bottom:0px; left:20%;
	background:linear-gradient(145deg, #3f998e, #315e8a 120%);
	filter: blur(80px);
	border-radius:100% 0 0 100%;
	z-index:-1;
}


.gray::after,
.caseBox::after {
	content:'';
	position:absolute;
	top:0px; right:20%; bottom:0px; left:50%;
	background:linear-gradient(145deg, #66d370, #3f998e 85%);
	filter: blur(80px);
	border-radius:0 100% 100% 0;
	z-index:-1;
}
.green::after {
	content:'';
	position:absolute;
	top:50px; right:20%; bottom:50px; left:20%;
	background:linear-gradient(145deg, #66d370, #3f998e 85%);
	filter: blur(70px);
	border-radius:50%;
	z-index:-1;
}

.caseBox {
	position:relative;
	margin-top:2em;
}
.case {
	font-family:'Alegreya sans', sans-serif;
	display:flex;
	justify-content:center;
}
.case span {
	font-family:'Alegreya sans', sans-serif;
	font-weight:bold;
}
.neg, .pos {
	width:40%;
	margin:0 0 0.7em;
	padding:0 0 0.7em;
	position:relative;
}
.neg {
	margin-right: 25px !important;
	text-align:right;
}
.brickContent {
	margin-right:20%;
}
.footerBox {
	font-size:0.85em;
	text-align:center;
	padding:0 25px 2em;
}
.footerBox p {
	margin:0;
}




/* Calculator Styles */
        .calculator-section {
            background-color: #f8f9fa;
            padding: 80px 0;
        }
        
        .calculator-card {
            border: none;
            border-radius: 20px;
            box-shadow: 0 15px 35px rgba(0,0,0,0.05);
            background: #fff;
            height: 100%;
            overflow: hidden;
        }

        .calculator-card .card-header {
            background: var(--primary-color);
            color: white;
            border-bottom: none;
            font-weight: bold;
            padding: 20px 25px;
            font-size: 1.2rem;
        }

        .calculator-card .card-body {
            padding: 30px;
        }

        .form-range {
            height: 6px;
            border-radius: 5px;
            background-color: #e9ecef;
        }
        
        .form-range::-webkit-slider-thumb {
            background: var(--primary-color);
            width: 24px;
            height: 24px;
            margin-top: -9px; /* Center thumb */
            border: 3px solid #fff;
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
            appearance: none;
            border-radius: 50%;
            cursor: pointer;
            transition: transform 0.1s;
        }
        
        .form-range::-webkit-slider-thumb:hover {
            transform: scale(1.1);
        }
        
        .form-range::-webkit-slider-runnable-track {
            width: 100%;
            height: 6px;
            cursor: pointer;
            background: transparent;
            border-radius: 5px;
        }

        .input-param-number {
            border: 2px solid #e9ecef;
            border-radius: 12px;
            font-weight: bold;
            color: var(--primary-color);
            padding: 10px;
            box-shadow: inset 0 2px 4px rgba(0,0,0,0.03);
        }
        
        .input-param-number:focus {
            border-color: var(--primary-color);
            box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.1);
        }

        .result-value {
            font-weight: 800;
            font-family:'Alegreya', serif;
        }
        
        .btn-check:checked + .btn-outline-primary {
            background: var(--secondary-color);
            border-color: black!important;
            color: white;
            box-shadow: 0 4px 10px rgba(74, 144, 226, 0.3);
        }
        
        .btn-outline-primary {
            color: var(--primary-color);
            border-color: black!important;
            border-radius: 50px;
            padding: 8px 20px;
            font-weight: 600;
        }
        
        .btn-outline-primary:hover {
            background-color: var(--primary-color);
            border-color: var(--primary-color);
        }

        .calc-label {
            margin-bottom: 10px;
            display: block;
        }
/* Calculator Styles */

.accordion,
.accordion-item,
.accordion-header,
.accordion-button {
	box-sizing: border-box;
}
.accordion {
	margin-top:-1em;
}
.accordion-button {
	font-size: 0.55em;
	padding:0;
}
.accordion-button:not(.collapsed) {
    color: #315e8a;
    background-color: white;
    box-shadow: none;
}
.accordion-body {
	padding-top:0;
}
.accordion-body p {
	margin:0 0 0.5em;
}
.accordion-item {
	border:none;
	margin-bottom:0.5em;
}
.accordion-header {
	line-height:0.6em;
	margin:0 0 0.2em;
}

#days_count {
	margin-top: 0!important;
}

#promise {
	color:white;
	background:linear-gradient(145deg, #3f998e, #315e8a 120%);
	display:flex;
	align-items: flex-end;
}
#brain h3::before {
	content:url(/img/neuro-img/ico-1-brain.png);
}
#calm h3::before {
	content:url(/img/neuro-img/ico-2-calm.png);
}
#health h3::before {
	content:url(/img/neuro-img/ico-3-leg.png);
}
#strong h3::before {
	content:url(/img/neuro-img/ico-4-strong.png);
}
#body h3::before {
	content:url(/img/neuro-img/ico-5-body.png);
}

@media (max-width: 1000px) {
	.lineBox {
		grid-template-columns: repeat(6, 1fr);
		grid-auto-rows: 1fr;
		gap: 32px;
		align-content: stretch;
	}
	.wrapperSlides {
		overflow:auto;
	}
	.brick {
		min-width:250px;
		padding:25px;
	}
	.lineBox5 {
		grid-template-columns: repeat(5, 1fr);
	}
}
@media (max-width: 800px) {
	h1 {
		font-size:3em;
	}
	h2 {
		font-size: 2em;
	}
	.infoBox h2,
	.stickyBox h2 {
		font-size:1.5em;
	}
	.sBox h3 {
		font-size:1.5em;
	}
	.box2 h3 {
		font-size:1.2em;
	}
}
@media (max-width: 680px) {
	body {
		font-size:1.1em;
	}
}
@media (max-width: 600px) {
	.infoBox, .stickyBox {
		flex-direction:column-reverse;
	}
	.pictPart {
		width:80%;
		align-self:center;
	}
	.stickyBox .pictPart {
		max-width: 290px;
	}
	.textPart {
		width:auto;
		margin-left:25px;
		margin-right:25px;
		align-self:flex-start;
	}
	.sBox2 {
		flex-direction:column;
	}
	.box2 {
		width:auto;
	}
	.box2:first-child {
		margin:0 0 1.3em;
	}
	.saleBox {
		flex-direction:column;
	}
	.price {
		margin:0 0 10px;
	}
	.sBox {
		margin: 0 0 3em;
	}
}
@media (max-width: 430px) {
	h1 {
		font-size:2.5em;
	}
}
@media (min-width: 330px) {
    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
	}
}