.rkoCardR,
.rkoCardR * {
	box-sizing: border-box;
}

.rkoCardR {
	margin: 24px 0 32px;
}

.rkoCardR__dateLine {
	margin-bottom: 14px;
}

.rkoCardR__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.rkoCardR__eyebrow {
	margin-bottom: 5px;
	font-size: 13px;
	line-height: 1.35;
	color: #7b8794;
}

.rkoCardR__title {
	margin: 0;
	color: #1f2933;
}

.rkoCardR__switch {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex: 0 0 auto;
	padding: 4px;
	border-radius: 12px;
	background: #f4f6f8;
	box-shadow: inset 0 0 0 1px rgba(31, 41, 51, .05);
}

.rkoCardR__switchBtn {
	min-width: 64px;
	padding: 10px 16px;
	border: 0;
	border-radius: 10px;
	background: transparent;
	font: inherit;
	font-size: 15px;
	line-height: 1;
	font-weight: 700;
	color: #8a94a3;
	cursor: pointer;
	transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}

.rkoCardR__switchBtn.is-active {
	background: #fff;
	color: #ef2b24;
	box-shadow: 0 5px 18px rgba(31, 41, 51, .08);
}

.rkoCardR__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.rkoCardR__card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 462px;
	padding: 26px;
	border: 1px solid #eef1f5;
	border-radius: 20px;
	background:
		radial-gradient(circle at 18% 7%, rgba(239, 43, 36, .035), transparent 30%),
		#fff;
	box-shadow: 0 14px 35px rgba(31, 41, 51, .08);
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.rkoCardR__card:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 42px rgba(31, 41, 51, .11);
}

.rkoCardR__card--recommend {
	border-color: #ff6f6a;
	box-shadow: 0 16px 42px rgba(239, 43, 36, .13);
}

.rkoCardR__badge {
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	padding: 8px 18px;
	border-radius: 999px;
	background: linear-gradient(180deg, #ff443d 0%, #df251f 100%);
	color: #fff;
	font-size: 14px;
	line-height: 1;
	font-weight: 800;
	white-space: nowrap;
	box-shadow: 0 9px 20px rgba(239, 43, 36, .28);
}

.rkoCardR__top {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	min-height: 78px;
	margin-bottom: 22px;
}

.rkoCardR__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 64px;
	width: 64px;
	height: 64px;
	border-radius: 50%;
}

.rkoCardR__icon svg {
	width: 31px;
	height: 31px;
	fill: currentColor;
}

.rkoCardR__icon--1 {
	background: #fff2d6;
	color: #f59e0b;
}

.rkoCardR__icon--2 {
	background: #e6f6ee;
	color: #2f9e63;
}

.rkoCardR__icon--3 {
	background: #eee9ff;
	color: #7c5cff;
}

.rkoCardR__icon--4 {
	background: #eaf3ff;
	color: #377dff;
}

.rkoCardR__nameBox {
	min-width: 0;
	padding-top: 5px;
}

.rkoCardR__name {
	display: inline-block;
	margin-bottom: 8px;
	color: #111827;
	font-size: 20px;
	line-height: 1.18;
	font-weight: 800;
	text-decoration: none;
}

.rkoCardR__name:hover {
	color: #ef2b24;
}

.rkoCardR__subtitle {
	color: #46515f;
	font-size: 15px;
	line-height: 1.45;
}

.rkoCardR__promo {
	margin: -5px 0 15px;
	padding: 9px 11px;
	border-radius: 10px;
	background: #fff7e1;
	color: #705300;
	font-size: 13px;
	line-height: 1.35;
	font-weight: 700;
}

.rkoCardR__price {
	display: flex;
	align-items: baseline;
	gap: 7px;
	margin: 2px 0 22px;
	color: #ef2b24;
	line-height: 1;
	font-weight: 900;
}

.rkoCardR__price-num {
	color: inherit;
}

.rkoCardR__price span:not(.calc__question):not(.calc__answer) {
	color: #596579;
	font-size: 14px;
	font-weight: 700;
}

.rkoCardR__params {
	margin-bottom: 18px;
	border-top: 1px solid #edf0f3;
}

.rkoCardR__param {
	display: grid;
	grid-template-columns: minmax(112px, 44%) minmax(0, 1fr);
	gap: 14px;
	align-items: start;
	padding: 14px 0;
	border-bottom: 1px solid #edf0f3;
	font-size: 14px;
	line-height: 1.35;
}

.rkoCardR__param--wide {
	display: block;
}

.rkoCardR__param span {
	color: #566171;
}

.rkoCardR__param b {
	color: #1f2933;
	font-weight: 700;
}

.rkoCardR__param a {
	color: #2777c7;
	text-decoration: none;
}

.rkoCardR__param a:hover {
	text-decoration: underline;
}

.rkoCardR__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	margin: auto 0 16px;
}

.rkoCardR__tag {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 9px;
	border-radius: 999px;
	background: #edf8ef;
	color: #2f6f3f;
	font-size: 12px;
	line-height: 1.2;
	font-weight: 700;
}

.rkoCardR__tag:before {
	content: "✓";
	font-weight: 900;
}

.rkoCardR__tag--accent {
	background: #fff2d6;
	color: #8a5b00;
}

.rkoCardR__actions {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: auto;
}

.rkoCardR__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 12px 16px;
	border-radius: 8px;
	font-size: 15px;
	line-height: 1.2;
	font-weight: 800;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

.rkoCardR__btn--main {
	border: 1px solid #ffdb3d;
	background: linear-gradient(180deg, #ffdf33 0%, #ffc400 100%);
	color: #1f2933;
	box-shadow: 0 8px 16px rgba(255, 196, 0, .2);
}

.rkoCardR__btn--main:hover {
	color: #1f2933;
	filter: brightness(.98);
}

.rkoCardR__more {
	display: inline-flex;
	justify-content: center;
	color: #2d85d7;
	font-size: 14px;
	line-height: 1.3;
	font-weight: 700;
	text-decoration: none;
}

.rkoCardR__more:hover {
	text-decoration: underline;
}

@media (max-width: 1240px) {
	.rkoCardR__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.rkoCardR__head {
		display: block;
	}

	.rkoCardR__title {
		font-size: 24px;
	}

	.rkoCardR__switch {
		margin-top: 14px;
	}

	.rkoCardR__grid {
		grid-template-columns: 1fr;
	}

	.rkoCardR__card {
		min-height: 0;
		padding: 22px;
	}

	.rkoCardR__param {
		grid-template-columns: 1fr;
		gap: 5px;
	}
}

@media (max-width: 420px) {
	.rkoCardR__top {
		gap: 12px;
	}

	.rkoCardR__icon {
		flex-basis: 54px;
		width: 54px;
		height: 54px;
	}

	.rkoCardR__name {
		font-size: 18px;
	}

	.rkoCardR__price {
		font-size: 24px;
	}
}