/* ==========================================================================
   Pricing Page (Reklamos kainos)
   ========================================================================== */

.pricing-page-content {
	padding: var(--spacing-2xl) 0;
}

.pricing-intro {
	max-width: 800px;
	margin: 0 auto var(--spacing-2xl);
	text-align: center;
}

.pricing-intro p {
	font-size: var(--font-size-lg);
	color: var(--color-gray-600);
	line-height: 1.8;
}

/* Pricing Section */
.pricing-section {
	margin-bottom: var(--spacing-3xl);
	padding: var(--spacing-xl) 0;
}

.pricing-section-alt {
	background-color: var(--color-gray-50);
	margin-left: calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	padding-left: calc(50vw - 50%);
	padding-right: calc(50vw - 50%);
}

.pricing-header {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--spacing-md);
	margin-bottom: var(--spacing-xl);
	text-align: center;
	position: relative;
	padding-bottom: var(--spacing-md);
}

.pricing-header::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
	height: 3px;
	background: linear-gradient(90deg, transparent, var(--color-primary), transparent);
}

.pricing-header h2 {
	font-size: var(--font-size-2xl);
	font-weight: 700;
	color: var(--color-gray-900);
	margin: 0;
	width: 100%;
}

/* Pricing Grid */
.pricing-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--spacing-xl);
	max-width: 900px;
	margin: 0 auto;
}

@media (min-width: 768px) {
	.pricing-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1024px) {
	.pricing-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* Pricing Card */
.pricing-card {
	background-color: var(--color-white);
	border: 1px solid var(--color-gray-200);
	border-radius: var(--radius-lg);
	overflow: hidden;
	transition: all var(--transition-base);
	height: 100%;
	display: flex;
	flex-direction: column;
	box-shadow: var(--shadow-sm);
}

.pricing-card:hover {
	box-shadow: var(--shadow-lg);
	transform: translateY(-4px);
}

/* Pricing Card Header (h3 directly inside card) */
.pricing-card > h3 {
	background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
	color: var(--color-white);
	padding: var(--spacing-lg);
	text-align: center;
	font-size: var(--font-size-xl);
	font-weight: 700;
	margin: 0;
}

/* Pricing Card Body (ul and p directly inside card) */
.pricing-card > ul,
.pricing-card > .pricing-list {
	padding: var(--spacing-lg);
	flex: 1;
	margin: 0;
}

.pricing-card > .pricing-note {
	padding: var(--spacing-sm) var(--spacing-lg);
	margin: 0;
	background-color: var(--color-gray-100);
	font-size: var(--font-size-sm);
	color: var(--color-gray-600);
	border-left: none;
	text-align: center;
	display: block;
	width: 100%;
	box-sizing: border-box;
}

/* Legacy wrapper classes (if used) */
.pricing-card-header {
	background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
	color: var(--color-white);
	padding: var(--spacing-lg);
	text-align: center;
}

.pricing-card-header h3 {
	font-size: var(--font-size-xl);
	font-weight: 700;
	margin: 0 0 var(--spacing-xs);
	color: var(--color-white);
}

.pricing-card-header .pricing-subtitle {
	font-size: var(--font-size-sm);
	opacity: 0.9;
	margin: 0;
}

.pricing-card-body {
	padding: var(--spacing-lg);
	flex: 1;
}

/* Pricing List */
.pricing-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pricing-list li {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: var(--spacing-sm) 0;
	border-bottom: 1px dashed var(--color-gray-200);
	gap: var(--spacing-md);
}

.pricing-list li:last-child {
	border-bottom: none;
}

.pricing-list .pricing-item {
	color: var(--color-gray-700);
	font-size: var(--font-size-sm);
	flex: 1;
}

.pricing-list .pricing-value {
	font-weight: 700;
	color: var(--color-primary);
	font-size: var(--font-size-base);
	white-space: nowrap;
}

/* Pricing Subtitle in Header */
.pricing-header .pricing-subtitle {
	font-size: var(--font-size-sm);
	color: var(--color-gray-500);
	font-weight: 400;
	margin-left: var(--spacing-md);
}

/* Pricing Card Highlight */
.pricing-card-highlight {
	border-color: var(--color-primary);
	border-width: 2px;
}

/* Pricing Info Box */
.pricing-info-box {
	background-color: var(--color-gray-100);
	border-left: 4px solid var(--color-primary);
	padding: var(--spacing-lg);
	margin-top: var(--spacing-xl);
}

.pricing-info-box h4 {
	font-size: var(--font-size-lg);
	font-weight: 700;
	color: var(--color-gray-900);
	margin: 0 0 var(--spacing-md);
}

.tech-specs p {
	margin: 0 0 var(--spacing-sm);
	color: var(--color-gray-700);
	font-size: var(--font-size-sm);
	line-height: 1.7;
}

.tech-specs .warning {
	color: var(--color-gray-600);
	font-style: italic;
}

/* Publication Info */
.publication-info {
	display: flex;
	flex-wrap: wrap;
	gap: var(--spacing-lg);
	margin-top: var(--spacing-xl);
	padding: var(--spacing-lg);
	background-color: var(--color-gray-50);
	border-radius: var(--radius-md);
}

.info-item {
	display: flex;
	align-items: center;
	gap: var(--spacing-sm);
	color: var(--color-gray-700);
	font-size: var(--font-size-sm);
}

.info-item svg {
	color: var(--color-primary);
	flex-shrink: 0;
}

/* Pricing Tables Wrapper */
.pricing-tables-wrapper {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--spacing-xl);
}

