/*
 * loglasi.rs: content pages (Cenovnik, Za firme, Kontakt, O nama, Česta pitanja, Uslovi, Privatnost, errors).
 * Class prefix: lgx- (carried over from loglasi-core/assets/stranice/pages.css), lg-page for the page frame.
 */

.lgx,
.lgx *,
.lgx *::before,
.lgx *::after {
	box-sizing: border-box;
}

.lgx {
	--lgx-green: #2B7A64;
	--lgx-green-dark: #1F5B4A;
	--lgx-orange: #B8501A;
	--lgx-orange-dark: #9A4215;
	--lgx-brand: #379B7F;
	--lgx-accent: #EF7A38;
	--lgx-tint: #E9F4F0;
	--lgx-tint-orange: #FDF0E7;
	--lgx-text: #1D2B26;
	--lgx-muted: #5B6470;
	--lgx-border: #E3E7E4;
	--lgx-bg: #F6F7F5;
	--lgx-radius: 14px;
	font-family: inherit;
	font-size: 16px;
	line-height: 1.55;
	color: var(--lgx-text);
	margin: 0;
}

.lgx h1,
.lgx h2,
.lgx h3,
.lgx p,
.lgx ul,
.lgx ol,
.lgx dl,
.lgx dd {
	margin: 0;
	padding: 0;
	font-family: inherit;
	letter-spacing: normal;
	text-transform: none;
}

.lgx ul,
.lgx ol {
	list-style: none;
}

.lgx a {
	color: var(--lgx-green);
	text-underline-offset: 2px;
}

.lgx a:focus-visible,
.lgx button:focus-visible,
.lgx summary:focus-visible {
	outline: 2px solid #EF7A38;
	outline-offset: 2px;
}

.lg-icon {
	display: block;
	flex: none;
}

.lgx-sr {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* Sekcije unutar jednog shortcode-a */
.lgx-pricing,
.lgx-for-firms,
.lgx-about {
	display: grid;
	gap: 56px;
}

.lgx .lgx-title {
	font-size: clamp(22px, 2.2vw, 30px);
	font-weight: 800;
	line-height: 1.2;
	color: var(--lgx-text);
}

.lgx .lgx-intro {
	margin-top: 10px;
	max-width: 680px;
	font-size: 17px;
	color: var(--lgx-muted);
}

.lgx .lgx-block > .lgx-title {
	margin-bottom: 24px;
}

/* Oznaka (pilula) */
.lgx-label {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--lgx-tint-orange);
	color: var(--lgx-orange-dark);
	font-size: 13px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: .02em;
}

/* Dugmad --------------------------------------------------------------- */

.lgx .lgx-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 12px 22px;
	border: 2px solid transparent;
	border-radius: 10px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.lgx .lgx-btn .lg-icon {
	transition: transform .15s ease;
}

.lgx .lgx-btn:hover .lg-icon {
	transform: translateX(3px);
}

.lgx .lgx-btn--green,
.lgx .lgx-btn--green:visited {
	background: var(--lgx-green);
	color: #fff;
}

.lgx .lgx-btn--green:hover {
	background: var(--lgx-green-dark);
	color: #fff;
}

.lgx .lgx-btn--orange,
.lgx .lgx-btn--orange:visited {
	background: var(--lgx-orange);
	color: #fff;
}

.lgx .lgx-btn--orange:hover {
	background: var(--lgx-orange-dark);
	color: #fff;
}

.lgx .lgx-btn--outline,
.lgx .lgx-btn--outline:visited {
	background: #fff;
	border-color: var(--lgx-border);
	color: var(--lgx-green-dark);
}

.lgx .lgx-btn--outline:hover {
	border-color: var(--lgx-green);
	color: var(--lgx-green-dark);
}

.lgx .lgx-btn--white,
.lgx .lgx-btn--white:visited {
	background: transparent;
	border-color: rgba(255, 255, 255, .7);
	color: #fff;
}

.lgx .lgx-btn--white:hover {
	background: rgba(255, 255, 255, .12);
	border-color: #fff;
	color: #fff;
}

.lgx .lgx-btn--white:focus-visible {
	outline-color: #fff;
	box-shadow: 0 0 0 4px #EF7A38;
}

/* Cenovnik: kartice ---------------------------------------------------- */

