/**
 * New design overrides — warm minimalism (July 2026)
 *
 * Loaded after design-system.css. Overrides soft-luxury v3 tokens
 * and adds styles for the new hero/cards/layout.
 */

:root {
	/* Warm palette */
	--kkr-bg: #FAF8F5;
	--kkr-bg-warm: #F2EBE3;
	--kkr-bg-cream: #FFFDFB;
	--kkr-surface: #FFFFFF;
	--kkr-surface-warm: #F7F0EA;

	--kkr-text: #3B2F28;
	--kkr-text-muted: #7A6B62;
	--kkr-text-light: #FAF8F5;

	--kkr-primary: #C87B63;
	--kkr-primary-hover: #B56A53;
	--kkr-primary-dark: #A85A45;
	--kkr-primary-soft: rgba(200, 123, 99, 0.12);

	--kkr-secondary: #A8B5A0;
	--kkr-gold: #C9A96E;

	--kkr-line: #E9E0D8;

	/* Typography */
	--kkr-font-sans: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--kkr-font-serif: "Cormorant Garamond", Georgia, "Times New Roman", serif;

	/* Geometry */
	--kkr-radius: 24px;
	--kkr-radius-lg: 32px;
	--kkr-radius-pill: 999px;

	/* Elevation */
	--kkr-shadow: 0 8px 30px rgba(59, 47, 40, 0.07);
	--kkr-shadow-lg: 0 28px 70px rgba(59, 47, 40, 0.10);
	--kkr-shadow-primary: 0 10px 28px rgba(200, 123, 99, 0.28);

	/* Spacing */
	--kkr-section-py: 90px;
}

/* Typography tweaks */
body {
	font-family: var(--kkr-font-sans);
	background: var(--kkr-bg);
	color: var(--kkr-text);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--kkr-font-serif);
	font-weight: 500;
	color: var(--kkr-text);
}

h1 em, h2 em {
	color: var(--kkr-primary);
	font-style: italic;
}

a {
	color: var(--kkr-primary-dark);
}

a:hover {
	color: var(--kkr-text);
}

/* Buttons — pill, warmer */
.kkr-btn {
	border-radius: var(--kkr-radius-pill);
	font-weight: 700;
	padding: 14px 28px;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.kkr-btn:hover {
	transform: translateY(-1px);
}

.kkr-btn-primary {
	background: var(--kkr-primary);
	color: var(--kkr-text-light);
	box-shadow: var(--kkr-shadow-primary);
}

.kkr-btn-primary:hover {
	background: var(--kkr-primary-hover);
	color: var(--kkr-text-light);
}

.kkr-btn-outline {
	background: var(--kkr-surface);
	color: var(--kkr-text);
	border: 1.5px solid var(--kkr-line);
}

.kkr-btn-outline:hover {
	border-color: var(--kkr-primary);
	color: var(--kkr-primary);
}

.kkr-btn-sm {
	padding: 11px 22px;
	font-size: 0.9375rem;
}

/* Header — light, airy */
.kkr-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(250, 248, 245, 0.94);
	backdrop-filter: blur(10px);
	border-bottom: 1px solid rgba(233, 224, 216, 0.5);
	transition: box-shadow 0.2s ease;
}

.kkr-header.is-scrolled {
	box-shadow: 0 4px 20px rgba(59, 47, 40, 0.06);
}

.kkr-header-absolute {
	position: absolute;
	background: rgba(250, 248, 245, 0.85);
}

.kkr-header-inner {
	max-width: var(--kkr-container);
	margin: 0 auto;
	padding: 18px var(--kkr-gutter);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.kkr-header-logo {
	display: flex;
	align-items: center;
	gap: 10px;
	text-decoration: none;
	color: var(--kkr-text);
}

.kkr-header-logo-mark {
	width: 32px;
	height: 32px;
	display: grid;
	place-items: center;
}

.kkr-header-logo-text {
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: -0.3px;
}

.kkr-header-nav ul {
	display: flex;
	gap: 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.kkr-header-nav a {
	color: var(--kkr-text-muted);
	font-weight: 600;
	font-size: 0.9375rem;
	text-decoration: none;
}

.kkr-header-nav a:hover {
	color: var(--kkr-primary);
}

.kkr-header-cta {
	display: flex;
	align-items: center;
	gap: 16px;
}

.kkr-header-phone {
	color: var(--kkr-text);
	font-weight: 700;
	font-size: 0.9375rem;
	text-decoration: none;
}

.kkr-header-phone:hover {
	color: var(--kkr-primary);
}

.kkr-header-nav-cta,
.kkr-header-nav-lang {
	display: none;
}

.kkr-lang-switch {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1.5px solid var(--kkr-line);
	color: var(--kkr-text);
	font-weight: 700;
	font-size: 0.8125rem;
	text-decoration: none;
}

.kkr-lang-switch:hover {
	border-color: var(--kkr-primary);
	color: var(--kkr-primary);
}

/* Hero — light split layout */
.kkr-hero {
	position: relative;
	background: var(--kkr-bg);
	padding: 140px 0 90px;
	overflow: hidden;
	min-height: auto;
	display: block;
}

/* Hide legacy bg/overlay on non-image heroes (home split hero) */
.kkr-hero:not(.kkr-section-image) .kkr-hero-bg,
.kkr-hero:not(.kkr-section-image) .kkr-hero-overlay {
	display: none !important;
}

.kkr-hero h1,
.kkr-hero p,
.kkr-hero .kkr-hero-subtitle {
	color: var(--kkr-text);
}

.kkr-hero h1 em {
	color: var(--kkr-primary);
}

.kkr-hero .kkr-hero-content {
	position: relative;
	z-index: auto;
	max-width: none;
	padding: 0;
}

.kkr-hero-content--split {
	display: grid;
	grid-template-columns: 1fr 1.05fr;
	gap: 64px;
	align-items: center;
}

.kkr-hero-lead {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--kkr-surface);
	padding: 8px 18px;
	border-radius: var(--kkr-radius-pill);
	font-size: 0.75rem;
	color: var(--kkr-primary);
	font-weight: 700;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	box-shadow: var(--kkr-shadow);
	margin-bottom: 28px;
}

.kkr-hero-lead::before {
	content: '';
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--kkr-primary);
}