@media (min-width: 768px) {
	.pricing-tables-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}
}

.pricing-table-container {
	background-color: var(--color-white);
	border: 1px solid var(--color-gray-200);
	border-radius: var(--radius-lg);
	padding: var(--spacing-lg);
}

.table-title {
	font-size: var(--font-size-xl);
	font-weight: 700;
	color: var(--color-primary);
	margin: 0 0 var(--spacing-lg);
	padding-bottom: var(--spacing-md);
	border-bottom: 2px solid var(--color-gray-200);
}

/* Pricing Mini Card */
.pricing-mini-card {
	margin-bottom: var(--spacing-lg);
}

.pricing-mini-card:last-child {
	margin-bottom: 0;
}

.pricing-mini-card h4 {
	font-size: var(--font-size-base);
	font-weight: 700;
	color: var(--color-gray-900);
	margin: 0 0 var(--spacing-sm);
}

.pricing-list.compact li {
	padding: var(--spacing-xs) 0;
}

.discount-info {
	margin-top: var(--spacing-sm);
	padding: var(--spacing-sm);
	background-color: var(--color-gray-100);
	border-radius: var(--radius-sm);
	font-size: var(--font-size-xs);
	color: var(--color-gray-600);
}

/* Pricing Grid Three Columns */
.pricing-grid-three {
	grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 767px) {
	.pricing-grid-three {
		grid-template-columns: 1fr;
	}
}

/* Pricing Card Small */
.pricing-card-small {
	text-align: center;
	padding: var(--spacing-lg);
}

.pricing-card-small .price-badge {
	font-size: var(--font-size-2xl);
	font-weight: 700;
	color: var(--color-primary);
	margin-bottom: var(--spacing-sm);
}

.pricing-card-small h4 {
	font-size: var(--font-size-base);
	font-weight: 700;
	color: var(--color-gray-900);
	margin: 0 0 var(--spacing-xs);
}

.pricing-card-small p {
	font-size: var(--font-size-sm);
	color: var(--color-gray-500);
	margin: 0;
}

/* Table Full Width Styling */
.pricing-table-full h3 {
	font-size: var(--font-size-xl);
	font-weight: 700;
	color: var(--color-gray-900);
	margin: 0 0 var(--spacing-sm);
}