.lgx .lgx-prices {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
	margin-top: 28px;
}

.lgx-price {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 24px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx-price--business {
	border: 2px solid var(--lgx-green);
	box-shadow: 0 8px 24px rgba(31, 91, 74, .1);
}

.lgx-price--business .lgx-label {
	align-self: flex-start;
	background: var(--lgx-tint);
	color: var(--lgx-green-dark);
}

.lgx .lgx-price__name {
	font-size: 18px;
	font-weight: 800;
	line-height: 1.3;
}

.lgx .lgx-price__amount {
	display: grid;
	gap: 2px;
}

.lgx-price__num {
	font-size: 30px;
	font-weight: 800;
	line-height: 1.1;
	white-space: nowrap;
	color: var(--lgx-text);
}

.lgx-price--free .lgx-price__num {
	color: var(--lgx-green);
}

.lgx-price__duration {
	font-size: 15px;
	color: var(--lgx-muted);
	white-space: nowrap;
}

.lgx .lgx-price__desc {
	font-size: 15px;
	color: var(--lgx-muted);
}

.lgx .lgx-price__items {
	display: grid;
	gap: 6px;
	font-size: 15px;
}

.lgx-price__items li {
	display: flex;
	gap: 8px;
	align-items: flex-start;
}

.lgx-price__items .lg-icon {
	margin-top: 3px;
	color: var(--lgx-green);
}

.lgx .lgx-price__offer {
	font-size: 14px;
	font-weight: 700;
	color: var(--lgx-orange-dark);
}

.lgx-price .lgx-btn {
	margin-top: auto;
	width: 100%;
}

/* Counter of free places --------------------------------------------- */

.lgx-counter {
	display: grid;
	gap: 8px;
	padding: 16px;
	border-radius: 12px;
	background: var(--lgx-tint-orange);
}

.lgx .lgx-counter__text {
	font-size: 17px;
	color: var(--lgx-orange-dark);
}

.lgx-counter__bar {
	height: 8px;
	border-radius: 999px;
	background: rgba(184, 80, 26, .18);
	overflow: hidden;
}

.lgx-counter__bar span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: var(--lgx-orange);
}

.lgx .lgx-counter__desc {
	font-size: 13px;
	color: var(--lgx-muted);
}

.lgx-counter--small {
	padding: 12px;
	margin-bottom: 4px;
}

.lgx-counter--small .lgx-counter__text {
	font-size: 15px;
}

/* Koraci --------------------------------------------------------------- */

.lgx .lgx-steps {
	display: grid;
	gap: 18px;
	margin-top: 24px;
	counter-reset: none;
}

.lgx-step {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

.lgx-step__num {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--lgx-tint);
	color: var(--lgx-green-dark);
	font-weight: 800;
	font-size: 17px;
}

.lgx .lgx-step__title {
	font-size: 17px;
	font-weight: 800;
	line-height: 1.35;
	margin-top: 8px;
}

.lgx .lgx-step__text {
	margin-top: 4px;
	font-size: 15px;
	color: var(--lgx-muted);
}

.lgx .lgx-steps--grid {
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
	margin-top: 0;
}

