/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

.kh-homepage {
	--kh-primary: var(--e-global-color-primary, #101010);
	--kh-secondary: var(--e-global-color-secondary, #fff8ee);
	--kh-surface: #ffffff;
	--kh-accent: var(--e-global-color-accent, #a8030a);
	--kh-accent-dark: #7d0208;
	--kh-muted: var(--e-global-color-text, #5f5d5a);
	--kh-border: var(--e-global-color-e153d68, #d9d0c5);
	--kh-dark-surface: #1a1714;
	--kh-shadow: 0 16px 40px rgba(16, 16, 16, 0.08);
	--kh-shadow-soft: 0 10px 24px rgba(16, 16, 16, 0.06);
	--kh-space-2xs: 8px;
	--kh-space-xs: 12px;
	--kh-space-sm: 16px;
	--kh-space-md: 24px;
	--kh-space-lg: 32px;
	--kh-space-xl: 48px;
	--kh-space-2xl: 72px;
	--kh-space-3xl: 112px;
	background: var(--kh-secondary);
	color: var(--kh-primary);
}

/* Khushi homepage final pass: editorial restaurant landing page, local SEO content, fewer Elementor containers. */
.kh-redesign {
	--kh-red: #941818;
	--kh-red-dark: #6f1010;
	--kh-ink: #151313;
	--kh-coal: #1f1b19;
	--kh-cream: #fff7ed;
	--kh-cream-2: #f7ead8;
	--kh-gold: #c89147;
	--kh-muted: #6f6860;
	--kh-border: rgba(35, 29, 24, .16);
	--kh-white: #fffdf9;
	background: var(--kh-cream);
	color: var(--kh-ink);
	font-family: "Libre Franklin", Arial, sans-serif;
	overflow: hidden;
}

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

.kh-redesign h1,
.kh-redesign h2,
.kh-redesign h3 {
	margin: 0;
	color: inherit;
	font-family: "Fraunces", Georgia, serif;
	font-weight: 800;
	letter-spacing: 0;
	line-height: .94;
}

.kh-redesign h1 {
	max-width: 760px;
	font-size: clamp(48px, 7vw, 108px);
}

.kh-redesign h2 {
	font-size: clamp(34px, 4.4vw, 66px);
}

.kh-redesign h3 {
	font-family: "Libre Franklin", Arial, sans-serif;
	font-size: 22px;
	font-weight: 900;
	line-height: 1.12;
}

.kh-redesign p {
	margin: 0;
	color: var(--kh-muted);
	font-size: 18px;
	line-height: 1.65;
}

.kh-redesign img {
	display: block;
	width: 100%;
	height: auto;
}

.kh-redesign a {
	color: inherit;
	text-decoration: none;
}

.kh-redesign a:focus-visible,
.kh-redesign summary:focus-visible {
	outline: 3px solid var(--kh-gold);
	outline-offset: 4px;
}

.kh-kicker {
	color: var(--kh-red) !important;
	font-size: 12px !important;
	font-weight: 900;
	letter-spacing: .16em;
	line-height: 1.2 !important;
	text-transform: uppercase;
}

.kh-lead {
	max-width: 680px;
	color: #4e4741 !important;
	font-size: 21px !important;
	line-height: 1.6 !important;
}

.kh-hero,
.kh-section,
.kh-band,
.kh-final {
	width: 100%;
	padding-right: max(24px, calc((100vw - 1240px) / 2));
	padding-left: max(24px, calc((100vw - 1240px) / 2));
}

.kh-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr);
	gap: 46px;
	min-height: 780px;
	padding-top: 100px;
	padding-bottom: 80px;
	align-items: center;
	background:
		linear-gradient(90deg, rgba(255, 247, 237, .97) 0%, rgba(255, 247, 237, .86) 44%, rgba(255, 238, 214, .7) 100%),
		radial-gradient(circle at 80% 20%, rgba(148, 24, 24, .13), transparent 34%);
}

.kh-hero::after {
	content: "";
	position: absolute;
	right: -90px;
	bottom: -90px;
	width: 390px;
	height: 390px;
	border: 1px solid rgba(148, 24, 24, .18);
	transform: rotate(18deg);
}

.kh-hero__copy {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 26px;
}

.kh-hero__visual {
	position: relative;
	z-index: 1;
	min-height: 540px;
	border: 1px solid var(--kh-border);
	background: var(--kh-coal);
	box-shadow: 24px 24px 0 rgba(148, 24, 24, .14);
}

.kh-hero__visual img {
	height: 540px;
	object-fit: cover;
	clip-path: polygon(8% 0, 100% 0, 100% 91%, 18% 100%, 0 83%, 0 10%);
}

.kh-hero__visual span {
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	padding: 17px 22px;
	background: var(--kh-red);
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.kh-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	align-items: center;
}

.kh-btn {
	display: inline-flex;
	min-height: 50px;
	padding: 15px 22px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--kh-red);
	background: var(--kh-red);
	color: #fff !important;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: .04em;
	text-transform: uppercase;
	transition: transform .18s ease, background .18s ease, color .18s ease;
}

.kh-btn:hover {
	transform: translateY(-2px);
}

.kh-btn--primary {
	background: var(--kh-red);
	border-color: var(--kh-red);
}

.kh-btn--ghost,
.kh-btn--outline {
	background: transparent;
	color: var(--kh-red) !important;
}

.kh-btn--dark {
	background: var(--kh-ink);
	border-color: var(--kh-ink);
}

.kh-hero__facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	max-width: 820px;
	margin: 10px 0 0;
	background: var(--kh-border);
	border: 1px solid var(--kh-border);
}

.kh-hero__facts div {
	padding: 17px 18px;
	background: rgba(255, 253, 249, .78);
}

.kh-hero__facts dt {
	color: var(--kh-red);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.kh-hero__facts dd {
	margin: 6px 0 0;
	color: #2d2824;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.35;
}

.kh-quicknav {
	position: relative;
	z-index: 3;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	margin: 0 auto;
	background: var(--kh-ink);
	color: #fff;
	border-top: 1px solid rgba(255, 255, 255, .14);
	border-bottom: 1px solid rgba(255, 255, 255, .14);
}

.kh-quicknav a {
	display: flex;
	min-height: 62px;
	align-items: center;
	justify-content: center;
	border-right: 1px solid rgba(255, 255, 255, .13);
	color: #fff;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.kh-quicknav a:hover {
	background: var(--kh-red);
}

.kh-section {
	padding-top: 96px;
	padding-bottom: 96px;
}

.kh-section__head {
	display: grid;
	gap: 14px;
	max-width: 840px;
	margin-bottom: 42px;
}

.kh-section__head--center {
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.kh-food-strip {
	background: var(--kh-white);
}

.kh-food-strip__row {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.kh-food-strip__row figure {
	position: relative;
	min-height: 330px;
	margin: 0;
	overflow: hidden;
	background: var(--kh-coal);
}

.kh-food-strip__row img {
	height: 330px;
	object-fit: cover;
	transition: transform .4s ease;
}

.kh-food-strip__row figure:hover img {
	transform: scale(1.045);
}

.kh-food-strip__row figcaption {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 13px 16px;
	background: var(--kh-red);
	color: #fff;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.kh-menu-preview {
	background:
		linear-gradient(180deg, var(--kh-cream) 0%, var(--kh-cream-2) 100%);
}

.kh-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 42px;
}

.kh-tabs a {
	padding: 11px 16px;
	border: 1px solid rgba(148, 24, 24, .34);
	background: rgba(255, 253, 249, .72);
	color: var(--kh-red);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.kh-tabs a:hover {
	background: var(--kh-red);
	color: #fff;
}

.kh-dish-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

.kh-dish-card {
	display: grid;
	align-content: start;
	min-height: 420px;
	border: 1px solid rgba(148, 24, 24, .26);
	background: rgba(255, 253, 249, .8);
}

.kh-dish-card img {
	width: calc(100% - 54px);
	aspect-ratio: 1 / 1;
	margin: -28px auto 0;
	border: 10px solid var(--kh-cream);
	object-fit: cover;
	clip-path: circle(50% at 50% 50%);
	box-shadow: 0 18px 34px rgba(33, 26, 19, .17);
}

.kh-dish-card div {
	display: grid;
	gap: 12px;
	padding: 22px;
}

.kh-card-label {
	color: var(--kh-red) !important;
	font-size: 11px !important;
	font-weight: 900;
	letter-spacing: .13em;
	line-height: 1.2 !important;
	text-transform: uppercase;
}

.kh-dish-card p:not(.kh-card-label) {
	font-size: 15px !important;
	line-height: 1.55 !important;
}

.kh-dish-card a,
.kh-service-cards a {
	color: var(--kh-red);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.kh-center-action {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

.kh-band {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(380px, .86fr);
	gap: 44px;
	padding-top: 86px;
	padding-bottom: 86px;
	align-items: center;
}

.kh-band > div {
	display: grid;
	gap: 20px;
}

.kh-band img {
	height: 420px;
	border: 1px solid rgba(255, 255, 255, .2);
	object-fit: cover;
}

.kh-band--red {
	background: var(--kh-red);
	color: #fff;
}

.kh-band--red .kh-kicker,
.kh-band--red p,
.kh-band--dark .kh-kicker,
.kh-band--dark p {
	color: rgba(255, 255, 255, .82) !important;
}

.kh-band--red h2,
.kh-band--dark h2 {
	color: #fff;
}

.kh-band--dark {
	grid-template-columns: minmax(380px, .9fr) minmax(0, 1fr);
	background:
		linear-gradient(90deg, rgba(31, 27, 25, .98), rgba(31, 27, 25, .94)),
		var(--kh-coal);
	color: #fff;
}

.kh-checklist {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kh-checklist li {
	position: relative;
	padding-left: 24px;
	color: rgba(255, 255, 255, .86);
	font-size: 16px;
	line-height: 1.5;
}

.kh-checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .58em;
	width: 10px;
	height: 10px;
	background: var(--kh-gold);
}

.kh-service-cards,
.kh-current__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.kh-service-cards article,
.kh-current__grid article {
	display: grid;
	gap: 14px;
	padding: 30px;
	border: 1px solid var(--kh-border);
	background: var(--kh-white);
	box-shadow: 12px 12px 0 rgba(148, 24, 24, .07);
}

.kh-service-cards p,
.kh-current__grid p {
	font-size: 16px !important;
	line-height: 1.6 !important;
}

.kh-current {
	background: var(--kh-white);
}

.kh-current__grid strong {
	color: var(--kh-red);
	font-size: 18px;
	font-weight: 900;
}

.kh-gallery-story {
	background: var(--kh-cream);
}

.kh-gallery-mosaic {
	display: grid;
	grid-template-columns: 1.15fr .85fr 1fr;
	grid-template-rows: 260px 260px;
	gap: 16px;
}

.kh-gallery-mosaic img {
	height: 100%;
	object-fit: cover;
}

.kh-gallery-mosaic img:first-child {
	grid-row: span 2;
}

.kh-gallery-mosaic img:last-child {
	grid-column: span 2;
}

.kh-location {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, .7fr);
	gap: 46px;
	background: var(--kh-white);
}

.kh-location > div:first-child {
	display: grid;
	gap: 24px;
}

.kh-info-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	border: 1px solid var(--kh-border);
	background: var(--kh-border);
}

.kh-info-grid span {
	display: grid;
	gap: 5px;
	padding: 18px;
	background: #fff;
	color: #39322d;
	font-size: 15px;
	line-height: 1.35;
}

.kh-info-grid strong {
	color: var(--kh-red);
	font-size: 11px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.kh-faq-mini {
	align-self: start;
	border: 1px solid var(--kh-border);
	background: var(--kh-cream);
}

.kh-faq-mini h3 {
	padding: 24px;
	border-bottom: 1px solid var(--kh-border);
}

.kh-faq-mini details {
	border-bottom: 1px solid var(--kh-border);
}

.kh-faq-mini details:last-child {
	border-bottom: 0;
}

.kh-faq-mini summary {
	cursor: pointer;
	padding: 18px 24px;
	color: var(--kh-ink);
	font-weight: 900;
}

.kh-faq-mini p {
	padding: 0 24px 20px;
	font-size: 15px !important;
	line-height: 1.55 !important;
}

.kh-final {
	display: grid;
	gap: 20px;
	padding-top: 88px;
	padding-bottom: 92px;
	justify-items: center;
	background:
		linear-gradient(rgba(20, 17, 16, .78), rgba(20, 17, 16, .83)),
		url("http://localhost:8080/wp-content/uploads/khushi-home/khushi-berlin-indische-currys-tandoori.jpg") center / cover;
	color: #fff;
	text-align: center;
}

.kh-final h2 {
	color: #fff;
}

.kh-final p {
	max-width: 680px;
	color: rgba(255, 255, 255, .83) !important;
}

.kh-actions--center {
	justify-content: center;
}

@media (max-width: 1100px) {
	.kh-hero,
	.kh-band,
	.kh-location {
		grid-template-columns: 1fr;
	}

	.kh-hero {
		min-height: 0;
		padding-top: 72px;
	}

	.kh-hero__visual,
	.kh-hero__visual img {
		min-height: 0;
		height: 460px;
	}

	.kh-dish-grid,
	.kh-food-strip__row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kh-service-cards,
	.kh-current__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	html,
	body {
		overflow-x: clip;
	}

	.elementor-location-header,
	.elementor-location-header .e-con,
	.elementor-location-header .elementor-widget,
	.elementor-location-header .elementor-widget-container {
		max-width: 100vw !important;
	}

	.elementor-location-header {
		overflow: hidden;
	}

	.elementor-location-header img {
		max-width: 132px !important;
		height: auto !important;
	}

	.elementor-location-header .elementor-button {
		max-width: calc(100vw - 32px) !important;
		white-space: normal !important;
	}

	.kh-hero,
	.kh-section,
	.kh-band,
	.kh-final {
		padding-right: 18px;
		padding-left: 18px;
	}

	.kh-hero {
		padding-top: 46px;
		padding-bottom: 48px;
		gap: 34px;
	}

	.kh-redesign h1 {
		font-size: 44px;
	}

	.kh-redesign h2 {
		font-size: 36px;
	}

	.kh-lead {
		font-size: 18px !important;
	}

	.kh-actions,
	.kh-actions--center {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
	}

	.kh-btn {
		width: 100%;
		min-height: 54px;
	}

	.kh-hero__facts,
	.kh-quicknav,
	.kh-dish-grid,
	.kh-food-strip__row,
	.kh-info-grid {
		grid-template-columns: 1fr;
	}

	.kh-quicknav a {
		justify-content: flex-start;
		padding: 0 18px;
	}

	.kh-hero__visual,
	.kh-hero__visual img {
		height: 340px;
	}

	.kh-section {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.kh-tabs {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kh-tabs a {
		text-align: center;
	}

	.kh-dish-card {
		min-height: 0;
	}

	.kh-band {
		padding-top: 62px;
		padding-bottom: 62px;
	}

	.kh-band img {
		height: 300px;
	}

	.kh-gallery-mosaic {
		grid-template-columns: 1fr;
		grid-template-rows: none;
	}

	.kh-gallery-mosaic img,
	.kh-gallery-mosaic img:first-child,
	.kh-gallery-mosaic img:last-child {
		grid-column: auto;
		grid-row: auto;
		height: 250px;
	}
}

.kh-homepage .e-con {
	--container-max-width: 1320px;
}

.kh-homepage .kh-section {
	padding: 0 20px;
}

.kh-homepage .kh-container {
	margin: 0 auto;
	max-width: 1320px;
	width: 100%;
}

.kh-homepage .kh-overline {
	color: var(--kh-accent);
	font-family: "Libre Franklin", sans-serif;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	margin: 0;
	text-transform: uppercase;
}

.kh-homepage .kh-intro-copy p,
.kh-homepage .kh-story-copy p,
.kh-homepage .kh-location-copy p,
.kh-homepage .kh-card-copy p,
.kh-homepage .kh-home-cta__copy p {
	color: var(--kh-muted);
	font-size: 1.05rem;
	line-height: 1.7;
	margin: 0;
}

.kh-homepage .kh-btn--primary .elementor-button,
.kh-homepage .kh-btn--secondary .elementor-button,
.kh-homepage .kh-btn--tertiary .elementor-button {
	align-items: center;
	border: 1px solid transparent;
	display: inline-flex;
	justify-content: center;
	min-height: 56px;
	padding: 0 28px;
	transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.kh-homepage .kh-btn--primary .elementor-button:hover,
.kh-homepage .kh-btn--secondary .elementor-button:hover,
.kh-homepage .kh-btn--tertiary .elementor-button:hover {
	transform: translateY(-1px);
}

.kh-homepage .kh-btn--secondary .elementor-button {
	background: transparent;
	border-color: var(--kh-border);
	color: var(--kh-primary);
}

.kh-homepage .kh-btn--secondary .elementor-button:hover,
.kh-homepage .kh-btn--secondary .elementor-button:focus {
	background: var(--kh-primary);
	border-color: var(--kh-primary);
	color: #fff;
}

.kh-homepage .kh-btn--tertiary .elementor-button {
	background: transparent;
	border-color: transparent;
	color: var(--kh-accent);
	padding-left: 0;
	padding-right: 0;
}

.kh-homepage .kh-btn--tertiary .elementor-button:hover,
.kh-homepage .kh-btn--tertiary .elementor-button:focus {
	background: transparent;
	color: var(--kh-accent-dark);
}

.kh-homepage .kh-home-utility {
	padding-top: var(--kh-space-lg);
}

.kh-homepage .kh-home-utility__grid {
	background: var(--kh-surface);
	border: 1px solid var(--kh-border);
	box-shadow: var(--kh-shadow-soft);
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
}

.kh-homepage .kh-home-utility__grid > .e-con,
.kh-homepage .kh-home-trust__grid > .e-con,
.kh-homepage .kh-dish-grid > .e-con,
.kh-homepage .kh-menu-grid > .e-con,
.kh-homepage .kh-gallery-grid > .e-con,
.kh-homepage .kh-why-grid > .e-con,
.kh-homepage .kh-feature-grid > .e-con {
	max-width: none !important;
	width: auto !important;
}

.kh-homepage .kh-home-utility__item {
	background: var(--kh-surface);
	padding: 18px 20px;
}

.kh-homepage .kh-home-utility__item strong,
.kh-homepage .kh-home-trust__item strong,
.kh-homepage .kh-why-card strong,
.kh-homepage .kh-location-meta strong {
	color: var(--kh-primary);
	display: block !important;
	font-family: "Fraunces", serif;
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: 4px;
}

.kh-homepage .kh-home-utility__item span,
.kh-homepage .kh-home-trust__item span,
.kh-homepage .kh-location-meta span {
	color: var(--kh-muted);
	display: block !important;
	font-size: 0.95rem;
	line-height: 1.55;
}

.kh-homepage .kh-home-hero {
	padding-top: var(--kh-space-xl);
	padding-bottom: var(--kh-space-2xl);
}

.kh-homepage .kh-home-hero__grid {
	align-items: center;
	display: grid !important;
	gap: var(--kh-space-lg);
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.kh-homepage .kh-home-hero__copy {
	display: grid;
	gap: 18px;
}

.kh-homepage .kh-home-hero__copy h1 {
	font-size: clamp(3rem, 6vw, 5.8rem);
	line-height: 0.96;
	margin: 0;
	max-width: 11ch;
	text-wrap: balance;
}

.kh-homepage .kh-home-hero__actions {
	display: flex !important;
	flex-wrap: wrap;
	gap: 14px;
}

.kh-homepage .kh-home-hero__actions > .e-con,
.kh-homepage .kh-location-actions > .e-con,
.kh-homepage .kh-home-cta__actions > .e-con {
	flex: 0 0 auto;
	max-width: none !important;
	width: auto !important;
}

.kh-homepage .kh-home-hero__trust {
	display: flex !important;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 6px;
}

.kh-homepage .kh-home-hero__trust > .e-con,
.kh-homepage .kh-location-meta > .e-con {
	flex: 1 1 220px;
	max-width: none !important;
	width: auto !important;
}

.kh-homepage .kh-home-hero__trust .elementor-widget-container {
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid var(--kh-border);
	padding: 14px 16px;
}

.kh-homepage .kh-home-hero__media {
	display: grid !important;
	gap: 14px;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
}

.kh-homepage .kh-home-hero__media-main,
.kh-homepage .kh-home-hero__media-stack {
	display: grid !important;
	gap: 14px;
}

.kh-homepage .kh-home-hero__media-main img,
.kh-homepage .kh-home-hero__media-stack img,
.kh-homepage .kh-dish-card img,
.kh-homepage .kh-gallery-card img,
.kh-homepage .kh-story-media img,
.kh-homepage .kh-location-map iframe {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.kh-homepage .kh-home-hero__media-main .elementor-widget-container {
	height: 100%;
	min-height: 560px;
	overflow: hidden;
}

.kh-homepage .kh-home-hero__media-stack .elementor-widget-container {
	min-height: 272px;
	overflow: hidden;
}

.kh-homepage .kh-home-trust {
	padding-bottom: var(--kh-space-2xl);
}

.kh-homepage .kh-home-trust__grid {
	display: grid !important;
	gap: 1px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kh-homepage .kh-home-trust__item .elementor-widget-container {
	background: rgba(255, 255, 255, 0.75);
	border: 1px solid var(--kh-border);
	padding: 18px 20px;
}

.kh-homepage .kh-signature,
.kh-homepage .kh-menu-teaser,
.kh-homepage .kh-gallery,
.kh-homepage .kh-home-cta {
	padding-top: var(--kh-space-2xl);
	padding-bottom: var(--kh-space-2xl);
}

.kh-homepage .kh-story,
.kh-homepage .kh-why,
.kh-homepage .kh-location {
	padding-top: var(--kh-space-3xl);
	padding-bottom: var(--kh-space-3xl);
}

.kh-homepage .kh-story,
.kh-homepage .kh-location {
	background: #fffdf8;
}

.kh-homepage .kh-section-head {
	align-items: end;
	display: flex;
	gap: var(--kh-space-md);
	justify-content: space-between;
	margin-bottom: var(--kh-space-xl);
}

.kh-homepage .kh-section-head h2 {
	margin: 8px 0 0;
	max-width: 12ch;
	text-wrap: balance;
}

.kh-homepage .kh-section-head p {
	color: var(--kh-muted);
	margin: 12px 0 0;
	max-width: 52ch;
}

.kh-homepage .kh-dish-grid {
	display: grid !important;
	gap: var(--kh-space-md);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kh-homepage .kh-dish-card {
	background: var(--kh-surface);
	border: 1px solid var(--kh-border);
	box-shadow: var(--kh-shadow-soft);
	display: grid;
	grid-template-rows: 260px auto;
	overflow: hidden;
}

.kh-homepage .kh-dish-card__copy {
	display: grid;
	gap: 14px;
	padding: 24px;
}

.kh-homepage .kh-dish-card__copy h3,
.kh-homepage .kh-menu-tile__copy h3,
.kh-homepage .kh-feature-card__copy h3,
.kh-homepage .kh-card-copy h3 {
	font-size: 1.55rem;
	margin: 0;
}

.kh-homepage .kh-dish-card__eyebrow,
.kh-homepage .kh-card-copy .kh-overline {
	color: var(--kh-accent);
	font-family: "Libre Franklin", sans-serif;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kh-homepage .kh-story__grid,
.kh-homepage .kh-location__grid {
	align-items: center;
	display: grid !important;
	gap: var(--kh-space-xl);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kh-homepage .kh-story-media {
	display: grid !important;
	gap: 16px;
	grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
}

.kh-homepage .kh-story-media__stack {
	display: grid !important;
	gap: 16px;
}

.kh-homepage .kh-story-media .elementor-widget-container {
	height: 100%;
	min-height: 260px;
	overflow: hidden;
}

.kh-homepage .kh-story-copy {
	display: grid;
	gap: 16px;
}

.kh-homepage .kh-story-list {
	display: grid;
	gap: 12px;
	margin-top: 10px;
}

.kh-homepage .kh-story-list .elementor-widget-container {
	border-top: 1px solid var(--kh-border);
	padding-top: 12px;
}

.kh-homepage .kh-menu-grid {
	display: grid !important;
	gap: 18px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kh-homepage .kh-menu-tile {
	background: var(--kh-surface);
	border: 1px solid var(--kh-border);
	display: grid;
	gap: 12px;
	padding: 22px;
}

.kh-homepage .kh-menu-tile__copy p,
.kh-homepage .kh-feature-card__copy p,
.kh-homepage .kh-location-copy p,
.kh-homepage .kh-why-card p {
	color: var(--kh-muted);
	margin: 0;
}

.kh-homepage .kh-gallery-grid {
	display: grid !important;
	gap: 18px;
	grid-template-columns: 1.1fr 0.9fr 0.9fr;
}

.kh-homepage .kh-gallery-card .elementor-widget-container {
	min-height: 260px;
	overflow: hidden;
}

.kh-homepage .kh-gallery-grid > .kh-gallery-card:first-child .elementor-widget-container {
	min-height: 540px;
}

.kh-homepage .kh-why-grid {
	display: grid !important;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kh-homepage .kh-why-card .elementor-widget-container {
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid var(--kh-border);
	height: 100%;
	padding: 22px;
}

.kh-homepage .kh-feature-grid {
	display: grid !important;
	gap: var(--kh-space-md);
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kh-homepage .kh-feature-card {
	background: var(--kh-dark-surface);
	background-position: center;
	background-size: cover;
	color: #fff;
	min-height: 360px;
	position: relative;
}

.kh-homepage .kh-feature-card::before {
	background: linear-gradient(180deg, rgba(16, 16, 16, 0.22), rgba(16, 16, 16, 0.8));
	content: "";
	inset: 0;
	position: absolute;
}

.kh-homepage .kh-feature-card__copy {
	display: grid;
	gap: 14px;
	height: 100%;
	padding: 28px;
	position: relative;
}

.kh-homepage .kh-feature-card__copy h3,
.kh-homepage .kh-feature-card__copy p,
.kh-homepage .kh-feature-card__copy .kh-overline {
	color: #fff;
}

.kh-homepage .kh-location-map .elementor-widget-container {
	border: 1px solid var(--kh-border);
	min-height: 520px;
	overflow: hidden;
}

.kh-homepage .kh-location-copy {
	display: grid;
	gap: 18px;
}

.kh-homepage .kh-location-meta {
	display: grid !important;
	gap: 14px;
	margin-top: 8px;
}

.kh-homepage .kh-location-meta .elementor-widget-container {
	border-top: 1px solid var(--kh-border);
	padding-top: 12px;
}

.kh-homepage .kh-location-actions {
	display: flex !important;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 8px;
}

.kh-homepage .kh-home-cta {
	color: #fff;
}

.kh-homepage .kh-home-cta .kh-container {
	background-position: center;
	background-size: cover;
	min-height: 420px;
	position: relative;
}

.kh-homepage .kh-home-cta .kh-container::before {
	background: linear-gradient(180deg, rgba(16, 16, 16, 0.35), rgba(16, 16, 16, 0.78));
	content: "";
	inset: 0;
	position: absolute;
}

.kh-homepage .kh-home-cta__content {
	align-items: center;
	display: grid !important;
	height: 100%;
	justify-items: center;
	padding: var(--kh-space-3xl) 20px;
	position: relative;
	text-align: center;
}

.kh-homepage .kh-home-cta__copy {
	display: grid;
	gap: 16px;
	max-width: 720px;
}

.kh-homepage .kh-home-cta__copy .kh-overline,
.kh-homepage .kh-home-cta__copy h2,
.kh-homepage .kh-home-cta__copy p {
	color: #fff;
}

.kh-homepage .kh-home-cta__actions {
	display: flex !important;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
	margin-top: 8px;
}

.kh-homepage .kh-home-cta .kh-btn--secondary .elementor-button {
	border-color: rgba(255, 255, 255, 0.45);
	color: #fff;
}

.kh-homepage .kh-home-cta .kh-btn--secondary .elementor-button:hover,
.kh-homepage .kh-home-cta .kh-btn--secondary .elementor-button:focus {
	background: #fff;
	color: var(--kh-primary);
}

@media (max-width: 1024px) {
	.kh-homepage .kh-home-utility__grid,
	.kh-homepage .kh-home-trust__grid,
	.kh-homepage .kh-dish-grid,
	.kh-homepage .kh-menu-grid,
	.kh-homepage .kh-why-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kh-homepage .kh-home-hero__grid,
	.kh-homepage .kh-story__grid,
	.kh-homepage .kh-location__grid,
	.kh-homepage .kh-feature-grid {
		grid-template-columns: 1fr;
	}

	.kh-homepage .kh-gallery-grid {
		grid-template-columns: 1fr 1fr;
	}

	.kh-homepage .kh-gallery-grid > .kh-gallery-card:first-child {
		grid-column: 1 / -1;
	}

	.kh-homepage .kh-section-head {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 767px) {
	.kh-homepage .kh-section {
		padding-left: 12px;
		padding-right: 12px;
	}

	.kh-homepage .kh-home-hero,
	.kh-homepage .kh-signature,
	.kh-homepage .kh-menu-teaser,
	.kh-homepage .kh-gallery,
	.kh-homepage .kh-home-cta {
		padding-top: 48px;
		padding-bottom: 48px;
	}

	.kh-homepage .kh-story,
	.kh-homepage .kh-why,
	.kh-homepage .kh-location {
		padding-top: 64px;
		padding-bottom: 64px;
	}

	.kh-homepage .kh-home-utility__grid,
	.kh-homepage .kh-home-trust__grid,
	.kh-homepage .kh-dish-grid,
	.kh-homepage .kh-menu-grid,
	.kh-homepage .kh-why-grid,
	.kh-homepage .kh-gallery-grid {
		grid-template-columns: 1fr;
	}

	.kh-homepage .kh-home-hero__copy h1 {
		font-size: clamp(2.55rem, 10vw, 4rem);
		max-width: none;
	}

	.kh-homepage .kh-home-hero__media {
		grid-template-columns: 1fr;
	}

	.kh-homepage .kh-home-hero__media-main .elementor-widget-container,
	.kh-homepage .kh-home-hero__media-stack .elementor-widget-container,
	.kh-homepage .kh-gallery-card .elementor-widget-container,
	.kh-homepage .kh-location-map .elementor-widget-container {
		min-height: 260px;
	}

	.kh-homepage .kh-story-media {
		grid-template-columns: 1fr;
	}

	.kh-homepage .kh-home-hero__actions,
	.kh-homepage .kh-location-actions,
	.kh-homepage .kh-home-cta__actions {
		flex-direction: column;
	}

	.kh-homepage .kh-home-hero__actions .elementor-button-wrapper,
	.kh-homepage .kh-location-actions .elementor-button-wrapper,
	.kh-homepage .kh-home-cta__actions .elementor-button-wrapper {
		width: 100%;
	}

	.kh-homepage .kh-home-hero__actions .elementor-button,
	.kh-homepage .kh-location-actions .elementor-button,
	.kh-homepage .kh-home-cta__actions .elementor-button {
		width: 100%;
	}
}

/* Khushi homepage redesign v2: compact Elementor shell, semantic editorial layout. */
.kh-homepage-shell,
.kh-homepage-shell .elementor-widget-html,
.kh-homepage-shell .elementor-widget-container {
	width: 100%;
}

.kh-redesign {
	--kh-red: #a30f14;
	--kh-red-dark: #7f0b0f;
	--kh-ink: #181514;
	--kh-coal: #211d1b;
	--kh-cream: #fff8ed;
	--kh-cream-2: #fdebd8;
	--kh-paper: #fffdf8;
	--kh-gold: #c7923e;
	--kh-line: rgba(24, 21, 20, 0.16);
	--kh-muted: #645b54;
	background: var(--kh-cream);
	color: var(--kh-ink);
	font-family: "Libre Franklin", Arial, sans-serif;
	font-size: 17px;
	line-height: 1.6;
	overflow: hidden;
}

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

.kh-redesign img {
	display: block;
	height: auto;
	max-width: 100%;
}

.kh-redesign a {
	color: inherit;
	text-decoration: none;
}

.kh-redesign h1,
.kh-redesign h2,
.kh-redesign h3 {
	color: inherit;
	font-family: "Fraunces", Georgia, serif;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
	margin: 0;
	text-wrap: balance;
}

.kh-redesign h1 {
	font-size: clamp(48px, 7vw, 104px);
	max-width: 11ch;
}

.kh-redesign h2 {
	font-size: clamp(34px, 4.2vw, 68px);
}

.kh-redesign h3 {
	font-size: clamp(22px, 2vw, 30px);
}

.kh-redesign p {
	margin: 0;
}

.kh-kicker {
	color: var(--kh-red);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.16em;
	line-height: 1.3;
	text-transform: uppercase;
}

.kh-lead {
	color: var(--kh-muted);
	font-size: clamp(18px, 1.6vw, 22px);
	max-width: 58ch;
}

.kh-btn {
	align-items: center;
	border: 1px solid currentColor;
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	justify-content: center;
	letter-spacing: 0.08em;
	min-height: 50px;
	padding: 14px 24px;
	text-transform: uppercase;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.kh-btn:focus-visible,
.kh-redesign a:focus-visible,
.kh-redesign summary:focus-visible {
	outline: 3px solid #f0b54c;
	outline-offset: 3px;
}

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

.kh-btn--primary {
	background: var(--kh-red);
	border-color: var(--kh-red);
	color: #fff;
}

.kh-btn--primary:hover {
	background: var(--kh-red-dark);
	border-color: var(--kh-red-dark);
	color: #fff;
}

.kh-btn--ghost {
	background: transparent;
	border-color: rgba(24, 21, 20, 0.32);
	color: var(--kh-ink);
}

.kh-btn--ghost:hover {
	background: #fff;
	border-color: var(--kh-red);
	color: var(--kh-red);
}

.kh-btn--dark {
	background: var(--kh-ink);
	border-color: var(--kh-ink);
	color: #fff;
}

.kh-btn--outline {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.58);
	color: #fff;
}

.kh-section {
	margin-inline: auto;
	max-width: 1320px;
	padding: 96px 28px;
	position: relative;
}

.kh-section__head {
	align-items: end;
	display: grid;
	gap: 20px;
	grid-template-columns: minmax(0, 0.85fr) minmax(280px, 0.45fr);
	margin-bottom: 44px;
}

.kh-section__head .kh-kicker {
	grid-column: 1 / -1;
}

.kh-section__head p:not(.kh-kicker) {
	color: var(--kh-muted);
	max-width: 58ch;
}

.kh-section__head--center {
	display: grid;
	justify-items: center;
	margin-inline: auto;
	max-width: 820px;
	text-align: center;
}

.kh-hero {
	align-items: center;
	display: grid;
	grid-template-columns: minmax(320px, 0.82fr) minmax(460px, 1fr);
	min-height: calc(100vh - 130px);
	overflow: hidden;
	position: relative;
}

.kh-hero::before {
	background:
		linear-gradient(90deg, rgba(255, 248, 237, 0.96) 0%, rgba(255, 248, 237, 0.94) 35%, rgba(255, 248, 237, 0) 68%),
		url("/wp-content/uploads/khushi-home/khushi-berlin-indische-currys-tandoori.jpg") center right / cover no-repeat;
	content: "";
	inset: 0;
	position: absolute;
}

.kh-hero__copy {
	display: grid;
	gap: 22px;
	padding: 88px max(28px, calc((100vw - 1320px) / 2 + 28px));
	position: relative;
	z-index: 1;
}

.kh-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.kh-actions--center {
	justify-content: center;
}

.kh-hero__meta {
	border-top: 1px solid var(--kh-line);
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 12px;
	max-width: 780px;
	padding-top: 24px;
}

.kh-hero__meta span {
	color: var(--kh-muted);
	display: block;
	font-size: 14px;
	line-height: 1.45;
}

.kh-hero__meta strong {
	color: var(--kh-ink);
	display: block;
	font-family: "Fraunces", Georgia, serif;
	font-size: 19px;
}

.kh-hero__plate {
	align-self: stretch;
	clip-path: polygon(14% 0, 100% 0, 100% 100%, 0 100%, 9% 72%, 3% 49%, 12% 23%);
	min-height: 560px;
	position: relative;
	z-index: 1;
}

.kh-hero__plate img {
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.kh-quicknav {
	background: var(--kh-coal);
	color: #fff;
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	position: relative;
	z-index: 2;
}

.kh-quicknav a {
	align-items: center;
	border-right: 1px solid rgba(255, 255, 255, 0.14);
	color: #fff;
	display: flex;
	font-size: 12px;
	font-weight: 800;
	justify-content: center;
	letter-spacing: 0.08em;
	min-height: 54px;
	text-transform: uppercase;
}

.kh-quicknav a:hover {
	background: var(--kh-red);
}

.kh-feature-strip {
	padding-top: 74px;
}

.kh-feature-strip__images {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kh-feature-strip__images img {
	aspect-ratio: 1 / 1.12;
	border: 1px solid var(--kh-line);
	object-fit: cover;
	width: 100%;
}

.kh-menu-preview {
	background:
		radial-gradient(circle at 12% 10%, rgba(199, 146, 62, 0.12), transparent 26%),
		linear-gradient(180deg, #fff8ed, #fdebd8);
	max-width: none;
	padding-inline: max(28px, calc((100vw - 1320px) / 2 + 28px));
}

.kh-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin-bottom: 44px;
}

.kh-tabs a {
	background: rgba(255, 255, 255, 0.74);
	border: 1px solid rgba(24, 21, 20, 0.22);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.04em;
	min-width: 112px;
	padding: 10px 14px;
	text-align: center;
	text-transform: uppercase;
}

.kh-tabs a:hover {
	background: var(--kh-red);
	border-color: var(--kh-red);
	color: #fff;
}

.kh-dish-grid {
	display: grid;
	gap: 28px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 24px;
}

.kh-dish-card {
	background: rgba(255, 253, 248, 0.88);
	border: 1px solid rgba(163, 15, 20, 0.2);
	display: grid;
	margin-top: 70px;
	min-height: 330px;
	padding: 0 24px 24px;
	text-align: center;
}

.kh-dish-card img {
	aspect-ratio: 1;
	border: 8px solid var(--kh-cream-2);
	border-radius: 50%;
	margin: -72px auto 18px;
	object-fit: cover;
	width: min(168px, 72%);
}

.kh-card-label {
	color: var(--kh-red);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.kh-dish-card h3 {
	font-family: "Libre Franklin", Arial, sans-serif;
	font-size: 22px;
	line-height: 1.2;
	margin: 8px 0 10px;
}

.kh-dish-card p:not(.kh-card-label) {
	color: var(--kh-muted);
	font-size: 15px;
}

.kh-dish-card a {
	border-bottom: 1px solid currentColor;
	color: var(--kh-red);
	display: inline-block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.06em;
	margin-top: 18px;
	text-transform: uppercase;
}

.kh-center-action {
	display: flex;
	justify-content: center;
	margin-top: 42px;
}

.kh-band {
	align-items: center;
	display: grid;
	gap: 52px;
	grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
	padding: 92px max(28px, calc((100vw - 1320px) / 2 + 28px));
}

.kh-band h2 {
	margin: 12px 0 22px;
	max-width: 12ch;
}

.kh-band p:not(.kh-kicker) {
	max-width: 62ch;
}

.kh-band img {
	aspect-ratio: 16 / 10;
	object-fit: cover;
	width: 100%;
}

.kh-band--red {
	background: var(--kh-red);
	color: #fff;
}

.kh-band--red .kh-kicker,
.kh-band--red p {
	color: #fff;
}

.kh-band--dark {
	background: var(--kh-coal);
	color: #fff;
}

.kh-band--dark .kh-kicker {
	color: #f3bd6b;
}

.kh-band--dark p,
.kh-checklist {
	color: rgba(255, 255, 255, 0.78);
}

.kh-checklist {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 22px 0 28px;
	padding: 0;
}

.kh-checklist li {
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	padding-top: 10px;
}

.kh-service-cards {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kh-service-cards article {
	background: var(--kh-paper);
	border: 1px solid var(--kh-line);
	min-height: 270px;
	padding: 32px;
}

.kh-service-cards p {
	color: var(--kh-muted);
	margin: 16px 0 24px;
}

.kh-service-cards a {
	border-bottom: 1px solid currentColor;
	color: var(--kh-red);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.kh-gallery-story {
	background: #fffdf8;
	max-width: none;
	padding-inline: max(28px, calc((100vw - 1320px) / 2 + 28px));
}

.kh-gallery-mosaic {
	display: grid;
	gap: 18px;
	grid-template-columns: 1.2fr 0.8fr 0.8fr;
}

.kh-gallery-mosaic img {
	aspect-ratio: 1 / 0.78;
	border: 1px solid var(--kh-line);
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.kh-gallery-mosaic img:first-child {
	grid-row: span 2;
}

.kh-location {
	display: grid;
	gap: 42px;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 0.6fr);
}

.kh-location p {
	color: var(--kh-muted);
	margin: 22px 0;
	max-width: 68ch;
}

.kh-info-grid {
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 30px 0;
}

.kh-info-grid span {
	background: #fff;
	border: 1px solid var(--kh-line);
	color: var(--kh-muted);
	display: block;
	padding: 18px;
}

.kh-info-grid strong {
	color: var(--kh-ink);
	display: block;
	font-family: "Fraunces", Georgia, serif;
	font-size: 19px;
	margin-bottom: 4px;
}

.kh-faq-mini {
	background: var(--kh-coal);
	color: #fff;
	padding: 34px;
}

.kh-faq-mini h3 {
	margin-bottom: 20px;
}

.kh-faq-mini details {
	border-top: 1px solid rgba(255, 255, 255, 0.18);
	padding: 16px 0;
}

.kh-faq-mini summary {
	cursor: pointer;
	font-weight: 800;
}

.kh-faq-mini p {
	color: rgba(255, 255, 255, 0.72);
	margin: 10px 0 0;
}

.kh-final {
	background:
		linear-gradient(180deg, rgba(24, 21, 20, 0.68), rgba(24, 21, 20, 0.88)),
		url("/wp-content/uploads/khushi-home/khushi-berlin-indische-currys-tandoori.jpg") center / cover no-repeat;
	color: #fff;
	padding: 120px 28px;
	text-align: center;
}

.kh-final h2,
.kh-final p {
	margin-inline: auto;
	max-width: 780px;
}

.kh-final h2 {
	margin-top: 12px;
}

.kh-final p {
	color: rgba(255, 255, 255, 0.78);
	margin-top: 18px;
}

.kh-final .kh-actions {
	margin-top: 28px;
}

@media (max-width: 1100px) {
	.kh-hero {
		grid-template-columns: 1fr;
		min-height: auto;
	}

	.kh-hero::before {
		background: var(--kh-cream);
	}

	.kh-hero__plate {
		clip-path: none;
		min-height: auto;
		order: -1;
	}

	.kh-hero__plate img {
		aspect-ratio: 16 / 9;
	}

	.kh-dish-grid,
	.kh-feature-strip__images {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kh-band,
	.kh-location,
	.kh-section__head {
		grid-template-columns: 1fr;
	}

	.kh-gallery-mosaic {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.kh-redesign {
		font-size: 16px;
	}

	.kh-redesign h1 {
		font-size: 46px;
		max-width: 10ch;
	}

	.kh-section,
	.kh-band,
	.kh-gallery-story,
	.kh-menu-preview {
		padding: 64px 20px;
	}

	.kh-hero__copy {
		padding: 46px 20px 60px;
	}

	.kh-hero__meta,
	.kh-dish-grid,
	.kh-feature-strip__images,
	.kh-service-cards,
	.kh-gallery-mosaic,
	.kh-info-grid {
		grid-template-columns: 1fr;
	}

	.kh-quicknav {
		grid-template-columns: 1fr 1fr;
	}

	.kh-quicknav a:last-child {
		grid-column: 1 / -1;
	}

	.kh-actions,
	.kh-actions--center {
		align-items: stretch;
		flex-direction: column;
	}

	.kh-btn {
		width: 100%;
	}

	.kh-dish-card {
		min-height: auto;
	}

	.kh-band img,
	.kh-gallery-mosaic img {
		aspect-ratio: 4 / 3;
	}

	.kh-faq-mini {
		padding: 26px 22px;
	}
}

/* ─────────────────────────────────────────────────────────────────────────────
   Khushi Startseite Redesign v3 – Elementor container overrides
   Ensures all kh-redesign sections render correctly inside Elementor's .e-con
   ───────────────────────────────────────────────────────────────────────────── */

/* Global token surface for all new sections */
.kh-redesign,
.kh-redesign.e-con,
.kh-redesign > .e-con-inner {
	--kh-red: #a30f14;
	--kh-red-dark: #7f0b0f;
	--kh-ink: #181514;
	--kh-coal: #211d1b;
	--kh-cream: #fff8ed;
	--kh-cream-2: #fdebd8;
	--kh-paper: #fffdf8;
	--kh-gold: #c7923e;
	--kh-line: rgba(24, 21, 20, 0.16);
	--kh-muted: #645b54;
	font-family: "Libre Franklin", Arial, sans-serif;
	font-size: 17px;
	line-height: 1.6;
	color: var(--kh-ink);
}

/* Make Elementor containers inside kh-redesign full width */
.kh-redesign.e-con > .e-con-inner,
.kh-redesign .e-con {
	max-width: none;
	width: 100%;
}

/* Typography inside all kh-redesign sections */
.kh-redesign .elementor-widget-heading .elementor-heading-title,
.kh-redesign h1,
.kh-redesign h2,
.kh-redesign h3 {
	font-family: "Fraunces", Georgia, serif;
	font-weight: 700;
	line-height: 1.05;
	margin: 0;
	text-wrap: balance;
	letter-spacing: -0.01em;
}

.kh-redesign .elementor-widget-container a {
	color: inherit;
	text-decoration: none;
}

.kh-redesign .elementor-widget-container img {
	display: block;
	height: auto;
	max-width: 100%;
}

/* kh-container: max-width centering */
.kh-container.e-con > .e-con-inner,
.kh-container {
	max-width: 1320px !important;
	margin-inline: auto;
	width: 100%;
}

/* kh-home-utility */
.kh-redesign.kh-home-utility,
.kh-redesign.kh-section.kh-home-utility {
	background: #fff !important;
	border-bottom: 1px solid rgba(24, 21, 20, 0.12);
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.kh-redesign .kh-home-utility__grid.e-con {
	display: flex !important;
	flex-direction: row !important;
	gap: 1px;
	background: rgba(24, 21, 20, 0.12);
}

.kh-redesign .kh-home-utility__item.e-con {
	background: #fff;
	flex: 1;
	padding: 14px 18px !important;
}

.kh-redesign .kh-home-utility__item strong {
	display: block;
	font-family: "Fraunces", Georgia, serif;
	font-size: 0.88rem;
	font-weight: 600;
	color: #181514;
}

.kh-redesign .kh-home-utility__item span,
.kh-redesign .kh-home-utility__item a {
	color: #645b54;
	font-size: 0.85rem;
}

/* kh-home-trust responsive grid */
.kh-redesign .kh-home-trust__grid.e-con {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	background: rgba(24, 21, 20, 0.14);
	border: 1px solid rgba(24, 21, 20, 0.14);
}

.kh-redesign .kh-home-trust__item.e-con {
	background: rgba(255, 248, 237, 0.9);
	padding: 18px 20px !important;
}

.kh-redesign .kh-home-trust__item strong {
	display: block;
	font-family: "Fraunces", Georgia, serif;
	font-weight: 600;
	color: #181514;
	margin-bottom: 4px;
}

.kh-redesign .kh-home-trust__item span {
	color: #645b54;
	font-size: 0.9rem;
}

/* kh-service-cards component */
.kh-service-cards.e-con {
	display: grid !important;
	gap: 22px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.kh-service-cards__card.e-con {
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.22);
	min-height: 240px;
	padding: 30px !important;
}

.kh-band--red .kh-service-cards__card .elementor-heading-title {
	color: #fff;
	margin: 10px 0 12px;
}

.kh-band--red .kh-service-cards__card .elementor-widget-text-editor p {
	color: rgba(255, 255, 255, 0.85);
	margin: 0 0 16px;
}

/* kh-info-grid */
.kh-redesign .kh-info-grid.e-con {
	display: grid !important;
	gap: 1px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	background: rgba(24, 21, 20, 0.14);
	border: 1px solid rgba(24, 21, 20, 0.14);
	margin: 24px 0;
}

.kh-redesign .kh-info-grid > .e-con {
	background: #fff !important;
	padding: 18px !important;
	max-width: none !important;
}

.kh-redesign .kh-info-grid strong {
	display: block;
	font-family: "Fraunces", Georgia, serif;
	font-size: 1rem;
	color: #181514;
	margin-bottom: 4px;
}

.kh-redesign .kh-info-grid span {
	color: #645b54;
	font-size: 0.88rem;
}

/* kh-final – Elementor overlay fix */
.kh-redesign.kh-final.e-con {
	position: relative !important;
	color: #fff;
	padding: 120px 28px !important;
	min-height: 480px;
	background-size: cover !important;
	background-position: center center !important;
}

.kh-redesign.kh-final.e-con::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(24, 21, 20, 0.6), rgba(24, 21, 20, 0.88));
	z-index: 0;
	pointer-events: none;
}

.kh-redesign.kh-final > .e-con-inner {
	position: relative;
	z-index: 1;
}

.kh-redesign.kh-final .elementor-heading-title,
.kh-redesign.kh-final .elementor-widget-text-editor p {
	color: #fff !important;
}

/* kh-btn Elementor widgets */
.kh-redesign .kh-btn .elementor-button {
	align-items: center;
	border: 1px solid currentColor;
	display: inline-flex;
	font-size: 13px;
	font-weight: 800;
	justify-content: center;
	letter-spacing: 0.08em;
	min-height: 50px;
	padding: 14px 26px;
	text-transform: uppercase;
	transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease;
}

.kh-redesign .kh-btn .elementor-button:hover {
	transform: translateY(-1px);
}

.kh-redesign .kh-btn--primary .elementor-button {
	background: #a30f14;
	border-color: #a30f14;
	color: #fff;
}

.kh-redesign .kh-btn--primary .elementor-button:hover {
	background: #7f0b0f;
	border-color: #7f0b0f;
}

.kh-redesign .kh-btn--ghost .elementor-button {
	background: transparent;
	border-color: rgba(24, 21, 20, 0.32);
	color: #181514;
}

.kh-redesign .kh-btn--ghost .elementor-button:hover {
	background: #181514;
	border-color: #181514;
	color: #fff;
}

.kh-redesign .kh-btn--dark .elementor-button {
	background: #181514;
	border-color: #181514;
	color: #fff;
}

.kh-redesign .kh-btn--outline .elementor-button {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.55);
	color: #fff;
}

.kh-redesign .kh-btn--outline .elementor-button:hover {
	background: #fff;
	color: #181514;
}

/* kh-actions flex group */
.kh-redesign .kh-actions.e-con {
	display: flex !important;
	flex-wrap: wrap;
	gap: 14px;
}

.kh-redesign .kh-actions.e-con > .e-con {
	flex: 0 0 auto;
	max-width: none !important;
	width: auto !important;
}

.kh-redesign .kh-actions--center.e-con {
	justify-content: center;
}

/* kh-center-action */
.kh-redesign .kh-center-action.e-con {
	display: flex !important;
	justify-content: center;
	margin-top: 42px;
}

/* Responsive – Redesign sections */
@media (max-width: 1024px) {
	.kh-redesign .kh-home-utility__grid.e-con,
	.kh-redesign .kh-home-trust__grid.e-con {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kh-service-cards.e-con {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 767px) {
	.kh-redesign .kh-home-utility__grid.e-con,
	.kh-redesign .kh-home-trust__grid.e-con,
	.kh-service-cards.e-con,
	.kh-redesign .kh-info-grid.e-con {
		grid-template-columns: 1fr;
	}

	.kh-redesign .kh-actions.e-con {
		flex-direction: column;
		align-items: stretch;
	}

	.kh-redesign.kh-final.e-con {
		padding: 72px 20px !important;
	}

	.kh-redesign .kh-home-utility__item.e-con {
		padding: 10px 14px !important;
	}
}

/* Final overrides for the current single-widget homepage markup. Keep this at EOF. */
html,
body {
	overflow-x: clip;
}

.kh-home-shell {
	--container-default-padding-top: 0 !important;
	--container-default-padding-right: 0 !important;
	--container-default-padding-bottom: 0 !important;
	--container-default-padding-left: 0 !important;
	padding: 0 !important;
}

.kh-home-shell > .e-con-inner,
.kh-home-html,
.kh-home-html > .elementor-widget-container {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.kh-home-html main.kh-redesign {
	width: 100% !important;
	max-width: none !important;
}

@media (max-width: 767px) {
	.kh-home-html .kh-hero {
		min-height: 0 !important;
		padding-top: 46px !important;
		align-items: start !important;
	}

	.kh-home-html .kh-hero__copy {
		align-self: start !important;
	}
}

/* Khushi bright direction overrides: no black surfaces/buttons, calmer hero, real anfahrt. */
.kh-home-html .kh-redesign {
	--kh-red: #b4060d;
	--kh-red-dark: #8e050a;
	--kh-ink: #191411;
	--kh-cream: #fff8ee;
	--kh-cream-2: #f7eadb;
	--kh-surface: #fffdf8;
	--kh-border: rgba(180, 6, 13, .18);
	background: var(--kh-cream) !important;
}

.kh-home-html .kh-redesign h1 {
	max-width: 720px;
	font-size: clamp(50px, 5.7vw, 92px) !important;
	line-height: .96 !important;
}

.kh-home-html .kh-redesign h2 {
	font-size: clamp(34px, 3.8vw, 58px) !important;
	line-height: 1.02 !important;
}

.kh-home-html .kh-hero {
	grid-template-columns: minmax(0, .92fr) minmax(390px, .9fr) !important;
	gap: 54px !important;
	min-height: 690px !important;
	padding-top: 76px !important;
	padding-bottom: 70px !important;
	background:
		linear-gradient(90deg, rgba(255, 248, 238, .96), rgba(255, 248, 238, .86)),
		url("http://localhost:8080/wp-content/uploads/khushi-home/chicken-tikka-khushi-berlin.jpg") right center / 48% auto no-repeat !important;
}

.kh-home-html .kh-hero::after {
	display: none !important;
}

.kh-home-html .kh-hero__copy {
	max-width: 740px !important;
}

.kh-home-html .kh-hero-subline {
	color: var(--kh-red) !important;
	font-family: "Libre Franklin", Arial, sans-serif !important;
	font-size: 19px !important;
	font-weight: 900 !important;
	letter-spacing: .08em !important;
	line-height: 1.25 !important;
	text-transform: uppercase !important;
}

.kh-home-html .kh-hero__visual {
	min-height: 0 !important;
	border: 1px solid rgba(180, 6, 13, .18) !important;
	background: transparent !important;
	box-shadow: 18px 18px 0 rgba(180, 6, 13, .08) !important;
}

.kh-home-html .kh-hero__visual img {
	height: 500px !important;
	object-fit: cover !important;
	clip-path: none !important;
}

.kh-home-html .kh-hero__facts {
	background: rgba(180, 6, 13, .18) !important;
	border-color: rgba(180, 6, 13, .18) !important;
}

.kh-home-html .kh-hero__facts div,
.kh-home-html .kh-dish-card,
.kh-home-html .kh-service-cards article,
.kh-home-html .kh-current__grid article {
	background: var(--kh-surface) !important;
}

.kh-home-html .kh-quicknav {
	background: var(--kh-surface) !important;
	border-top: 1px solid rgba(180, 6, 13, .18) !important;
	border-bottom: 1px solid rgba(180, 6, 13, .18) !important;
	color: var(--kh-red) !important;
}

.kh-home-html .kh-quicknav a {
	border-right: 1px solid rgba(180, 6, 13, .18) !important;
	color: var(--kh-red) !important;
}

.kh-home-html .kh-quicknav a:hover,
.kh-home-html .kh-quicknav a.is-active {
	background: var(--kh-red) !important;
	color: #fff !important;
}

.kh-home-html .kh-btn,
.kh-home-html .kh-btn--primary,
.kh-home-html .kh-btn--dark {
	background: var(--kh-red) !important;
	border-color: var(--kh-red) !important;
	color: #fff !important;
}

.kh-home-html .kh-btn:hover,
.kh-home-html .kh-btn--primary:hover,
.kh-home-html .kh-btn--dark:hover {
	background: var(--kh-red-dark) !important;
	border-color: var(--kh-red-dark) !important;
}

.kh-home-html .kh-btn--ghost,
.kh-home-html .kh-btn--outline {
	background: transparent !important;
	border-color: rgba(180, 6, 13, .34) !important;
	color: var(--kh-red) !important;
}

.kh-home-html .kh-btn--ghost:hover,
.kh-home-html .kh-btn--outline:hover {
	background: var(--kh-red) !important;
	border-color: var(--kh-red) !important;
	color: #fff !important;
}

.kh-home-html .kh-india-world {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
	gap: 44px;
	align-items: end;
	background: var(--kh-surface) !important;
}

.kh-home-html .kh-india-world__copy {
	display: grid;
	gap: 18px;
	max-width: 760px;
}

.kh-home-html .kh-benefits {
	display: grid;
	gap: 12px;
}

.kh-home-html .kh-benefits span {
	display: block;
	padding: 18px 20px;
	border-left: 4px solid var(--kh-red);
	background: var(--kh-cream);
	color: var(--kh-ink);
	font-weight: 900;
}

.kh-home-html .kh-band--red {
	background: var(--kh-red) !important;
}

.kh-home-html .kh-story-light {
	display: grid;
	grid-template-columns: minmax(390px, .82fr) minmax(0, 1fr);
	gap: 54px;
	padding: 96px max(24px, calc((100vw - 1240px) / 2));
	align-items: center;
	background: var(--kh-surface) !important;
}

.kh-home-html .kh-story-light img {
	height: 500px;
	object-fit: cover;
	border: 1px solid rgba(180, 6, 13, .16);
}

.kh-home-html .kh-story-light > div {
	display: grid;
	gap: 20px;
}

.kh-home-html .kh-story-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin: 8px 0;
}

.kh-home-html .kh-story-stats span {
	display: grid;
	gap: 6px;
	padding: 24px;
	border: 1px solid rgba(180, 6, 13, .18);
	background: var(--kh-cream);
	color: var(--kh-ink);
	font-weight: 900;
}

.kh-home-html .kh-story-stats strong {
	color: var(--kh-red);
	font-family: "Fraunces", Georgia, serif;
	font-size: 54px;
	line-height: .9;
}

.kh-home-html .kh-small-note {
	font-size: 16px !important;
	line-height: 1.6 !important;
}

.kh-home-html .kh-occasions .kh-section__head {
	max-width: 850px !important;
}

.kh-home-html .kh-occasions h2 {
	font-size: clamp(38px, 4vw, 64px) !important;
	line-height: 1.02 !important;
}

.kh-home-html .kh-location {
	grid-template-columns: minmax(420px, .88fr) minmax(0, 1fr) !important;
	background: var(--kh-cream) !important;
	align-items: start !important;
}

.kh-home-html .kh-location__map iframe {
	width: 100%;
	height: 520px;
	border: 1px solid rgba(180, 6, 13, .16);
	filter: saturate(.9);
}

.kh-home-html .kh-route-list {
	display: grid;
	gap: 12px;
	padding: 24px 0 4px;
}

.kh-home-html .kh-route-list h3 {
	color: var(--kh-red);
	font-family: "Fraunces", Georgia, serif;
	font-size: 34px;
}

.kh-home-html .kh-route-list p {
	font-size: 16px !important;
	line-height: 1.55 !important;
}

.kh-home-html .kh-final {
	background:
		linear-gradient(90deg, rgba(255, 248, 238, .94), rgba(255, 248, 238, .86)),
		url("http://localhost:8080/wp-content/uploads/khushi-home/khushi-berlin-indische-currys-tandoori.jpg") center / cover !important;
	color: var(--kh-ink) !important;
}

.kh-home-html .kh-final h2 {
	color: var(--kh-ink) !important;
}

.kh-home-html .kh-final p {
	color: #4e4741 !important;
}

@media (max-width: 1100px) {
	.kh-home-html .kh-hero,
	.kh-home-html .kh-india-world,
	.kh-home-html .kh-story-light,
	.kh-home-html .kh-location {
		grid-template-columns: 1fr !important;
	}

	.kh-home-html .kh-hero {
		background: var(--kh-cream) !important;
	}
}

@media (max-width: 767px) {
	.kh-home-html .kh-redesign h1 {
		font-size: 42px !important;
	}

	.kh-home-html .kh-redesign h2 {
		font-size: 34px !important;
	}

	.kh-home-html .kh-hero {
		padding-top: 38px !important;
	}

	.kh-home-html .kh-hero__visual img,
	.kh-home-html .kh-story-light img,
	.kh-home-html .kh-location__map iframe {
		height: 300px !important;
	}

	.kh-home-html .kh-india-world,
	.kh-home-html .kh-story-light {
		padding: 64px 18px !important;
	}

	.kh-home-html .kh-story-stats {
		grid-template-columns: 1fr;
	}
}

/* Direct .kh-redesign overrides because Elementor renders the HTML widget content without the widget class as a parent. */
.kh-redesign .kh-quicknav {
	background: #fffdf8 !important;
	border-top: 1px solid rgba(180, 6, 13, .18) !important;
	border-bottom: 1px solid rgba(180, 6, 13, .18) !important;
	color: #b4060d !important;
}

.kh-redesign .kh-quicknav a {
	border-right: 1px solid rgba(180, 6, 13, .18) !important;
	color: #b4060d !important;
}

.kh-redesign .kh-quicknav a:hover,
.kh-redesign .kh-quicknav a.is-active {
	background: #b4060d !important;
	color: #fff !important;
}

.kh-redesign .kh-btn,
.kh-redesign .kh-btn--primary,
.kh-redesign .kh-btn--dark {
	background: #b4060d !important;
	border-color: #b4060d !important;
	color: #fff !important;
}

.kh-redesign .kh-btn:hover,
.kh-redesign .kh-btn--primary:hover,
.kh-redesign .kh-btn--dark:hover {
	background: #8e050a !important;
	border-color: #8e050a !important;
	color: #fff !important;
}

.kh-redesign .kh-btn--ghost,
.kh-redesign .kh-btn--outline {
	background: transparent !important;
	border-color: rgba(180, 6, 13, .34) !important;
	color: #b4060d !important;
}

.kh-redesign .kh-btn--ghost:hover,
.kh-redesign .kh-btn--outline:hover {
	background: #b4060d !important;
	border-color: #b4060d !important;
	color: #fff !important;
}

.kh-redesign .kh-hero {
	grid-template-columns: minmax(0, .82fr) minmax(430px, .9fr) !important;
	gap: 58px !important;
	align-items: start !important;
	min-height: 0 !important;
	padding-top: 64px !important;
	padding-bottom: 64px !important;
	background: linear-gradient(90deg, rgba(255, 248, 238, .98), rgba(255, 248, 238, .92)) !important;
}

.kh-redesign .kh-hero::before,
.kh-redesign .kh-hero::after {
	display: none !important;
	content: none !important;
}

.kh-redesign .kh-hero h1 {
	max-width: 590px !important;
	font-size: clamp(48px, 5vw, 82px) !important;
}

.kh-redesign .kh-hero__visual {
	background: transparent !important;
	box-shadow: 18px 18px 0 rgba(180, 6, 13, .08) !important;
}

.kh-redesign .kh-hero__visual img {
	clip-path: none !important;
	height: 500px !important;
	object-fit: cover !important;
}

.kh-redesign .kh-story-light {
	display: grid;
	grid-template-columns: minmax(390px, .82fr) minmax(0, 1fr);
	gap: 54px;
	padding: 96px max(24px, calc((100vw - 1240px) / 2));
	align-items: center;
	background: #fffdf8 !important;
}

.kh-redesign .kh-story-light img {
	height: 500px;
	object-fit: cover;
	border: 1px solid rgba(180, 6, 13, .16);
}

.kh-redesign .kh-story-light > div,
.kh-redesign .kh-india-world__copy {
	display: grid;
	gap: 20px;
}

.kh-redesign .kh-india-world {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
	gap: 44px;
	align-items: end;
	background: #fffdf8 !important;
}

.kh-redesign .kh-benefits {
	display: grid;
	gap: 12px;
}

.kh-redesign .kh-benefits span {
	display: block;
	padding: 18px 20px;
	border-left: 4px solid #b4060d;
	background: #fff8ee;
	color: #191411;
	font-weight: 900;
}

.kh-redesign .kh-story-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin: 8px 0;
}

.kh-redesign .kh-story-stats span {
	display: grid;
	gap: 6px;
	padding: 24px;
	border: 1px solid rgba(180, 6, 13, .18);
	background: #fff8ee;
	color: #191411;
	font-weight: 900;
}

.kh-redesign .kh-story-stats strong {
	color: #b4060d;
	font-family: "Fraunces", Georgia, serif;
	font-size: 54px;
	line-height: .9;
}

.kh-redesign .kh-location__map iframe {
	width: 100%;
	height: 520px;
	border: 1px solid rgba(180, 6, 13, .16);
	filter: saturate(.9);
}

.kh-redesign .kh-route-list {
	display: grid;
	gap: 12px;
	padding: 24px 0 4px;
}

.kh-redesign .kh-route-list h3 {
	color: #b4060d;
	font-family: "Fraunces", Georgia, serif;
	font-size: 34px;
}

.kh-redesign .kh-route-list p {
	font-size: 16px !important;
	line-height: 1.55 !important;
}

.kh-redesign .kh-final {
	background: #fffdf8 !important;
	color: #191411 !important;
}

.kh-redesign .kh-final h2,
.kh-redesign .kh-final p {
	color: #191411 !important;
}

.kh-redesign .kh-food-strip__row figure {
	display: grid !important;
	min-height: 0 !important;
	border: 1px solid rgba(180, 6, 13, .14) !important;
	background: #fffdf8 !important;
}

.kh-redesign .kh-food-strip__row img {
	height: 250px !important;
	object-fit: cover !important;
}

.kh-redesign .kh-food-strip__row figcaption {
	position: static !important;
	display: inline-flex !important;
	min-height: 54px !important;
	padding: 16px 18px !important;
	align-items: center !important;
	background: #b4060d !important;
	color: #fff !important;
}

@media (max-width: 1100px) {
	.kh-redesign .kh-hero,
	.kh-redesign .kh-india-world,
	.kh-redesign .kh-story-light,
	.kh-redesign .kh-location {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 767px) {
	.kh-redesign .kh-hero {
		padding-top: 38px !important;
	}

	.kh-redesign .kh-hero h1 {
		font-size: 42px !important;
	}

	.kh-redesign .kh-story-light,
	.kh-redesign .kh-india-world {
		padding: 64px 18px !important;
	}

	.kh-redesign .kh-story-stats {
		grid-template-columns: 1fr;
	}
}

/* Khushi homepage fix pass: exact SEO keyword in hero, calmer spacing, split contact/map layout. */
.kh-home-html .kh-hero,
.kh-redesign .kh-hero {
	grid-template-columns: minmax(0, .94fr) minmax(420px, .86fr) !important;
	gap: 40px !important;
	align-items: center !important;
	padding-top: 46px !important;
	padding-bottom: 52px !important;
	background: linear-gradient(90deg, rgba(255, 248, 238, .98), rgba(255, 248, 238, .93)) !important;
}

.kh-home-html .kh-hero__copy,
.kh-redesign .kh-hero__copy {
	max-width: 640px !important;
	gap: 18px !important;
}

.kh-home-html .kh-hero h1,
.kh-redesign .kh-hero h1 {
	max-width: 560px !important;
	font-size: clamp(54px, 5.4vw, 88px) !important;
	line-height: .92 !important;
}

.kh-home-html .kh-hero-subline,
.kh-redesign .kh-hero-subline {
	color: #b4060d !important;
	font-family: "Libre Franklin", Arial, sans-serif !important;
	font-size: 17px !important;
	font-weight: 800 !important;
	letter-spacing: .04em !important;
	line-height: 1.35 !important;
	text-transform: none !important;
}

.kh-home-html .kh-hero .kh-lead,
.kh-redesign .kh-hero .kh-lead {
	max-width: 540px !important;
	font-size: 17px !important;
	line-height: 1.7 !important;
}

.kh-home-html .kh-hero__facts,
.kh-redesign .kh-hero__facts {
	max-width: 560px !important;
}

.kh-home-html .kh-hero__visual,
.kh-redesign .kh-hero__visual {
	align-self: start !important;
	border: 1px solid rgba(180, 6, 13, .14) !important;
	background: #fffaf3 !important;
	box-shadow: 18px 18px 0 rgba(180, 6, 13, .08) !important;
}

.kh-home-html .kh-hero__visual img,
.kh-redesign .kh-hero__visual img {
	height: 520px !important;
	object-fit: cover !important;
	object-position: center center !important;
}

.kh-home-html .kh-india-world,
.kh-redesign .kh-india-world {
	padding-top: 68px !important;
	padding-bottom: 56px !important;
	grid-template-columns: minmax(0, .9fr) minmax(360px, .78fr) !important;
	gap: 32px !important;
	align-items: start !important;
}

.kh-home-html .kh-india-world__copy,
.kh-redesign .kh-india-world__copy {
	gap: 14px !important;
}

.kh-home-html .kh-india-world h2,
.kh-redesign .kh-india-world h2 {
	max-width: 560px !important;
	font-size: clamp(40px, 4.6vw, 70px) !important;
	line-height: .94 !important;
}

.kh-home-html .kh-food-strip,
.kh-redesign .kh-food-strip {
	padding-top: 52px !important;
}

.kh-home-html .kh-food-strip .kh-section__head,
.kh-redesign .kh-food-strip .kh-section__head {
	margin-bottom: 28px !important;
}

.kh-home-html .kh-occasions,
.kh-redesign .kh-occasions {
	padding-top: 68px !important;
	padding-bottom: 68px !important;
}

.kh-home-html .kh-occasions .kh-section__head,
.kh-redesign .kh-occasions .kh-section__head {
	max-width: 760px !important;
	margin-bottom: 28px !important;
}

.kh-home-html .kh-occasions h2,
.kh-redesign .kh-occasions h2 {
	font-size: clamp(34px, 4.2vw, 60px) !important;
	line-height: .96 !important;
}

.kh-home-html .kh-location,
.kh-redesign .kh-location {
	grid-template-columns: minmax(380px, .82fr) minmax(0, 1fr) !important;
	gap: 0 !important;
	padding-top: 76px !important;
	padding-bottom: 76px !important;
	background: #fffdf8 !important;
	border: 1px solid rgba(180, 6, 13, .14) !important;
}

.kh-home-html .kh-location__content,
.kh-redesign .kh-location__content {
	display: grid !important;
	gap: 18px !important;
	padding: 52px 44px !important;
	background: #fffdf8 !important;
}

.kh-home-html .kh-location h2,
.kh-redesign .kh-location h2 {
	font-size: clamp(38px, 4vw, 58px) !important;
	line-height: .96 !important;
}

.kh-home-html .kh-location-card,
.kh-redesign .kh-location-card {
	display: grid !important;
	gap: 16px !important;
	padding-top: 8px !important;
}

.kh-home-html .kh-location-label,
.kh-redesign .kh-location-label {
	color: #b5afa7 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: .12em !important;
	text-transform: uppercase !important;
}

.kh-home-html .kh-location-card h3,
.kh-redesign .kh-location-card h3 {
	font-family: "Fraunces", Georgia, serif !important;
	font-size: 44px !important;
	font-weight: 800 !important;
	line-height: .94 !important;
}

.kh-home-html .kh-location-address,
.kh-redesign .kh-location-address {
	color: #b4060d !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.5 !important;
}

.kh-home-html .kh-location-phone,
.kh-redesign .kh-location-phone {
	display: inline-flex !important;
	width: fit-content !important;
	color: #191411 !important;
	font-size: 18px !important;
	font-weight: 800 !important;
}

.kh-home-html .kh-location-transit,
.kh-redesign .kh-location-transit {
	display: grid !important;
	gap: 10px !important;
	padding-top: 8px !important;
}

.kh-home-html .kh-location-transit div,
.kh-redesign .kh-location-transit div {
	display: grid !important;
	grid-template-columns: 110px minmax(0, 1fr) auto !important;
	gap: 10px !important;
	align-items: center !important;
	padding: 0 0 10px !important;
	border-bottom: 1px dotted rgba(25, 20, 17, .22) !important;
}

.kh-home-html .kh-location-transit strong,
.kh-redesign .kh-location-transit strong {
	color: #191411 !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

.kh-home-html .kh-location-transit span,
.kh-redesign .kh-location-transit span {
	color: #44403b !important;
	font-size: 17px !important;
	font-weight: 600 !important;
}

.kh-home-html .kh-location-transit em,
.kh-redesign .kh-location-transit em {
	color: #6f6860 !important;
	font-size: 14px !important;
	font-style: normal !important;
	text-align: right !important;
}

.kh-home-html .kh-location-note,
.kh-redesign .kh-location-note {
	font-size: 15px !important;
	line-height: 1.65 !important;
}

.kh-home-html .kh-location__map,
.kh-redesign .kh-location__map {
	min-height: 100% !important;
}

.kh-home-html .kh-location__map iframe,
.kh-redesign .kh-location__map iframe {
	height: 100% !important;
	min-height: 620px !important;
	border: 0 !important;
}

@media (max-width: 1100px) {
	.kh-home-html .kh-hero,
	.kh-redesign .kh-hero,
	.kh-home-html .kh-india-world,
	.kh-redesign .kh-india-world,
	.kh-home-html .kh-location,
	.kh-redesign .kh-location {
		grid-template-columns: 1fr !important;
	}

	.kh-home-html .kh-location__content,
	.kh-redesign .kh-location__content {
		padding: 36px 28px !important;
	}
}

@media (max-width: 767px) {
	.kh-home-html .kh-hero,
	.kh-redesign .kh-hero {
		padding-top: 28px !important;
		padding-bottom: 34px !important;
		gap: 22px !important;
	}

	.kh-home-html .kh-hero h1,
	.kh-redesign .kh-hero h1 {
		font-size: 42px !important;
	}

	.kh-home-html .kh-hero__visual img,
	.kh-redesign .kh-hero__visual img {
		height: 320px !important;
	}

	.kh-home-html .kh-india-world,
	.kh-redesign .kh-india-world,
	.kh-home-html .kh-occasions,
	.kh-redesign .kh-occasions {
		padding-top: 52px !important;
		padding-bottom: 52px !important;
	}

	.kh-home-html .kh-location,
	.kh-redesign .kh-location {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.kh-home-html .kh-location__content,
	.kh-redesign .kh-location__content {
		padding: 28px 20px !important;
	}

	.kh-home-html .kh-location__map iframe,
	.kh-redesign .kh-location__map iframe {
		min-height: 320px !important;
	}

	.kh-home-html .kh-location-transit div,
	.kh-redesign .kh-location-transit div {
		grid-template-columns: 1fr !important;
		gap: 4px !important;
	}

	.kh-home-html .kh-location-transit em,
	.kh-redesign .kh-location-transit em {
		text-align: left !important;
	}
}
