/* Rijschool Oude Maas – Pakketten (v2): prijstabel + overige kosten + infoblok */

.rom-pk {
	--rom-pk-bg-default: #ffffff;
	--rom-pk-card-bg-default: #f6f9fc;
	--rom-pk-card-border-default: transparent;
	--rom-pk-cost-line-default: #edf1f5;
	background: var(--rom-pk-bg, var(--rom-pk-bg-default));
	padding: clamp(80px, 10vw, 140px) clamp(24px, 5vw, 72px);
}

.rom-pk--grijs {
	--rom-pk-bg-default: #f6f9fc;
	--rom-pk-card-bg-default: #ffffff;
	--rom-pk-card-border-default: #e1e8ef;
	--rom-pk-cost-line-default: #e1e8ef;
}

.rom-pk__inner {
	max-width: 1400px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: clamp(40px, 6vw, 100px);
	align-items: start;
}

/* Prijskaart */
.rom-pk__card {
	position: relative;
	background: var(--rom-pk-card-bg, var(--rom-pk-card-bg-default));
	border: 1px solid var(--rom-pk-card-border, var(--rom-pk-card-border-default));
	border-radius: 28px;
	padding: clamp(24px, 3vw, 40px);
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.rom-pk__badge {
	position: absolute;
	top: -18px;
	right: 24px;
	background: var(--rom-pk-badge-bg, #e5007d);
	color: var(--rom-pk-badge-text, #fff);
	font-family: 'Outfit', sans-serif;
	font-weight: 800;
	font-size: 18px;
	padding: 12px 18px;
	border-radius: 14px;
	transform: rotate(4deg);
	box-shadow: 0 16px 36px rgba(229, 0, 125, .35);
	line-height: 1.2;
}

.rom-pk__badge-sub { font-size: 11px; font-weight: 600; opacity: .85; }
.rom-pk__head { padding-right: 140px; }
.rom-pk__kicker { font-size: 12px; letter-spacing: .24em; text-transform: uppercase; font-weight: 600; color: var(--rom-pk-kicker, #0091d5); margin-bottom: 10px; }
.rom-pk__title { margin: 0; font-family: 'Outfit', sans-serif; font-weight: 800; font-size: clamp(32px, 3.6vw, 48px); line-height: 1; letter-spacing: -.035em; color: var(--rom-pk-title, #0f1b2d); }

/* Tabel */
.rom-pk__table { background: var(--rom-pk-tbl-bg, #fff); border-radius: 18px; overflow: hidden; border: 1px solid var(--rom-pk-tbl-border, #e1e8ef); }
.rom-pk__th,
.rom-pk__tr { display: grid; grid-template-columns: 1.1fr 1fr 1fr 1fr; padding: 14px 20px; align-items: baseline; }
.rom-pk__th { font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--rom-pk-th-text, #8a94a6); background: var(--rom-pk-th-bg, #f6f9fc); }
.rom-pk__th-save { color: var(--rom-pk-row-save, #e5007d); }
.rom-pk__tr { border-top: 1px solid var(--rom-pk-tbl-line, #edf1f5); font-size: 15px; }
.rom-pk__tr.is-hl { background: var(--rom-pk-row-hl, #fdf7fa); }
.rom-pk__r { text-align: right; }
.rom-pk__lessons { font-weight: 700; font-family: 'Outfit', sans-serif; color: var(--rom-pk-row-lessons, #0f1b2d); }
.rom-pk__old { color: var(--rom-pk-row-old, #8a94a6); text-decoration: line-through; font-size: 13px; }
.rom-pk__price { font-weight: 800; font-family: 'Outfit', sans-serif; font-size: 17px; color: var(--rom-pk-row-price, #0f1b2d); }
.rom-pk__save { color: var(--rom-pk-row-save, #e5007d); font-weight: 700; }

.rom-pk__usp { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--rom-pk-usp-text, #0f1b2d); background: var(--rom-pk-usp-bg, #fdf0f7); border-radius: 12px; padding: 12px 14px; }
.rom-pk__usp-check { color: var(--rom-pk-usp-check, #e5007d); font-weight: 800; }

/* Rechterkolom */
.rom-pk__side { display: flex; flex-direction: column; gap: 32px; }
.rom-pk__side.is-sticky { position: sticky; top: 110px; }
.rom-pk__costs-title { margin: 0 0 20px; font-family: 'Outfit', sans-serif; font-weight: 800; font-size: clamp(26px, 2.6vw, 34px); letter-spacing: -.03em; color: var(--rom-pk-costs-title, #0f1b2d); }
.rom-pk__group { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; color: var(--rom-pk-group, #8a94a6); margin: 24px 0 8px; }
.rom-pk__group:first-of-type { margin-top: 0; }
.rom-pk__cost { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--rom-pk-cost-line, var(--rom-pk-cost-line-default)); font-size: 16px; }
.rom-pk__cost:last-child { border-bottom: 0; }
.rom-pk__cost-label { color: var(--rom-pk-cost-label, #4a5568); }
.rom-pk__cost-amount { font-family: 'Outfit', sans-serif; color: var(--rom-pk-cost-amount, #0f1b2d); white-space: nowrap; }
.rom-pk__cost-amount s { color: var(--rom-pk-cost-old, #8a94a6); font-weight: 400; font-size: 13px; }

.rom-pk__info { background: var(--rom-pk-info-bg, #f2f8fc); border: 1px solid var(--rom-pk-info-border, #cfe6f6); border-radius: 22px; padding: 24px 26px; display: flex; flex-direction: column; gap: 8px; }
.rom-pk__info-title { font-family: 'Outfit', sans-serif; font-weight: 800; font-size: 18px; color: var(--rom-pk-info-title, #0b68a0); }
.rom-pk__info-text { margin: 0; font-size: 14px; line-height: 1.7; color: var(--rom-pk-info-text, #4a5568); }

@media (max-width: 640px) {
	.rom-pk { padding: 64px 20px; }
	.rom-pk__head { padding-right: 96px; }
	.rom-pk__badge { font-size: 15px; padding: 10px 14px; right: 16px; }
	.rom-pk__th, .rom-pk__tr { padding: 12px 14px; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 6px; }
	.rom-pk__old { font-size: 12px; }
	.rom-pk__price { font-size: 15px; }
	.rom-pk__side.is-sticky { position: static; }
}