.lgx-steps--grid .lgx-step {
	grid-template-columns: 1fr;
	align-content: start;
	gap: 12px;
	padding: 20px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx-steps--grid .lgx-step__title {
	margin-top: 0;
}

/* Uplata --------------------------------------------------------------- */

.lgx-payment {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: 32px;
	align-items: start;
	scroll-margin-top: 100px;
}

.lgx-payment__card {
	padding: 24px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx .lgx-payment__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
	font-size: 18px;
	font-weight: 800;
}

.lgx-payment__title .lg-icon {
	color: var(--lgx-green);
}

.lgx .lgx-payment__details {
	display: grid;
	gap: 0;
}

.lgx-payment__row {
	display: grid;
	grid-template-columns: 130px minmax(0, 1fr);
	gap: 12px;
	padding: 12px 0;
	border-top: 1px solid var(--lgx-border);
}

.lgx-payment__row:first-child {
	border-top: 0;
	padding-top: 0;
}

.lgx-payment__row dt {
	font-size: 14px;
	color: var(--lgx-muted);
}

.lgx-payment__row dd {
	font-weight: 700;
	overflow-wrap: anywhere;
}

.lgx-payment__row--bank dd {
	font-variant-numeric: tabular-nums;
}

.lgx .lgx-payment__none {
	padding: 16px;
	border-radius: 12px;
	background: var(--lgx-bg);
}

.lgx-copy {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
}

.lgx .lgx-copy__button {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 44px;
	padding: 8px 12px;
	border: 1px solid var(--lgx-border);
	border-radius: 10px;
	background: #fff;
	color: var(--lgx-green-dark);
	font: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.lgx .lgx-copy__button:hover {
	border-color: var(--lgx-green);
}

.lgx .lgx-copy__status {
	min-height: 1.4em;
	margin-top: 8px;
	font-size: 14px;
	color: var(--lgx-green);
}

.lgx-admin-note {
	margin-top: 12px;
	padding: 10px 14px;
	border-left: 4px solid #B8501A;
	border-radius: 6px;
	background: #FFF6EE;
	font-size: 14px;
}

/* FAQ ------------------------------------------------------------------ */

.lgx .lgx-faq > .lgx-title {
	margin-bottom: 20px;
}

.lgx-faq__item {
	border: 1px solid var(--lgx-border);
	border-radius: 12px;
	background: #fff;
}

.lgx-faq__item + .lgx-faq__item {
	margin-top: 10px;
}

.lgx .lgx-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 56px;
	padding: 14px 20px;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.35;
	cursor: pointer;
	list-style: none;
	border-radius: 12px;
}

.lgx-faq__question::-webkit-details-marker {
	display: none;
}

.lgx-faq__question .lg-icon {
	color: var(--lgx-green);
	transition: transform .2s ease;
}

.lgx-faq__item[open] .lgx-faq__question .lg-icon {
	transform: rotate(180deg);
}

.lgx .lgx-faq__answer {
	padding: 0 20px 18px;
	color: var(--lgx-muted);
	font-size: 16px;
}

/* CTA traka ------------------------------------------------------------ */

.lgx-cta {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 20px 40px;
	padding: 36px 40px;
	border-radius: var(--lgx-radius);
	background: var(--lgx-green-dark);
	color: #fff;
}

.lgx .lgx-cta__title {
	font-size: clamp(22px, 2.2vw, 28px);
	font-weight: 800;
	line-height: 1.25;
	color: #fff;
}

.lgx .lgx-cta__text p {
	margin-top: 6px;
	color: rgba(255, 255, 255, .88);
}

.lgx-cta__buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.lgx .lgx-cta__phone {
	width: 100%;
	color: rgba(255, 255, 255, .88);
	font-size: 15px;
}

.lgx .lgx-cta__phone a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: #fff;
	font-weight: 700;
}

/* Za firme: hero ------------------------------------------------------- */

.lgx-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	gap: 40px;
	align-items: center;
	padding: 40px;
	border-radius: var(--lgx-radius);
	background: linear-gradient(135deg, #fff 0%, #fff 55%, var(--lgx-tint) 100%);
	border: 1px solid var(--lgx-border);
}

.lgx-hero__text {
	display: grid;
	gap: 16px;
	justify-items: start;
}

.lgx .lgx-hero__title {
	font-size: clamp(28px, 3.4vw, 44px);
	font-weight: 800;
	line-height: 1.12;
	color: var(--lgx-text);
}

.lgx .lgx-hero__intro {
	font-size: 18px;
	color: var(--lgx-muted);
	max-width: 560px;
}

.lgx-hero .lgx-counter {
	width: 100%;
	max-width: 420px;
}

.lgx .lgx-hero__offer {
	font-size: 15px;
	color: var(--lgx-text);
}

.lgx-hero__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* Ilustracija profila */
.lgx-mock {
	width: 100%;
	max-width: 400px;
	justify-self: center;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 18px 40px rgba(29, 43, 38, .14);
	overflow: hidden;
}