.kkr-hero-text h1 {
	font-size: clamp(2.75rem, 5vw, 4rem);
	line-height: 1.05;
	letter-spacing: -1px;
	margin-bottom: 24px;
}

.kkr-hero-subtitle {
	font-size: 1.0625rem;
	color: var(--kkr-text-muted);
	max-width: 440px;
	margin-bottom: 32px;
	font-weight: 500;
	line-height: 1.6;
}

.kkr-hero-cta {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
}

.kkr-hero .kkr-hero-media {
	position: relative;
	inset: auto;
	height: 520px;
	border-radius: 36px;
	overflow: hidden;
	background: linear-gradient(135deg, #EBDED4 0%, #F3E6DC 100%);
	box-shadow: var(--kkr-shadow-lg);
	animation: none;
}

.kkr-hero .kkr-hero-media::before {
	content: '';
	position: absolute;
	inset: 20px;
	border: 1.5px solid rgba(255, 255, 255, 0.7);
	border-radius: 24px;
	pointer-events: none;
	z-index: 2;
}

.kkr-hero-media-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 0;
	transform: none;
	aspect-ratio: auto;
}

.kkr-hero .kkr-hero-media:hover .kkr-hero-media-img {
	transform: none;
}

/* Hero caption card */
.kkr-hero-caption {
	position: absolute;
	bottom: 30px;
	left: 36px;
	right: 36px;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(10px);
	padding: 20px 24px;
	border-radius: 22px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	box-shadow: var(--kkr-shadow);
	z-index: 3;
}

.kkr-hero-caption strong {
	display: block;
	font-size: 1.125rem;
	color: var(--kkr-text);
	font-weight: 700;
}

.kkr-hero-caption span {
	font-size: 0.8125rem;
	color: var(--kkr-text-muted);
	font-weight: 500;
}

/* Hero features (stats) */
.kkr-hero-features {
	display: flex;
	gap: 46px;
	margin-top: 48px;
}

.kkr-hero-feature {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.kkr-hero-feature-icon {
	width: 44px;
	height: 44px;
	border-radius: 14px;
	background: var(--kkr-surface);
	display: grid;
	place-items: center;
	font-size: 1.125rem;
	color: var(--kkr-primary);
	box-shadow: var(--kkr-shadow);
	flex-shrink: 0;
}

.kkr-hero-feature strong {
	display: block;
	font-size: 0.9375rem;
	color: var(--kkr-text);
	font-weight: 700;
}

.kkr-hero-feature span {
	font-size: 0.75rem;
	color: var(--kkr-text-muted);
	font-weight: 500;
}

/* Section titles */
.kkr-section-title {
	text-align: center;
	margin-bottom: 48px;
}

.kkr-section-title h2 {
	font-size: clamp(2.25rem, 4vw, 3.25rem);
	line-height: 1.1;
	margin-bottom: 14px;
}

.kkr-section-title p {
	font-size: 1.0625rem;
	color: var(--kkr-text-muted);
	max-width: 520px;
	margin: 0 auto;
}

/* Service cards v2 */
.kkr-service-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.kkr-service-card-v2 {
	background: var(--kkr-surface);
	border-radius: var(--kkr-radius);
	padding: 26px;
	box-shadow: var(--kkr-shadow);
	border: 1px solid var(--kkr-line);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	display: flex;
	flex-direction: column;
}

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

.kkr-service-card-v2 .service-thumb {
	height: 160px;
	border-radius: 20px;
	background: var(--kkr-bg-warm);
	display: grid;
	place-items: center;
	font-size: 2.75rem;
	margin-bottom: 20px;
}

.kkr-service-card-v2 h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 8px;
}

.kkr-service-card-v2 p {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
	margin-bottom: 18px;
	flex-grow: 1;
}

.kkr-service-card-v2 .service-meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.kkr-service-card-v2 .service-price {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--kkr-primary);
}

.kkr-service-card-v2 .service-link {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--kkr-text);
	text-decoration: none;
}

.kkr-service-card-v2 .service-link:hover {
	color: var(--kkr-primary);
}

/* Price section */
.kkr-price-layout {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 40px;
	align-items: start;
}

.kkr-price-list {
	background: var(--kkr-surface);
	border-radius: var(--kkr-radius);
	padding: 34px;
	box-shadow: var(--kkr-shadow);
	border: 1px solid var(--kkr-line);
}

.kkr-price-row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 16px 0;
	border-bottom: 1px dashed var(--kkr-line);
}

.kkr-price-row:last-child {
	border-bottom: none;
}

.kkr-price-row .name {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--kkr-text);
	max-width: 70%;
}

.kkr-price-row .value {
	font-size: 1rem;
	font-weight: 700;
	color: var(--kkr-primary);
	white-space: nowrap;
}

