/* Kerempuh Pretplata — WPBakery element */

@keyframes kpbReveal { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: translateY(0); } }
@keyframes kpbLogo  { from { opacity: 0; transform: translateX(-32px); } to { opacity: 1; transform: translateX(0); } }
@keyframes kpbLine  { from { transform: scaleX(0); } to { transform: scaleX(1); } }

.kpb-root {
	font-family: 'Archivo', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: clamp(30px, 6vw, 44px);
	padding: clamp(28px, 5vw, 58px);
	padding-top: calc(clamp(28px, 5vw, 58px) + var(--kpb-mpy, 20px));
	padding-bottom: calc(clamp(28px, 5vw, 58px) + var(--kpb-mpy, 20px));
}
.kpb-root *, .kpb-root *::before, .kpb-root *::after { box-sizing: border-box; }
.kpb-root a { color: inherit; }

.kpb-rail { display: none; }
.kpb-toplogo { display: block; animation: kpbLogo .8s cubic-bezier(.22,1,.36,1) both; }
.kpb-toplogo svg, .kpb-toplogo img { max-width: 100%; }

.kpb-main { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: clamp(30px, 6vw, 40px); }
.kpb-header { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 28px; }
.kpb-season { margin-left: 0; font-size: clamp(12px, 1.4vw, 15px); font-weight: 600; letter-spacing: 0.28em; text-transform: uppercase; opacity: 0.85; }

.kpb-body { display: flex; flex-direction: column; flex-wrap: wrap; align-items: stretch; gap: clamp(30px, 6vw, 52px); }
.kpb-left { display: contents; }
.kpb-copy { order: 1; }
.kpb-program { order: 2; display: flex; flex-direction: column; }
.kpb-cta { order: 3; margin-top: 4px; }

.kpb-heading { margin: -0.16em 0 0; font-weight: 300; font-size: clamp(42px, 7.5vw, 100px); line-height: 0.98; letter-spacing: -0.02em; }
.kpb-info { margin-top: clamp(20px, 3vw, 36px); font-weight: 700; font-size: clamp(19px, 2.4vw, 30px); line-height: 1.2; max-width: 22ch; }
.kpb-info p { margin: 0; }

.kpb-btn {
	display: inline-flex; align-items: center; gap: 12px;
	text-decoration: none; font-weight: 800; font-size: clamp(16px, 1.8vw, 21px); letter-spacing: 0.01em;
	padding: clamp(16px, 1.8vw, 22px) clamp(26px, 3vw, 38px);
	border-radius: 999px;
	transition: transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s ease;
	box-shadow: 0 8px 0 0 rgba(0,0,0,0.14);
}
.kpb-btn:hover { transform: translateY(-3px); box-shadow: 0 14px 0 0 rgba(0,0,0,0.18); }
.kpb-btn:active { transform: translateY(1px); box-shadow: 0 5px 0 0 rgba(0,0,0,0.14); }

.kpb-item-author, .kpb-item-director { font-size: 15px; line-height: 1.4; opacity: 0.9; }
.kpb-item-author p, .kpb-item-director p { margin: 0; }
.kpb-item-title {
	display: inline-block; font-size: 16px; font-weight: 800; text-decoration: none;
	margin: 4px 0 8px;
	background-image: linear-gradient(90deg, currentColor, currentColor);
	background-repeat: no-repeat; background-position: 0 100%; background-size: 100% 1px;
	padding-bottom: 3px; transition: background-size .3s cubic-bezier(.22,1,.36,1);
}
.kpb-item-title:hover { background-size: 100% 2px; }
.kpb-item-title--plain { background-image: none; padding-bottom: 0; cursor: default; }
.kpb-item-title--plain:hover { background-size: 100% 0; }

.kpb-divider { height: 1px; opacity: 0.28; margin: clamp(10px,1.2vw,14px) 0; transform-origin: left; animation: kpbLine .6s cubic-bezier(.22,1,.36,1) both; }

.kpb-reveal { animation: kpbReveal .8s cubic-bezier(.22,1,.36,1) both; }

.kpb-anim-off .kpb-reveal,
.kpb-anim-off .kpb-toplogo,
.kpb-anim-off .kpb-rail,
.kpb-anim-off .kpb-divider { animation: none !important; opacity: 1 !important; transform: none !important; }

@media (min-width: 880px) {
	.kpb-root { flex-direction: row; align-items: stretch; gap: clamp(30px, 4vw, 56px); min-height: clamp(360px, 42vw, 480px); padding-top: clamp(28px, 5vw, 58px); padding-bottom: clamp(28px, 5vw, 58px); }
	.kpb-toplogo { display: none; }
	.kpb-season { margin-left: auto; }
	.kpb-body { flex-direction: row; gap: clamp(24px, 4vw, 52px); }
	.kpb-left { display: flex; flex-direction: column; flex: 1 1 340px; min-width: 280px; }
	.kpb-copy, .kpb-program, .kpb-cta { order: 0; }
	.kpb-program { flex: 1 1 260px; min-width: 230px; max-width: 380px; }
	.kpb-cta { margin-top: clamp(22px, 3vw, 34px); }
	.kpb-rail { display: block; position: relative; flex: 0 0 auto; width: clamp(84px, 10.5vw, 116px); align-self: stretch; animation: kpbLogo .9s cubic-bezier(.22,1,.36,1) both; }
	.kpb-rail svg, .kpb-rail img { position: absolute; top: 50%; left: 50%; height: clamp(84px, 10.5vw, 116px); width: auto; transform: translate(-50%, -50%) rotate(-90deg); }
}