.lgx-mock__cover {
	height: 110px;
	background:
		radial-gradient(circle at 80% 30%, rgba(239, 122, 56, .35) 0 16%, transparent 17%),
		linear-gradient(120deg, #379B7F, #1F5B4A);
}

.lgx-mock__body {
	position: relative;
	display: grid;
	gap: 6px;
	padding: 44px 20px 20px;
}

.lgx-mock__logo {
	position: absolute;
	top: -36px;
	left: 20px;
	display: grid;
	place-items: center;
	width: 72px;
	height: 72px;
	border: 4px solid #fff;
	border-radius: 16px;
	background: var(--lgx-orange);
	color: #fff;
	font-size: 24px;
	font-weight: 800;
}

.lgx .lgx-mock__name {
	font-size: 20px;
	font-weight: 800;
}

.lgx .lgx-mock__verified,
.lgx .lgx-mock__info {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	color: var(--lgx-muted);
}

.lgx .lgx-mock__verified {
	color: var(--lgx-green);
	font-weight: 700;
}

.lgx-mock__buttons {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 8px;
}

.lgx-mock__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	min-height: 40px;
	padding: 6px;
	border: 1px solid var(--lgx-border);
	border-radius: 10px;
	font-size: 13px;
	font-weight: 700;
	color: var(--lgx-green-dark);
	white-space: nowrap;
}

.lgx-mock__button--call {
	border-color: var(--lgx-green);
	background: var(--lgx-green);
	color: #fff;
}

.lgx-mock__stat {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 10px;
	padding-top: 12px;
	border-top: 1px solid var(--lgx-border);
	font-size: 12px;
	color: var(--lgx-muted);
	text-align: center;
}

.lgx-mock__stat b {
	display: block;
	font-size: 17px;
	color: var(--lgx-text);
}

/* Prednosti ------------------------------------------------------------ */

.lgx .lgx-benefits {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.lgx-benefit {
	padding: 24px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx-benefit__icon {
	display: grid;
	place-items: center;
	width: 52px;
	height: 52px;
	margin-bottom: 14px;
	border-radius: 14px;
	background: var(--lgx-tint);
	color: var(--lgx-green);
}

.lgx .lgx-benefit__title {
	font-size: 18px;
	font-weight: 800;
	line-height: 1.3;
}

.lgx .lgx-benefit__text {
	margin-top: 6px;
	font-size: 15px;
	color: var(--lgx-muted);
}

/* Comparison table ----------------------------------------------------- */

.lgx-table-wrap {
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
	overflow: hidden;
}

.lgx .lgx-table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: 15px;
	table-layout: fixed;
}

.lgx .lgx-table th,
.lgx .lgx-table td {
	padding: 14px 18px;
	border: 0;
	border-top: 1px solid var(--lgx-border);
	background: none;
	text-align: center;
	vertical-align: middle;
	color: var(--lgx-text);
}

.lgx .lgx-table thead th {
	border-top: 0;
	font-size: 14px;
	font-weight: 800;
	color: var(--lgx-muted);
}

.lgx .lgx-table thead .lgx-table__business {
	color: var(--lgx-green-dark);
}

.lgx .lgx-table tbody th {
	text-align: left;
	font-weight: 700;
	width: 46%;
}

.lgx .lgx-table td:last-child {
	background: rgba(233, 244, 240, .55);
	font-weight: 700;
}

.lgx .lgx-table .lg-icon {
	display: inline-block;
	vertical-align: middle;
}

.lgx-table__yes .lg-icon {
	color: var(--lgx-green);
}

.lgx-table__no .lg-icon {
	color: #A3ACA7;
}

/* Kontakt -------------------------------------------------------------- */

.lgx-contact {
	padding: 24px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx .lgx-contact__title {
	margin-bottom: 16px;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.3;
}

.lgx .lgx-contact__list {
	display: grid;
	gap: 0;
}

.lgx-contact__row {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	padding: 10px 0;
	border-top: 1px solid var(--lgx-border);
}

.lgx-contact__row:first-child {
	border-top: 0;
	padding-top: 0;
}

.lgx-contact__icon {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--lgx-tint);
	color: var(--lgx-green);
}

.lgx-contact__label {
	display: block;
	font-size: 13px;
	color: var(--lgx-muted);
}

.lgx .lgx-contact__value {
	display: inline-block;
	font-size: 17px;
	font-weight: 700;
	color: var(--lgx-text);
	overflow-wrap: anywhere;
}

.lgx a.lgx-contact__value {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--lgx-green-dark);
	text-decoration: none;
}

.lgx a.lgx-contact__value:hover {
	text-decoration: underline;
}

.lgx .lgx-contact__value--plain {
	font-size: 15px;
	font-weight: 600;
}