.pricing-table-full .pricing-note {
	margin-bottom: var(--spacing-md);
}

/* CTA Button Outline */
.cta-button-outline {
	background-color: transparent;
	border: 2px solid var(--color-primary);
}

/* Pricing Note */
.pricing-note {
	background-color: var(--color-gray-100);
	border-left: 4px solid var(--color-primary);
	padding: var(--spacing-md);
	margin-top: var(--spacing-lg);
	font-size: var(--font-size-sm);
	color: var(--color-gray-600);
}

.pricing-note p {
	margin: 0;
}

/* Full Width Pricing Table */
.pricing-table-full {
	margin-top: var(--spacing-xl);
	overflow-x: auto;
}

.styled-table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--font-size-sm);
	background-color: var(--color-white);
	border: 1px solid var(--color-gray-200);
	border-radius: var(--radius-md);
	overflow: hidden;
}

.styled-table thead {
	background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
	color: var(--color-white);
}

.styled-table thead th {
	padding: var(--spacing-md);
	text-align: left;
	font-weight: 700;
	font-size: var(--font-size-sm);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.styled-table tbody tr {
	border-bottom: 1px solid var(--color-gray-200);
	transition: background-color var(--transition-fast);
}

.styled-table tbody tr:nth-child(even) {
	background-color: var(--color-gray-50);
}

.styled-table tbody tr:hover {
	background-color: var(--color-cream);
}

.styled-table tbody tr:last-child {
	border-bottom: none;
}

.styled-table tbody td {
	padding: var(--spacing-md);
	color: var(--color-gray-700);
}

.styled-table tbody td:first-child {
	font-weight: 600;
	color: var(--color-gray-900);
}

/* Pricing CTA Section */
.pricing-cta {
	background: linear-gradient(135deg, var(--color-gray-900) 0%, var(--color-gray-800) 100%);
	color: var(--color-white);
	text-align: center;
	padding: var(--spacing-2xl);
	border-radius: var(--radius-lg);
	margin-top: var(--spacing-2xl);
}

.pricing-cta h3 {
	font-size: var(--font-size-2xl);
	font-weight: 700;
	margin: 0 0 var(--spacing-md);
	color: var(--color-white);
}

.pricing-cta p {
	font-size: var(--font-size-lg);
	opacity: 0.9;
	margin: 0 0 var(--spacing-xl);
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

.cta-contacts {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--spacing-lg);
	margin-bottom: var(--spacing-xl);
}

.cta-contact-item {
	display: flex;
	align-items: center;
	gap: var(--spacing-sm);
	color: var(--color-white);
	text-decoration: none;
	transition: opacity var(--transition-fast);
}

.cta-contact-item:hover {
	opacity: 0.8;
}

.cta-contact-item svg {
	color: var(--color-primary);
}

.cta-button {
	display: inline-flex;
	align-items: center;
	gap: var(--spacing-sm);
	background-color: var(--color-primary);
	color: var(--color-white);
	padding: var(--spacing-md) var(--spacing-xl);
	border-radius: var(--radius-md);
	font-family: var(--font-heading);
	font-weight: 700;
	font-size: var(--font-size-base);
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: all var(--transition-fast);
}

.cta-button:hover {
	background-color: var(--color-primary-dark);
	color: var(--color-white);
	transform: translateY(-2px);
	box-shadow: var(--shadow-lg);
}

/* Responsive Pricing */
@media (max-width: 767px) {
	.pricing-header {
		flex-direction: column;
		text-align: center;
	}

	.pricing-header::before,
	.pricing-header::after {
		width: 60px;
		flex: none;
	}

	.styled-table {
		font-size: var(--font-size-xs);
	}

	.styled-table thead th,
	.styled-table tbody td {
		padding: var(--spacing-sm);
	}

	.cta-contacts {
		flex-direction: column;
		align-items: center;
	}

	.pricing-cta {
		padding: var(--spacing-xl);
	}
}