.kkr-price-cta-card {
	background: var(--kkr-primary);
	color: var(--kkr-text-light);
	border-radius: var(--kkr-radius);
	padding: 34px;
	box-shadow: var(--kkr-shadow-lg);
}

.kkr-price-cta-card h3 {
	font-family: var(--kkr-font-serif);
	font-size: 2.25rem;
	margin-bottom: 12px;
}

.kkr-price-cta-card p {
	font-size: 1rem;
	opacity: 0.92;
	margin-bottom: 24px;
}

.kkr-price-cta-card .kkr-btn {
	background: var(--kkr-surface);
	color: var(--kkr-primary);
}

.kkr-price-cta-card .kkr-btn:hover {
	background: var(--kkr-bg);
}

/* School cards */
.kkr-school-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.kkr-course-card-v2 {
	background: var(--kkr-surface);
	border-radius: var(--kkr-radius);
	overflow: hidden;
	box-shadow: var(--kkr-shadow);
	border: 1px solid var(--kkr-line);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

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

.kkr-course-card-v2 .course-thumb {
	height: 150px;
	background: var(--kkr-bg-warm);
	display: grid;
	place-items: center;
	font-size: 2.5rem;
}

.kkr-course-card-v2 .course-body {
	padding: 22px;
}

.kkr-course-card-v2 h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1rem;
	font-weight: 700;
	margin-bottom: 8px;
	line-height: 1.35;
}

.kkr-course-card-v2 .course-meta {
	display: flex;
	gap: 14px;
	font-size: 0.8125rem;
	color: var(--kkr-text-muted);
	margin-bottom: 14px;
}

.kkr-course-card-v2 .course-price {
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--kkr-primary);
}

/* Review cards */
.kkr-reviews-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.kkr-review-card-v2 {
	background: var(--kkr-surface);
	border-radius: var(--kkr-radius);
	padding: 28px;
	box-shadow: var(--kkr-shadow);
	border: 1px solid var(--kkr-line);
}

.kkr-review-card-v2 .stars {
	color: #F0B429;
	font-size: 1rem;
	margin-bottom: 14px;
	letter-spacing: 2px;
}

.kkr-review-card-v2 p {
	font-size: 0.9375rem;
	color: var(--kkr-text);
	line-height: 1.6;
	margin-bottom: 20px;
}

.kkr-review-card-v2 .author {
	font-weight: 700;
	font-size: 0.9375rem;
}

.kkr-review-card-v2 .source {
	font-size: 0.8125rem;
	color: var(--kkr-text-muted);
}

/* FAQ v2 */
.kkr-faq-v2 {
	max-width: 800px;
	margin: 0 auto;
}

.kkr-faq-v2 .kkr-faq-item {
	background: var(--kkr-surface);
	border-radius: 20px;
	margin-bottom: 14px;
	padding: 22px 26px;
	box-shadow: var(--kkr-shadow);
	border: 1px solid var(--kkr-line);
}

.kkr-faq-v2 .kkr-faq-question {
	font-weight: 700;
	font-size: 1.0625rem;
	margin-bottom: 8px;
}

.kkr-faq-v2 .kkr-faq-answer {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.6;
}

/* Contacts v2 */
.kkr-contacts-layout {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	align-items: center;
}

.kkr-contacts-info h3 {
	font-family: var(--kkr-font-serif);
	font-size: 2.5rem;
	margin-bottom: 18px;
}

.kkr-contacts-info > p {
	font-size: 1.0625rem;
	color: var(--kkr-text-muted);
	margin-bottom: 28px;
}

.kkr-contact-detail {
	display: flex;
	gap: 16px;
	margin-bottom: 20px;
}

.kkr-contact-detail .icon {
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: var(--kkr-primary-soft);
	color: var(--kkr-primary);
	display: grid;
	place-items: center;
	font-size: 1.25rem;
	flex-shrink: 0;
}

.kkr-contact-detail strong {
	display: block;
	font-size: 1rem;
	color: var(--kkr-text);
}

.kkr-contact-detail span {
	font-size: 0.875rem;
	color: var(--kkr-text-muted);
}

.kkr-contact-form {
	background: var(--kkr-surface);
	border-radius: var(--kkr-radius);
	padding: 34px;
	box-shadow: var(--kkr-shadow-lg);
	border: 1px solid var(--kkr-line);
}

.kkr-contact-form .form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-bottom: 16px;
}

.kkr-contact-form input,
.kkr-contact-form textarea {
	width: 100%;
	padding: 14px 18px;
	border-radius: 16px;
	border: 1.5px solid var(--kkr-line);
	font-family: inherit;
	font-size: 0.9375rem;
	background: var(--kkr-bg);
	color: var(--kkr-text);
}

.kkr-contact-form textarea {
	min-height: 110px;
	resize: vertical;
	margin-bottom: 16px;
}

.kkr-contact-form .kkr-btn-primary {
	width: 100%;
}

/* Footer — warm light */
.kkr-footer {
	background: var(--kkr-surface-warm);
	color: var(--kkr-text-muted);
	padding: 64px 0 30px;
	border-top: 1px solid var(--kkr-line);
}

.kkr-footer-grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1.5fr;
	gap: 40px;
	margin-bottom: 44px;
}

.kkr-footer-logo {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--kkr-text);
	margin-bottom: 14px;
	text-decoration: none;
}