/* Tablet and smaller ------------------------------------------------------- */

@media (max-width: 1023.98px) {
	.lgx .lgx-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lgx-hero {
		grid-template-columns: 1fr;
		padding: 32px;
	}

	.lgx-payment {
		grid-template-columns: 1fr;
	}
}

/* Telefon -------------------------------------------------------------- */

@media (max-width: 767.98px) {
	.lgx-pricing,
	.lgx-for-firms,
	.lgx-about {
		gap: 40px;
	}

	.lgx .lgx-intro {
		font-size: 16px;
	}

	.lgx .lgx-prices {
		grid-template-columns: 1fr;
		margin-top: 20px;
	}

	.lgx-price {
		padding: 20px;
	}

	.lgx-price__num {
		font-size: 28px;
	}

	.lgx-hero {
		gap: 28px;
		padding: 24px 20px;
	}

	.lgx .lgx-hero__intro {
		font-size: 16px;
	}

	.lgx-hero__buttons,
	.lgx-hero__buttons .lgx-btn {
		width: 100%;
	}

	.lgx .lgx-benefits {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.lgx-benefit {
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr);
		column-gap: 14px;
		padding: 18px;
	}

	.lgx-benefit__icon {
		width: 48px;
		height: 48px;
		margin: 0;
		grid-row: span 2;
	}

	.lgx .lgx-benefit__title {
		font-size: 17px;
		align-self: center;
	}

	.lgx .lgx-benefit__text {
		margin-top: 2px;
	}

	.lgx .lgx-table th,
	.lgx .lgx-table td {
		padding: 12px 10px;
		font-size: 14px;
	}

	.lgx .lgx-table thead th {
		font-size: 13px;
	}

	.lgx .lgx-table tbody th {
		width: 44%;
	}

	.lgx-payment__card,
	.lgx-contact {
		padding: 20px;
	}

	.lgx-payment__row {
		grid-template-columns: 1fr;
		gap: 2px;
	}

	.lgx .lgx-faq__question {
		padding: 14px 16px;
		font-size: 16px;
	}

	.lgx .lgx-faq__answer {
		padding: 0 16px 16px;
	}

	.lgx-cta {
		grid-template-columns: 1fr;
		padding: 28px 20px;
	}

	.lgx-cta__buttons,
	.lgx-cta__buttons .lgx-btn {
		width: 100%;
	}

}

@media (prefers-reduced-motion: reduce) {
	.lgx *,
	.lgx *::before,
	.lgx *::after {
		transition: none !important;
	}
}

/* ======================================================================
 * Page frame, contact form, text pages and errors (Laravel version)
 * ==================================================================== */

main:focus { outline: none; }

.lg-page {
	max-width: var(--lg-max, 1240px);
	margin: 0 auto;
	padding: 32px var(--lg-gutter, 24px) 0;
}

.lg-page__header {
	margin: 0 0 32px;
}

