/* Conversion blocks: home hero offer + programme page intro + mobile "apply" bar.
   Loaded only by the home page and the programme pages (config/programmes.php). */

/* ---------- Home hero ---------- */
.banner__title--offer {
	display: block;
	-webkit-line-clamp: initial;
	overflow: visible !important;
	font-size: 60px;
	line-height: 68px;
	max-width: 720px;
}
.banner__title-accent {
	display: inline;
	font-family: caveat-variable-font, sans-serif;
	font-weight: 700;
	text-transform: none;
	font-size: 1.12em;
	color: #2b2b2b;
	white-space: nowrap;
}
.banner__title--offer .banner__decor-images {
	vertical-align: middle;
	margin-left: 8px;
}
.banner__info--offer {
	display: block;
	-webkit-line-clamp: initial;
	overflow: visible !important;
	margin-top: 20px;
	margin-bottom: 20px;
}
.banner__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
}
.banner__chip {
	background: #fff;
	border: 1px solid #ffc001;
	border-radius: 999px;
	color: #2b2b2b;
	font-family: heraclito-semibold, sans-serif;
	font-size: 16px;
	line-height: 20px;
	padding: 7px 14px;
	white-space: nowrap;
}
.banner__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 24px;
}
.banner__actions .banner__apply {
	max-width: none;
	width: auto;
}
.banner__how {
	color: #007a88;
}
.banner__how img,
.banner__how svg {
	margin-left: 6px;
}
.banner__micro {
	flex-basis: 100%;
	order: 3;
	color: #4a4a4a;
	font-size: 14px;
	line-height: 20px;
	margin: -6px 0 0;
}

@media only screen and (max-width: 1438px) {
	.banner__title--offer { font-size: 52px; line-height: 60px; }
}
@media only screen and (max-width: 991px) {
	.banner__title--offer { font-size: 40px; line-height: 48px; max-width: 560px; }
	.banner__left--offer { min-height: 0; padding: 40px 32px; }
}
@media only screen and (max-width: 735px) {
	.banner__title--offer { display: block; font-size: 30px; line-height: 36px; }
	.banner__left--offer { padding: 28px 20px; }
	.banner__info--offer { margin: 12px 0 16px; }
	.banner__chips { gap: 6px; margin-bottom: 20px; }
	.banner__chip { font-size: 13px; line-height: 18px; padding: 5px 8px; }
	/* phones keep three chips: "30 dienas bez maksas" takes the place of the graduates chip */
	.banner__chip--graduates { display: none; }
	.banner__actions { gap: 14px; }
	.banner__actions .banner__apply { width: 100%; }
	.banner__how { margin: 0 auto; }
	.banner__actions .banner__apply { order: 1; }
	.banner__micro { order: 2; margin: -6px 0 0; text-align: center; }
	.banner__how { order: 3; }
}

/* ---------- Programme page intro ---------- */
.programme-intro {
	margin: 8px 0 40px;
}
.programme-intro__lead {
	font-family: heraclito-regular, sans-serif;
	font-size: 20px;
	line-height: 30px;
	margin: 0 0 24px;
}
.programme-intro__title {
	font-family: heraclito-semibold, sans-serif;
	font-size: 26px;
	line-height: 1.3em;
	margin: 32px 0 16px;
}
.programme-intro__benefits {
	background: #fff9e5;
	border: 1px solid #ffe589;
	border-radius: 16px;
	padding: 24px 28px 28px;
}
.programme-intro__benefits .programme-intro__title {
	margin-top: 0;
}
.programme-intro__benefit-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 24px;
	list-style: none;
	margin: 0 0 24px;
	padding: 0;
}
.programme-intro__benefit-list li {
	font-family: heraclito-semibold, sans-serif;
	font-size: 18px;
	line-height: 26px;
	padding-left: 30px;
	position: relative;
}
.programme-intro__benefit-list li::before {
	background: #ffc001;
	border-radius: 50%;
	color: #2b2b2b;
	content: "✓";
	font-size: 13px;
	height: 22px;
	left: 0;
	line-height: 22px;
	position: absolute;
	text-align: center;
	top: 2px;
	width: 22px;
}
.programme-intro .programme-intro__cta {
	color: #fff;
	display: inline-flex;
	gap: 8px;
	max-width: none;
	width: auto;
}
.programme-intro__tracks {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.programme-intro__track {
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 20px;
}
.programme-intro__track-icon {
	height: 40px;
	width: 40px;
}
.programme-intro__track-title {
	font-family: heraclito-semibold, sans-serif;
	font-size: 18px;
	line-height: 24px;
	margin: 0 0 6px;
}
.programme-intro__track-text {
	font-family: heraclito-regular, sans-serif;
	font-size: 15px;
	line-height: 22px;
	margin: 0;
}
.programme-intro__steps {
	counter-reset: none;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.programme-intro__step {
	align-items: flex-start;
	background: #f4f6f8;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	font-family: heraclito-semibold, sans-serif;
	font-size: 16px;
	gap: 10px;
	line-height: 22px;
	padding: 16px;
}
.programme-intro__step-num {
	background: #2b2b2b;
	border-radius: 50%;
	color: #fff;
	flex-shrink: 0;
	font-size: 15px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	width: 30px;
}

@media only screen and (max-width: 1200px) {
	.programme-intro__tracks { grid-template-columns: 1fr; }
	.programme-intro__track { flex-direction: row; align-items: flex-start; }
	.programme-intro__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media only screen and (max-width: 735px) {
	.programme-intro__lead { font-size: 17px; line-height: 26px; }
	.programme-intro__title { font-size: 22px; margin-top: 28px; }
	.programme-intro__benefits { padding: 20px 16px; }
	.programme-intro__benefit-list { grid-template-columns: 1fr; }
	.programme-intro__benefit-list li { font-size: 16px; line-height: 24px; }
	.programme-intro .programme-intro__cta { width: 100%; }
	.programme-intro__steps { grid-template-columns: 1fr; gap: 8px; }
	.programme-intro__step { flex-direction: row; align-items: center; padding: 12px 14px; }
}

/* ---------- Mobile sticky "apply" bar (programme pages) ---------- */
.sticky-buttons--apply {
	gap: 12px;
	padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
	transition: transform .25s ease, visibility .25s;
}
.sticky-buttons--apply .sticky-buttons__apply {
	align-items: center;
	color: #fff;
	flex: 1 1 auto;
	font-size: 17px;
	height: 48px;
	margin-right: 0;
	max-width: none;
	width: auto;
}
.sticky-buttons--apply .sticky-buttons__menu {
	align-items: center;
	background: #fff;
	border-color: #2b2b2b;
	display: flex;
	flex: 0 0 48px;
	height: 48px;
	margin-right: 0;
	padding: 0;
	width: 48px;
}
.sticky-buttons--apply.is-hidden {
	transform: translateY(110%);
	visibility: hidden;
}

/* Keep the WhatsApp and Anna widgets above the 72px bar while it is shown */
@media only screen and (max-width: 991px) {
	body.has-apply-bar:not(.apply-bar-hidden) .quriobotWidgetButton { bottom: 87px !important; }
	body.has-apply-bar:not(.apply-bar-hidden) .multi_button { bottom: 111px; }
	body.has-apply-bar .page-wrap { padding-bottom: 72px; }
}