.kkr-footer h4 {
	color: var(--kkr-text);
	font-family: var(--kkr-font-sans);
	font-size: 0.9375rem;
	margin-bottom: 18px;
}

.kkr-footer a {
	display: block;
	color: var(--kkr-text-muted);
	font-size: 0.875rem;
	margin-bottom: 10px;
	text-decoration: none;
}

.kkr-footer a:hover {
	color: var(--kkr-primary);
}

.kkr-footer-socials {
	display: flex;
	gap: 12px;
	margin-top: 14px;
}

.kkr-footer-socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1.5px solid var(--kkr-line);
	background: var(--kkr-surface);
	color: var(--kkr-text);
	font-size: 0.75rem;
	font-weight: 700;
	margin: 0;
}

.kkr-footer-socials a:hover {
	border-color: var(--kkr-primary);
	color: var(--kkr-primary);
}

.kkr-footer-bottom {
	border-top: 1px solid var(--kkr-line);
	padding-top: 24px;
	display: flex;
	justify-content: space-between;
	font-size: 0.8125rem;
	color: var(--kkr-text-muted);
}

.kkr-footer-bottom a {
	color: var(--kkr-text-muted);
	margin: 0;
}

/* Section backgrounds */
.kkr-section-warm,
.kkr-section-cream,
.kkr-section-secondary {
	background: var(--kkr-bg);
}

.kkr-section-dark {
	background: var(--kkr-surface-warm);
	color: var(--kkr-text);
}

.kkr-section-dark .kkr-section-title h2,
.kkr-section-dark .kkr-section-title p {
	color: var(--kkr-text);
}

.kkr-section-accent {
	background: var(--kkr-surface-warm);
}

/* Benefits */
.kkr-benefits-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.kkr-benefit-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 28px 22px;
	text-align: center;
	box-shadow: var(--kkr-shadow);
}

.kkr-benefit-number {
	display: block;
	font-family: var(--kkr-font-serif);
	font-size: 2rem;
	font-weight: 600;
	color: var(--kkr-primary);
	margin-bottom: 8px;
}

.kkr-benefit-label {
	font-size: 0.875rem;
	color: var(--kkr-text-muted);
	font-weight: 500;
}

/* Stats */
.kkr-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	text-align: center;
}

.kkr-stat-number {
	font-family: var(--kkr-font-serif);
	font-size: clamp(2rem, 4vw, 2.75rem);
	font-weight: 600;
	color: var(--kkr-primary);
	margin-bottom: 8px;
}

.kkr-stat-label {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
}

/* Existing service/price cards overrides */
.kkr-price-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.kkr-price-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 26px;
	box-shadow: var(--kkr-shadow);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

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

.kkr-price-card-header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
}

.kkr-price-card-header h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	flex: 1;
	margin: 0;
}

.kkr-price-card-icon {
	width: 44px;
	height: 44px;
	border-radius: 14px;
	background: var(--kkr-primary-soft);
	color: var(--kkr-primary);
	display: grid;
	place-items: center;
	flex-shrink: 0;
}

.kkr-price-card-icon svg {
	width: 22px;
	height: 22px;
}

.kkr-price-card-duration,
.kkr-price-card-badge {
	font-size: 0.75rem;
	font-weight: 700;
	padding: 5px 10px;
	border-radius: var(--kkr-radius-pill);
	background: var(--kkr-primary-soft);
	color: var(--kkr-primary);
}

.kkr-price-card-desc {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
	margin-bottom: 18px;
}

.kkr-price-card-more {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--kkr-text);
	text-decoration: none;
}

.kkr-price-card-more:hover {
	color: var(--kkr-primary);
}

.kkr-price-card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--kkr-line);
}

.kkr-price-card-price {
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--kkr-primary);
}

.kkr-price-card .kkr-btn-sm {
	padding: 10px 18px;
}

/* Team */
.kkr-team-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

.kkr-team-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 20px;
	box-shadow: var(--kkr-shadow);
	text-align: center;
}

.kkr-team-photo {
	width: 120px;
	height: 120px;
	border-radius: 50%;
	overflow: hidden;
	margin: 0 auto 16px;
	border: 3px solid var(--kkr-line);
}

.kkr-team-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kkr-team-card h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	margin-bottom: 4px;
}

.kkr-team-role {
	font-size: 0.875rem;
	color: var(--kkr-primary);
	font-weight: 600;
	margin-bottom: 10px;
}

.kkr-team-desc {
	font-size: 0.875rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
}

.kkr-team-actions {
	display: flex;
	gap: 10px;
	justify-content: center;
	margin-top: 16px;
}

/* Portfolio */
.kkr-portfolio-filters {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 32px;
}

.kkr-filter-btn {
	font-family: inherit;
	font-size: 0.9375rem;
	font-weight: 600;
	padding: 10px 20px;
	border-radius: var(--kkr-radius-pill);
	border: 1.5px solid var(--kkr-line);
	background: var(--kkr-surface);
	color: var(--kkr-text-muted);
	cursor: pointer;
	transition: all 0.2s ease;
}

.kkr-filter-btn:hover,
.kkr-filter-btn.is-active {
	background: var(--kkr-primary);
	border-color: var(--kkr-primary);
	color: var(--kkr-text-light);
}

.kkr-portfolio-item {
	display: block;
	border-radius: var(--kkr-radius);
	overflow: hidden;
	box-shadow: var(--kkr-shadow);
}