.lg-page__title {
	margin: 0;
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -.5px;
	color: var(--lg-text, #1D2B26);
}

.lg-page .lg-page__intro {
	margin: 10px 0 0;
	max-width: 680px;
	font-size: 17px;
	color: var(--lg-muted, #5B6470);
}

.lg-page__intro a { font-weight: 600; }

/* Kontakt: forma levo, podaci desno */

.lgx-contact-page {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
	gap: 24px;
	align-items: start;
}

.lgx-contact-page .lgx-contact {
	position: sticky;
	top: 16px;
}

.lgx-form-card {
	padding: 24px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx .lgx-form__title {
	margin-bottom: 16px;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.3;
}

.lgx-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 16px;
}

.lgx-field {
	display: grid;
	align-content: start;
	gap: 6px;
	min-width: 0;
}

.lgx-field--full {
	grid-column: 1 / -1;
}

.lgx-field label,
.lgx-field__label {
	font-size: 15px;
	font-weight: 700;
	color: var(--lgx-text);
}

.lgx-field__optional {
	font-weight: 400;
	color: var(--lgx-muted);
}

.lgx .lgx-field__help {
	font-size: 13px;
	color: var(--lgx-muted);
}

.lgx-field input[type="text"],
.lgx-field input[type="email"],
.lgx-field input[type="tel"],
.lgx-field select,
.lgx-field textarea {
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid var(--lg-input, #C9D1CC);
	border-radius: 10px;
	background: #fff;
	color: var(--lgx-text);
	font: inherit;
	font-size: 16px;
	line-height: 1.4;
}

.lgx-field select {
	padding-right: 36px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%232B7A64' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	cursor: pointer;
}

.lgx-field textarea {
	min-height: 140px;
	resize: vertical;
}

.lgx-field input:focus,
.lgx-field select:focus,
.lgx-field textarea:focus {
	border-color: var(--lgx-green);
	outline: 2px solid var(--lg-orange, #B8501A);
	outline-offset: 2px;
}

.lgx-field ::placeholder {
	color: #6B747D;
	opacity: 1;
}

.lgx-field [aria-invalid="true"] {
	border-color: var(--lg-error, #B42318);
}

.lgx .lgx-field__error {
	font-size: 14px;
	font-weight: 600;
	color: var(--lg-error, #B42318);
}

.lgx-tel {
	position: relative;
	display: block;
}

.lgx-tel__prefix {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	height: 48px;
	padding: 0 12px 0 14px;
	border-right: 1px solid var(--lgx-border);
	font-size: 16px;
	font-weight: 700;
	color: var(--lgx-muted);
	pointer-events: none;
}

.lgx-field .lgx-tel input[type="tel"] {
	padding-left: 72px;
}

.lgx-consent {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	min-height: 44px;
	padding-top: 2px;
	font-size: 15px;
	cursor: pointer;
}

.lgx-field .lgx-consent {
	font-weight: 400;
}

.lgx-consent input[type="checkbox"] {
	flex: none;
	width: 22px;
	height: 22px;
	margin: 0;
	accent-color: var(--lgx-green);
}

/* Bot trap: off screen, not in the tab order. */
.lgx-trap {
	position: absolute !important;
	left: -10000px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.lgx .lgx-form__button {
	width: auto;
	border: 0;
	cursor: pointer;
}

.lgx-message {
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 1px solid;
	border-radius: 10px;
	font-size: 15px;
}

.lgx-message--success {
	border-color: var(--lgx-green);
	background: var(--lgx-tint);
	color: var(--lgx-green-dark);
	font-weight: 600;
}

.lgx-message--error {
	border-color: var(--lgx-orange);
	background: var(--lgx-tint-orange);
	color: #7A3510;
}

.lgx-message:focus { outline: 2px solid var(--lgx-accent); outline-offset: 2px; }

/* Tekstualne strane (O nama, Uslovi, Privatnost) */

.lgx-text {
	max-width: 760px;
	padding: 32px 40px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
	font-size: 17px;
	line-height: 1.7;
}

.lgx .lgx-text > * + * { margin-top: 14px; }

.lgx .lgx-text h2 {
	margin-top: 32px;
	font-size: 22px;
	font-weight: 800;
	line-height: 1.3;
}

.lgx .lgx-text h3 {
	margin-top: 24px;
	font-size: 18px;
	font-weight: 800;
}

.lgx .lgx-text ul,
.lgx .lgx-text ol {
	padding-left: 1.3em;
	list-style: disc;
}

.lgx .lgx-text ol { list-style: decimal; }
.lgx .lgx-text li + li { margin-top: 6px; }
.lgx .lgx-text a { font-weight: 600; }

/* Česta pitanja as a standalone page */

.lgx-faq--page { max-width: 860px; }
.lgx .lgx-faq__answer a { font-weight: 600; }

/* Errors */

.lgx-error {
	display: grid;
	justify-items: center;
	gap: 14px;
	max-width: 640px;
	margin: 0 auto;
	padding: 40px 24px;
	text-align: center;
}

.lgx-error__code {
	font-size: clamp(64px, 12vw, 112px);
	font-weight: 800;
	line-height: 1;
	letter-spacing: -2px;
	color: var(--lgx-brand);
}

.lgx .lgx-error__title {
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 800;
	line-height: 1.2;
}

.lgx .lgx-error__text {
	max-width: 520px;
	font-size: 17px;
	color: var(--lgx-muted);
}

.lgx-error .lg-search {
	width: 100%;
	flex: none;
	margin-top: 8px;
	text-align: left;
}

.lgx-error__buttons {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	margin-top: 8px;
}

@media (max-width: 1023.98px) {
	.lgx-contact-page { grid-template-columns: 1fr; }
	.lgx-contact-page .lgx-contact { position: static; order: -1; }
}

@media (max-width: 767.98px) {
	.lg-page { padding-top: 20px; }
	.lg-page__header { margin-bottom: 24px; }
	.lg-page .lg-page__intro { font-size: 16px; }
	.lgx-form { grid-template-columns: 1fr; }
	.lgx-form-card { padding: 20px; }
	.lgx .lgx-form__button { width: 100%; }
	.lgx-text { padding: 20px; font-size: 16px; }
	.lgx .lgx-text h2 { margin-top: 24px; font-size: 20px; }
	.lgx-error { padding: 24px 0; }
	.lgx-error__buttons, .lgx-error__buttons .lgx-btn { width: 100%; }
}

/* FAQ: questions left, help box right (old site structure) ------------- */

.lgx-path ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 4px;
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
	font-size: 14px;
	color: var(--lg-muted, #5B6470);
}

.lgx-path li + li::before {
	content: "›";
	margin-right: 4px;
}

.lgx-path a,
.lgx-path a:visited {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--lg-muted, #5B6470);
	text-decoration: none;
}

.lgx-path a:hover {
	color: var(--lg-green-dark, #1f5b4a);
	text-decoration: underline;
}


.lgx-faq-page {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 32px;
	align-items: start;
}

.lgx-faq-help {
	position: sticky;
	top: 16px;
	padding: 28px 24px;
	border: 1px solid var(--lg-border, #e3e7e4);
	border-radius: 16px;
	background: var(--lg-mint, #e9f4f0);
}

.lgx-faq-help__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 12px;
	background: #fff;
	color: var(--lg-green, #2b7a64);
}

.lgx .lgx-faq-help__title {
	margin: 16px 0 8px;
	font-size: 20px;
	font-weight: 800;
	line-height: 1.3;
}

.lgx .lgx-faq-help p {
	margin: 0 0 18px;
	color: var(--lg-text-2, #3f4a45);
	font-size: 15px;
}

.lgx-faq-help .lgx-btn {
	width: 100%;
}

.lgx-faq-help__contact {
	display: grid;
	gap: 2px;
	margin: 16px 0 0;
	padding: 0;
	list-style: none;
}

.lgx-faq-help__contact a,
.lgx-faq-help__contact a:visited {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	color: var(--lg-text, #1D2B26);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	overflow-wrap: anywhere;
}

.lgx-faq-help__contact a:hover {
	text-decoration: underline;
}

.lgx-faq-help__contact .lg-icon {
	color: var(--lg-green, #2b7a64);
}

@media (max-width: 900px) {
	.lgx-faq-page {
		grid-template-columns: 1fr;
	}

	.lgx-faq-help {
		position: static;
	}
}

/* Za firme: business packages after the free period */
.lgx-packages__intro { margin: 0 0 16px; color: var(--lg-muted, #5B6470); }
.lgx-packages { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.lgx-package { border: 1px solid var(--lg-border, #e5e5e5); border-radius: 12px; padding: 20px; background: #fff; }
.lgx-package__name { margin: 0 0 8px; font-size: 1.125rem; }
.lgx-package__price { margin: 0; font-size: 1.375rem; font-weight: 700; }
.lgx-package__price span { font-size: .9375rem; font-weight: 400; }
.lgx-package__yearly { margin: 4px 0 0; color: var(--lg-muted, #5B6470); font-size: .9375rem; }
.lgx-package__items { margin: 12px 0 0; padding-left: 18px; }
.lgx-package__items li { margin: 4px 0; }
.lgx-packages__link { margin: 16px 0 0; }

/* Withdrawal form (/odustanak-od-ugovora/), prints on its own ----- */

.lgx-wform {
	max-width: 760px;
	margin-top: 24px;
	padding: 32px 40px;
	border: 2px dashed var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
	font-size: 16px;
	line-height: 1.6;
}

.lgx .lgx-wform__title { font-size: 20px; font-weight: 800; line-height: 1.3; text-transform: uppercase; }
.lgx .lgx-wform__intro { margin-top: 6px; color: var(--lgx-muted); }
.lgx .lgx-wform__recipient { margin-top: 20px; }
.lgx .lgx-wform__label { font-weight: 700; }
.lgx-wform__recipient dl { display: grid; gap: 2px; margin-top: 6px; }
.lgx-wform__recipient dl > div { display: flex; flex-wrap: wrap; gap: 0 8px; }
.lgx-wform__recipient dt { color: var(--lgx-muted); }
.lgx-wform__recipient dt::after { content: ":"; }
.lgx-wform__recipient dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.lgx .lgx-wform__statement { margin-top: 20px; font-weight: 700; }
.lgx-wform__fields { display: grid; gap: 14px; margin-top: 14px; }
.lgx-wform__signature { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 18px; }
.lgx-wform__line { display: block; height: 40px; border-bottom: 1px solid var(--lgx-text); }
.lgx-wform__signature p { margin-top: 4px; font-size: 14px; color: var(--lgx-muted); }
.lgx .lgx-wform__instructions { margin-top: 20px; font-size: 14px; color: var(--lgx-muted); }
.lgx .lgx-wform__instructions a { font-weight: 600; }
.lgx .lgx-wform__print { margin-top: 14px; }

@media (max-width: 767.98px) {
	.lgx-wform { padding: 20px; }
	.lgx-wform__signature { grid-template-columns: 1fr; }
}

@media print {
	body:has(.lgx-wform) .lg-header,
	body:has(.lgx-wform) .lg-footer,
	body:has(.lgx-wform) .lg-mnav,
	body:has(.lgx-wform) .lg-page__header,
	body:has(.lgx-wform) .lgx-text,
	.lg-cookies,
	.lgx-wform__instructions,
	.lgx-wform__print { display: none !important; }
	.lgx-wform { max-width: none; margin: 0; padding: 0; border: 0; font-size: 12pt; }
	.lgx-field.lgx-wform__field input[type="text"] { min-height: 0; padding: 4px 0 2px; border: 0; border-bottom: 1px solid #000; border-radius: 0; }
	.lgx-wform__recipient dt, .lgx-wform__signature p, .lgx-wform__intro { color: #000; }
}

/* The open question stands out. */
.lgx-faq__item {
	transition: border-color .15s ease, box-shadow .15s ease;
}

.lgx-faq__item[open] {
	border-color: var(--lgx-green);
	box-shadow: 0 4px 16px rgba(16, 24, 20, .06);
}

.lgx-faq__item[open] .lgx-faq__question {
	color: var(--lgx-green);
}

/* O nama ---------------------------------------------------------------- */

.lgx-about__stats {
	display: grid;
	gap: 12px;
	margin: 0;
}

.lgx-about__stat {
	display: flex;
	flex-direction: column-reverse;
	gap: 2px;
	padding: 18px 22px;
	border: 1px solid var(--lgx-border);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(29, 43, 38, .06);
}

.lgx-about__stat dd {
	margin: 0;
	color: var(--lgx-green);
	font-size: clamp(28px, 3vw, 36px);
	font-weight: 800;
	line-height: 1.1;
}

.lgx-about__stat dt {
	color: var(--lgx-muted);
	font-size: 15px;
	font-weight: 600;
}

.lgx .lgx-benefits--four {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.lgx-about__two {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.lgx-about__card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	padding: 28px;
	border: 1px solid var(--lgx-border);
	border-radius: var(--lgx-radius);
	background: #fff;
}

.lgx-about__card .lgx-benefit__icon {
	margin-bottom: 6px;
}

.lgx .lgx-about__title {
	font-size: 22px;
	font-weight: 800;
	line-height: 1.25;
}

.lgx-about__card p {
	margin: 0;
	color: var(--lgx-muted);
	font-size: 16px;
	line-height: 1.6;
}

.lgx-about__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 44px;
	margin-top: auto;
	color: var(--lgx-green);
	font-weight: 700;
	text-decoration: none;
}

.lgx-about__link:hover {
	text-decoration: underline;
}

@media (max-width: 1023.98px) {
	.lgx .lgx-benefits--four {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767.98px) {
	.lgx-about__stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
	}

	.lgx-about__stat {
		padding: 12px;
		text-align: center;
	}

	.lgx-about__stat dt {
		font-size: 12px;
		line-height: 1.3;
	}

	.lgx .lgx-benefits--four,
	.lgx-about__two {
		grid-template-columns: 1fr;
	}

	.lgx-about__card {
		padding: 22px;
	}
}
