@import url('variables.css');
body,
html,
.container {
	background-color: var(--white-color);
}
.wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: var(--max-width);
    padding: 20px 40px;
    z-index: 1;
    height: auto;
    align-content: center;
    align-items: center;
}
.pricing-section .wrapper {
	width: 100%;
    display: flex;
    justify-content: center;
    align-content: flex-start;
    align-items: flex-start;
	gap: 20px; 
}
.pricing-section .wrapper .box {
	width: 50%;
}
.pricing-section .wrapper .box:first-child {
	width: 50%;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    align-items: flex-start;
    justify-content: center;
	gap: 30px;
}
.pricing-section .wrapper .box:first-child .info {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-content: flex-start;
    justify-content: center;
    align-items: flex-start;
	margin: 0 0 100px;
}
.pricing-section .wrapper .box:first-child .info .item {
    display: flex;
    gap: 25px;
    align-content: flex-start;
    justify-content: center;
    align-items: flex-start;
}
.pricing-section .wrapper .box:first-child .description {
    display: flex;
    flex-direction: column;
    gap: 25px;
    align-content: flex-start;
    justify-content: center;
    align-items: flex-start;
}
.pricing-section .wrapper .box:first-child .description .title {
    font-family: 'General Sans Semibold', sans-serif;
    font-size: var(--fs-smd-title);
    line-height: 1.1em;
    color: var(--price-color);
}
.pricing-section .wrapper .box:first-child .description .content {
	font-family: 'General Sans', sans-serif;
	font-weight: 400;
    font-size: var(--fs-sm);
    line-height: 1.1em;
    color: var(--price-color);
}
.pricing-section .wrapper .box:last-child .price-selector {
	display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
	width: 100%;
	max-width: 533px;
    border: 1px solid #76FF8D;
    border-radius: 30px;
    background-color: rgba(255, 255, 255, 0.13);
    position: relative;
	padding: 70px 40px 50px;
}
.pricing-section .wrapper .box:last-child .price-selector::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    z-index: 1;
    border-radius: 30px;
}
.pricing-section .wrapper .box:last-child .price-selector:hover {
	box-shadow: inset 0 0 60px var(--white-color), inset 5px 0 5px #8dffb1, inset -5px 0 10px var(--secondary-color), inset 5px 0 20px var(--white-color), inset -5px 0 20px var(--white-color), 0 0 10px var(--white-color), -10px 0 50px #72f89e, 10px 0 20px #72f89e;
}
.pricing-section .wrapper .box:last-child .price-selector .title {
    font-family: 'General Sans Semibold', sans-serif;
    font-size: var(--fs-btn);
    line-height: 1.1em;
    color: var(--price-color);
    z-index: 1;
    position: relative;
}
.pricing-section .wrapper .box:last-child .price-selector .content {
	font-family: 'General Sans', sans-serif;
	font-weight: 400;
    font-size: var(--fs-ssm);
    line-height: 1.1em;
    color: var(--price-color);
    z-index: 1;
    position: relative;
}
.pricing-section .wrapper .box:last-child .price-selector .button {
    z-index: 1;
    position: relative;
	width: 100%;
}
.pricing-section .wrapper .box:last-child .price-selector .price {
	font-family: 'General Sans Semibold', sans-serif;
	line-height: 1.1em;
	color: var(--price-color);
	display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    gap: 15px;
    align-content: flex-end;
	margin: 35px 0 50px;
    z-index: 1;
    position: relative;
}
.button {
	font-size: var(--fs-sssm);
}
.pricing-section .wrapper .box:last-child .price-selector .price .symbol {
	font-size: var(--fs-xlg-subtitle);
	transform: translate(0, -150%);
    z-index: 1;
    position: relative;
}
.pricing-section .wrapper .box:last-child .price-selector .price .price-value {
	font-size: var(--fs-price);
    z-index: 1;
    position: relative;
}
.pricing-section .wrapper .box:last-child .price-selector .price .currency {
	font-size: var(--fs-sm-md);
    z-index: 1;
    position: relative;
}
.pricing-section {
	width: 100%;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-direction: column;
	background: #F8F9FB;
	border-top-left-radius: 90px;
    border-top-right-radius: 90px;
	height: 100%;
	padding: 180px 0 50px;
	transform: translate(0, 30%);
    z-index: 1;
    position: relative;
    overflow: visible;
}
.footer {
	border-radius: 0 !important;
	z-index: 1;
}
.pricing-section .wrapper .box:first-child .title {
	font-family: 'General Sans Semibold', sans-serif;
	font-size: var(--fs-title);
	line-height: 1.1em;
	color: var(--price-color);
}
.pricing-section .wrapper .box:first-child .subtitle {
	font-family: 'General Sans', sans-serif;
	font-size: var(--fs-subtitle);
	font-weight: 400;
	line-height: 1.1em;
	color: var(--price-color);
	margin: 0 0 25px;
}
.switch {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 30px;
}
.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}
.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	border-radius: 34px;
	transition: .4s;
    width: 70px;
    height: 35px;
}
.slider:before {
	position: absolute;
	content: "";
	height: 29px;
    width: 29px;
    left: 3px;
    bottom: 3px;
	background-color: white;
	border-radius: 50%;
	transition: .4s;
}
input:checked + .slider {
	background-color: #33FF66;
}
input:checked + .slider:before {
	transform: translateX(35px);
}
.pricing-section .toggle-container {
	width: 100%;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    gap: 25px;
	margin: 0 0 40px;
	z-index: 2;
	position: relative;
}
.pricing-section .toggle-container label.inactive {
	color: var(--gray-color);
}
.pricing-section .toggle-container label {
	font-family: 'General Sans Semibold', sans-serif;
	font-size: var(--fs-sm);
	line-height: 1.1em;
	color: var(--price-color);
}
.pricing-section .grid-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	width: 100%;
}
.pricing-section .wrapper .box:first-child .info .item .content {
    font-family: 'General Sans Semibold', sans-serif;
    line-height: 1.1em;
	font-size: var(--fs-sm);
    line-height: 1.3em;
	color: var(--price-color);
	max-width: 517px;
}
.pricing-section .wrapper .box:first-child .info .item .content .plain {
	font-family: 'General Sans', sans-serif;
	font-weight: 400;
}

.ellipse {
	transition: transform 2s linear;
	position: absolute;
	z-index: 0;
}
#ellipse1 {
    top: -40%;
    left: 16%;
}
#ellipse2 {
    bottom: 25%;
    left: -14%;
}
@media (max-width: 1600px) {
	.pricing-section .grid-container {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 1280px) {
	.pricing-section .grid-container {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 1024px) {
	.pricing-section {
		padding: 100px 0 0;
	}
	.pricing-section .wrapper .box:last-child .price-selector {
		margin: auto;
	}
	.pricing-section .wrapper {
		align-content: center;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
	.pricing-section .wrapper .box {
		width: 100% !important;
	}
	.pricing-section .wrapper .box:first-child {
		order: 2;
	}
	.pricing-section .wrapper .box:last-child {
		margin: 0 0 40px;
		order: 1;
	}
	.pricing-section .wrapper .box:first-child .info {
		margin: 0 0 40px;
	}
	.pricing-section .toggle-container {
		gap: 30px;
	}
	#ellipse2 {
		bottom: 0;
		left: 45%;
	}
}
@media (max-width: 767px) {
	.pricing-section .grid-container {
		grid-template-columns: repeat(1, 1fr);
	}
	#ellipse1 {
		left: -10%;
	}
    #ellipse2 {
        left: -15%;
    }
}