.kkr-portfolio-item img {
	width: 100%;
	height: 320px;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.kkr-portfolio-item:hover img {
	transform: scale(1.04);
}

/* Existing course cards */
.kkr-course-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.kkr-course-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 26px;
	box-shadow: var(--kkr-shadow);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

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

.kkr-course-card-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 10px;
}

.kkr-course-card-header h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	margin: 0;
	line-height: 1.35;
}

.kkr-course-card-duration {
	font-size: 0.75rem;
	font-weight: 700;
	padding: 5px 10px;
	border-radius: var(--kkr-radius-pill);
	background: var(--kkr-primary-soft);
	color: var(--kkr-primary);
	white-space: nowrap;
}

.kkr-course-card-desc {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
	margin-bottom: 18px;
}

.kkr-course-card-footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 16px;
	border-top: 1px solid var(--kkr-line);
}

.kkr-course-card-price {
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--kkr-primary);
}

/* Existing review cards */
.kkr-review-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 28px;
	box-shadow: var(--kkr-shadow);
	height: 100%;
}

.kkr-review-stars {
	color: #F0B429;
	margin-bottom: 12px;
	display: flex;
	gap: 3px;
}

.kkr-review-card blockquote p {
	font-size: 0.9375rem;
	color: var(--kkr-text);
	line-height: 1.6;
	margin-bottom: 16px;
}

.kkr-review-author {
	font-weight: 700;
	font-size: 0.9375rem;
}

.kkr-review-source {
	font-size: 0.8125rem;
	color: var(--kkr-text-muted);
}

/* Existing FAQ */
.kkr-faq {
	max-width: 800px;
	margin: 0 auto;
}

.kkr-faq-item {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: 20px;
	margin-bottom: 14px;
	overflow: hidden;
	box-shadow: var(--kkr-shadow);
}

.kkr-faq-question {
	width: 100%;
	padding: 22px 26px;
	font-family: inherit;
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--kkr-text);
	text-align: left;
	background: none;
	border: none;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
}

.kkr-faq-question::after {
	content: '+';
	font-size: 1.5rem;
	font-weight: 400;
	color: var(--kkr-primary);
	line-height: 1;
	flex-shrink: 0;
}

.kkr-faq-item.is-open .kkr-faq-question::after {
	content: '−';
}

.kkr-faq-answer {
	max-height: 0;
	overflow: hidden;
	padding: 0 26px;
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.6;
	transition: max-height 0.35s ease, padding 0.35s ease;
}

.kkr-faq-item.is-open .kkr-faq-answer {
	max-height: 500px;
	padding-bottom: 22px;
}

/* Districts */
.kkr-districts-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.kkr-district-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 26px;
	box-shadow: var(--kkr-shadow);
	text-decoration: none;
	color: inherit;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

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

.kkr-district-card h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 8px;
	color: var(--kkr-text);
}

.kkr-district-card p {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
}

/* Blog */
.kkr-blog-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.kkr-blog-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 28px;
	box-shadow: var(--kkr-shadow);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

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

.kkr-blog-card h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	margin-bottom: 10px;
	line-height: 1.35;
}

.kkr-blog-card h3 a {
	color: var(--kkr-text);
	text-decoration: none;
}

.kkr-blog-card h3 a:hover {
	color: var(--kkr-primary);
}

.kkr-blog-card > p {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
	margin-bottom: 16px;
}

.kkr-blog-link {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--kkr-primary);
	text-decoration: none;
}

/* Guarantees */
.kkr-guarantees {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.kkr-guarantee-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 28px;
	box-shadow: var(--kkr-shadow);
}

.kkr-guarantee-icon {
	color: var(--kkr-primary);
	margin-bottom: 14px;
}

.kkr-guarantee-card h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	margin-bottom: 8px;
}

.kkr-guarantee-card p {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	line-height: 1.5;
}

/* School benefits */
.kkr-school-benefits {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 14px;
	margin-bottom: 36px;
}

.kkr-school-benefit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius-pill);
	padding: 10px 18px;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--kkr-text);
	box-shadow: var(--kkr-shadow);
}

.kkr-school-benefit-icon {
	color: var(--kkr-primary);
}

/* Floating buttons */
.kkr-fab-group {
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 99;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.kkr-fab {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 20px;
	border-radius: var(--kkr-radius-pill);
	background: var(--kkr-primary);
	color: var(--kkr-text-light);
	font-weight: 700;
	font-size: 0.875rem;
	text-decoration: none;
	box-shadow: var(--kkr-shadow-primary);
	transition: transform 0.2s ease;
}

.kkr-fab-whatsapp {
	background: #25D366;
}

.kkr-fab:hover {
	transform: translateY(-2px);
}

/* Light section utility */
.kkr-section {
	padding: var(--kkr-section-py) 0;
}

/* Image heroes — warm light background with overlay */
.kkr-hero.kkr-section-image {
	position: relative;
	background: transparent;
	overflow: hidden;
}

.kkr-hero.kkr-section-image::before {
	display: none !important;
}

.kkr-hero.kkr-section-image .kkr-hero-bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	animation: none;
	display: block !important;
}

.kkr-hero.kkr-section-image .kkr-hero-overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(
		135deg,
		rgba(250, 248, 245, 0.82) 0%,
		rgba(242, 235, 227, 0.78) 50%,
		rgba(250, 248, 245, 0.72) 100%
	);
	display: block !important;
}

.kkr-hero.kkr-section-image .kkr-hero-content {
	position: relative;
	z-index: 2;
}

/* Small image hero sizing (inner pages) */
.kkr-hero-small.kkr-section-image {
	min-height: 560px;
}

.kkr-hero-small.kkr-section-image .kkr-hero-content {
	padding-top: 160px;
	padding-bottom: 100px;
	max-width: 900px;
	margin: 0 auto;
	text-align: center;
}

.kkr-hero-small.kkr-section-image h1,
.kkr-hero-small.kkr-section-image .kkr-hero-lead,
.kkr-hero-small.kkr-section-image .kkr-hero-subtitle {
	color: var(--kkr-text);
}

.kkr-hero-small.kkr-section-image .kkr-hero-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin: 24px 0;
}

.kkr-hero-small.kkr-section-image .kkr-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	color: var(--kkr-text);
	padding: 10px 18px;
	border-radius: var(--kkr-radius-pill);
	font-size: 0.875rem;
	font-weight: 600;
	box-shadow: var(--kkr-shadow);
}

.kkr-hero-small.kkr-section-image .kkr-badge svg {
	color: var(--kkr-primary);
	width: 16px;
	height: 16px;
}

/* Generic image sections — warm light overlay */
.kkr-section-image {
	color: var(--kkr-text);
}

.kkr-section-image::before {
	background: linear-gradient(
		135deg,
		rgba(250, 248, 245, 0.82) 0%,
		rgba(242, 235, 227, 0.78) 50%,
		rgba(250, 248, 245, 0.72) 100%
	);
}

.kkr-section-image h1,
.kkr-section-image h2,
.kkr-section-image h3,
.kkr-section-image h4,
.kkr-section-image h5,
.kkr-section-image h6,
.kkr-section-image p,
.kkr-section-image li,
.kkr-section-image a:not(.kkr-btn) {
	color: var(--kkr-text);
}

.kkr-section-image .kkr-btn-outline {
	color: var(--kkr-text);
	border-color: var(--kkr-text);
}

.kkr-section-image .kkr-btn-outline:hover {
	background: var(--kkr-text);
	color: var(--kkr-bg);
}

/* Breadcrumbs */
.kkr-breadcrumbs {
	background: var(--kkr-surface-warm);
	border-bottom: 1px solid var(--kkr-line);
	padding: 16px 0;
	font-size: 0.875rem;
	color: var(--kkr-text-muted);
}

.kkr-breadcrumbs a {
	color: var(--kkr-text-muted);
	text-decoration: none;
}

.kkr-breadcrumbs a:hover {
	color: var(--kkr-primary);
}

.kkr-breadcrumbs-list {
	display: flex;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
}

.kkr-breadcrumbs-list li:not(:last-child)::after {
	content: '›';
	margin-left: 8px;
	color: var(--kkr-text-muted);
}

/* Contacts page cards */
.kkr-contacts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.kkr-contacts-card {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 28px;
	text-align: center;
	box-shadow: var(--kkr-shadow);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

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

.kkr-contacts-icon {
	color: var(--kkr-primary);
	margin-bottom: 14px;
}

.kkr-contacts-card h3 {
	font-family: var(--kkr-font-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	margin-bottom: 8px;
}

.kkr-contacts-card p {
	font-size: 0.9375rem;
	color: var(--kkr-text-muted);
	margin: 0;
}

.kkr-contacts-card a {
	color: var(--kkr-primary-dark);
	text-decoration: none;
}

.kkr-contacts-card a:hover {
	color: var(--kkr-primary);
}

/* Location grid */
.kkr-location-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	align-items: start;
}

.kkr-location-media h2 {
	font-size: clamp(2rem, 4vw, 2.75rem);
	margin-bottom: 14px;
}

.kkr-location-media > p {
	font-size: 1.0625rem;
	color: var(--kkr-text-muted);
	line-height: 1.6;
	margin-bottom: 24px;
}

.kkr-contacts-entrance {
	border-radius: var(--kkr-radius);
	overflow: hidden;
	box-shadow: var(--kkr-shadow);
}

.kkr-contacts-entrance img {
	width: 100%;
	height: auto;
	display: block;
}

.kkr-location-map iframe {
	border-radius: var(--kkr-radius);
	box-shadow: var(--kkr-shadow);
}

.kkr-location-map-link {
	display: inline-block;
	margin-top: 14px;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--kkr-primary);
	text-decoration: none;
}

.kkr-location-map-link:hover {
	color: var(--kkr-primary-hover);
}

/* Price page */
.kkr-price-categories {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.kkr-price-category {
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	border-radius: var(--kkr-radius);
	padding: 32px;
	box-shadow: var(--kkr-shadow);
}

.kkr-price-category h2 {
	font-family: var(--kkr-font-serif);
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	margin-bottom: 20px;
}

/* Service page */
.kkr-service-content {
	max-width: 760px;
	margin: 0 auto;
	font-size: 1rem;
	line-height: 1.7;
}

.kkr-service-content h2 {
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	margin-bottom: 16px;
}

.kkr-service-content p {
	color: var(--kkr-text-muted);
	margin-bottom: 16px;
}

.kkr-service-gallery {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.kkr-service-gallery img {
	width: 100%;
	height: 260px;
	object-fit: cover;
	border-radius: var(--kkr-radius);
	box-shadow: var(--kkr-shadow);
}

/* Swiper overrides */
.kkr-swiper .swiper-button-prev,
.kkr-swiper .swiper-button-next,
.kkr-reviews-slider .swiper-button-prev,
.kkr-reviews-slider .swiper-button-next {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--kkr-surface);
	border: 1px solid var(--kkr-line);
	color: var(--kkr-text);
	box-shadow: var(--kkr-shadow);
}

.kkr-swiper .swiper-button-prev::after,
.kkr-swiper .swiper-button-next::after,
.kkr-reviews-slider .swiper-button-prev::after,
.kkr-reviews-slider .swiper-button-next::after {
	font-size: 1rem;
	font-weight: 700;
}

.kkr-swiper .swiper-pagination-bullet,
.kkr-reviews-slider .swiper-pagination-bullet {
	background: var(--kkr-line);
	opacity: 1;
}

.kkr-swiper .swiper-pagination-bullet-active,
.kkr-reviews-slider .swiper-pagination-bullet-active {
	background: var(--kkr-primary);
}

.kkr-reviews-slider .kkr-review-card {
	height: auto;
}

/* Responsive */
@media (max-width: 1024px) {
	.kkr-hero-content--split,
	.kkr-price-layout,
	.kkr-contacts-layout {
		grid-template-columns: 1fr;
	}

	.kkr-hero-media {
		height: 420px;
		order: -1;
	}

	.kkr-service-grid,
	.kkr-school-grid,
	.kkr-reviews-grid,
	.kkr-benefits-grid,
	.kkr-stats,
	.kkr-price-cards,
	.kkr-course-cards,
	.kkr-team-grid,
	.kkr-districts-grid,
	.kkr-blog-grid,
	.kkr-guarantees,
	.kkr-contacts-grid,
	.kkr-location-grid,
	.kkr-service-gallery {
		grid-template-columns: repeat(2, 1fr);
	}

	.kkr-footer-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.kkr-header-nav {
		display: none;
	}

	.kkr-header-phone {
		display: none;
	}

	.kkr-hero {
		padding: 110px 0 64px;
	}

	.kkr-hero-features {
		gap: 20px;
		flex-wrap: wrap;
	}

	.kkr-service-grid,
	.kkr-school-grid,
	.kkr-reviews-grid,
	.kkr-benefits-grid,
	.kkr-stats,
	.kkr-price-cards,
	.kkr-course-cards,
	.kkr-team-grid,
	.kkr-districts-grid,
	.kkr-blog-grid,
	.kkr-guarantees,
	.kkr-contacts-grid,
	.kkr-location-grid,
	.kkr-service-gallery,
	.kkr-footer-grid {
		grid-template-columns: 1fr;
	}

	.kkr-price-layout .kkr-price-cta-card {
		order: -1;
	}

	.kkr-contact-form .form-row {
		grid-template-columns: 1fr;
	}

	.kkr-portfolio-item img {
		height: 260px;
	}
}

/* Author page */
.kkr-author-card {
	display: flex;
	align-items: center;
	gap: 32px;
	background: var(--kkr-bg-warm, #faf7f2);
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
}

.kkr-author-photo {
	flex-shrink: 0;
}

.kkr-author-photo img {
	width: 180px;
	height: 180px;
	border-radius: 50%;
	object-fit: cover;
	border: 4px solid var(--kkr-accent, #c9a87c);
}

.kkr-author-info h2 {
	font-size: 28px;
	margin-bottom: 16px;
	color: var(--kkr-text-dark, #2d2a26);
}

.kkr-author-bio {
	font-size: 17px;
	line-height: 1.7;
	color: var(--kkr-text-muted, #6b6560);
}

.kkr-author-bio p {
	margin-bottom: 12px;
}

.kkr-author-bio p:last-child {
	margin-bottom: 0;
}

@media (max-width: 768px) {
	.kkr-author-card {
		flex-direction: column;
		text-align: center;
		padding: 28px 24px;
	}

	.kkr-author-photo img {
		width: 140px;
		height: 140px;
	}

	.kkr-author-info h2 {
		font-size: 24px;
	}
}

/* Single post UX enhancements: author, summary, TOC, author box */

.kkr-single-meta {
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 18px;
}

.kkr-single-author {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--kkr-text-light, #fff);
	text-decoration: none;
	font-weight: 500;
}

.kkr-single-author:hover {
	text-decoration: underline;
}

.kkr-single-author img {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(255, 255, 255, 0.4);
}

.kkr-single-meta time,
.kkr-single-updated {
	color: rgba(255, 255, 255, 0.85);
}

.kkr-single-meta-sep {
	color: rgba(255, 255, 255, 0.6);
}

.kkr-post-summary {
	background: var(--kkr-bg-warm, #fff8f5);
	border-left: 4px solid var(--kkr-primary, #d48c8c);
	padding: 20px 24px;
	margin-bottom: 36px;
	border-radius: 8px;
	font-size: 1.05rem;
	line-height: 1.6;
}

.kkr-post-summary p {
	margin: 0;
}

.kkr-toc {
	background: #fff;
	border: 1px solid var(--kkr-border, #eee);
	border-radius: 12px;
	padding: 22px 26px;
	margin-bottom: 36px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
}

.kkr-toc-title {
	font-weight: 700;
	font-size: 1.1rem;
	margin: 0 0 14px;
	color: var(--kkr-text-dark, #2b2b2b);
}

.kkr-toc-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.kkr-toc-item {
	margin: 0;
	padding: 6px 0;
	line-height: 1.4;
}

.kkr-toc-item a {
	color: var(--kkr-text-dark, #2b2b2b);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color 0.2s ease, color 0.2s ease;
}

.kkr-toc-item a:hover {
	color: var(--kkr-primary, #d48c8c);
	border-bottom-color: currentColor;
}

.kkr-toc-level-3 {
	padding-left: 18px;
	font-size: 0.95rem;
}

.kkr-author-box {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	background: var(--kkr-bg-warm, #fff8f5);
	border-radius: 12px;
	padding: 24px;
	margin: 40px 0;
}

.kkr-author-box-photo img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #fff;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.kkr-author-box-info {
	flex: 1;
}

.kkr-author-box-label {
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--kkr-text-muted, #777);
	margin: 0 0 6px;
}

.kkr-author-box-info h3 {
	margin: 0 0 8px;
	font-size: 1.2rem;
}

.kkr-author-box-info h3 a {
	color: var(--kkr-text-dark, #2b2b2b);
	text-decoration: none;
}

.kkr-author-box-info h3 a:hover {
	color: var(--kkr-primary, #d48c8c);
}

.kkr-author-box-info p {
	margin: 0;
	line-height: 1.5;
	color: var(--kkr-text-muted, #555);
}

@media (max-width: 480px) {
	.kkr-author-box {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}
}

/* Pagination accessibility and mobile layout fixes */
.kkr-pagination {
	flex-wrap: wrap;
	gap: 8px;
}

.kkr-pagination a,
.kkr-pagination span {
	min-width: 48px;
	min-height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 14px;
	font-size: 0.95rem;
}

@media (max-width: 480px) {
	.kkr-pagination a,
	.kkr-pagination span {
		min-width: 40px;
		padding: 0 10px;
		font-size: 0.9rem;
	}
}

@media (max-width: 400px) {
	.kkr-pagination a,
	.kkr-pagination span {
		min-width: 34px;
		padding: 0 6px;
		font-size: 0.85rem;
	}
}


/* ============================================================
   Hero prices (inspired by 4hands.ru)
   ============================================================ */
.kkr-hero-prices {
	display: flex;
	gap: 12px;
	margin: 20px 0 28px;
	flex-wrap: wrap;
}

.kkr-hero-price-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 14px 20px;
	background: var(--kkr-surface);
	border-radius: var(--kkr-radius-sm);
	border: 1px solid rgba(31, 31, 31, 0.08);
	text-decoration: none;
	color: inherit;
	transition: transform var(--kkr-transition-fast), box-shadow var(--kkr-transition-fast), border-color var(--kkr-transition-fast);
	min-width: 120px;
}

.kkr-hero-price-item:hover {
	transform: translateY(-3px);
	box-shadow: var(--kkr-shadow);
	border-color: var(--kkr-primary);
}

.kkr-hero-price-label {
	font-size: 0.875rem;
	color: var(--kkr-text-muted);
	font-weight: 500;
	margin-bottom: 4px;
}

.kkr-hero-price-value {
	font-family: var(--kkr-font-heading);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--kkr-primary);
}

@media (max-width: 576px) {
	.kkr-hero-prices {
		gap: 8px;
		margin: 16px 0 20px;
	}

	.kkr-hero-price-item {
		padding: 10px 14px;
		min-width: 100px;
		flex: 1 1 auto;
	}

	.kkr-hero-price-value {
		font-size: 1.1rem;
	}
}

/* ============================================================
   Benefit descriptions (inspired by 4hands.ru)
   ============================================================ */
.kkr-benefit-desc {
	font-size: 0.875rem;
	color: var(--kkr-text-muted);
	line-height: 1.55;
	margin: 8px 0 0;
	text-align: center;
	max-width: 220px;
}

@media (max-width: 576px) {
	.kkr-benefit-desc {
		font-size: 0.8rem;
		max-width: 100%;
	}
}

/* ============================================================
   Guarantee card highlight (inspired by 4hands.ru)
   ============================================================ */
.kkr-guarantee-card--highlight {
	border: 2px solid var(--kkr-primary);
	background: linear-gradient(135deg, var(--kkr-surface) 0%, var(--kkr-primary-soft) 100%);
	position: relative;
}

.kkr-guarantee-card--highlight::before {
	content: 'Гарантия';
	position: absolute;
	top: -1px;
	right: 20px;
	background: var(--kkr-gradient-primary);
	color: var(--kkr-text-light);
	font-size: 0.7rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 4px 12px;
	border-radius: 0 0 var(--kkr-radius-sm) var(--kkr-radius-sm);
}

.kkr-guarantee-card--highlight .kkr-guarantee-icon {
	background: var(--kkr-primary-soft);
	color: var(--kkr-primary);
}

/* ============================================================
   Blog slider (inspired by 4hands.ru)
   ============================================================ */
.kkr-blog-slider {
	overflow: hidden;
	padding-bottom: 48px;
}

.kkr-blog-slider .swiper-slide {
	height: auto;
}

.kkr-blog-slider .swiper-pagination {
	bottom: 0;
}

.kkr-blog-slider .swiper-button-prev,
.kkr-blog-slider .swiper-button-next {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--kkr-surface);
	box-shadow: var(--kkr-shadow);
	color: var(--kkr-primary);
	margin-top: -20px;
}

.kkr-blog-slider .swiper-button-prev::after,
.kkr-blog-slider .swiper-button-next::after {
	font-size: 14px;
	font-weight: 700;
}

.kkr-blog-slider .swiper-button-prev:hover,
.kkr-blog-slider .swiper-button-next:hover {
	background: var(--kkr-primary);
	color: var(--kkr-text-light);
}

@media (max-width: 768px) {
	.kkr-blog-slider .swiper-button-prev,
	.kkr-blog-slider .swiper-button-next {
		display: none;
	}
}

