		.kb-alfresco-feature {
			position: relative;
			display: block;
			padding: 80px 0;
			background:
				radial-gradient(circle at top center, rgba(199, 154, 94, 0.14), transparent 28%),
				radial-gradient(circle at bottom right, rgba(160, 120, 72, 0.08), transparent 24%),
				linear-gradient(180deg, #fdf8f2 0%, #f6eee2 44%, #fbf6ee 100%);
			color: #4c3828;
			overflow: hidden;
			isolation: isolate;
		}

		.kd-nav-section {
			width: 100%;
			padding: 80px 0;
			background: #F2ECE5;
			font-family: 'Montserrat', sans-serif;
			box-sizing: border-box;
			display: flex;
			flex-direction: column;
			align-items: center;
		}

		.kb-alfresco-feature::before {
			content: '';
			position: absolute;
			inset: 0;
			background:
				linear-gradient(90deg, rgba(199, 154, 94, 0.018) 0, rgba(199, 154, 94, 0.018) 1px, transparent 1px, transparent 100%),
				linear-gradient(180deg, rgba(255, 255, 255, 0.62), rgba(224, 206, 181, 0.1));
			background-size: 220px 220px, auto;
			pointer-events: none;
			opacity: 0.24;
		}

		.kb-alfresco-feature::after {
			content: '';
			position: absolute;
			left: 50%;
			top: -8%;
			width: min(64vw, 760px);
			height: min(64vw, 760px);
			border-radius: 50%;
			transform: translateX(-50%);
			background: radial-gradient(circle, rgba(255, 255, 255, 0.7) 0%, rgba(199, 154, 94, 0.06) 34%, rgba(199, 154, 94, 0) 72%);
			pointer-events: none;
			opacity: 0.82;
		}

		.kb-alfresco-story {
			position: relative;
			z-index: 1;
			width: 100%;
			margin: 0 auto;
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: clamp(76px, 9vw, 124px);
		}

		.kb-alfresco-story::before {
			content: '';
			position: absolute;
			top: 14px;
			left: 50%;
			width: min(240px, 42vw);
			height: 1px;
			transform: translateX(-50%);
			background: linear-gradient(90deg, rgba(199, 154, 94, 0), rgba(199, 154, 94, 0.42), rgba(199, 154, 94, 0));
			opacity: 0.7;
			pointer-events: none;
		}

		.kb-alfresco-stage {
			width: 100%;
			position: relative;
			display: flex;
			justify-content: center;
			z-index: 1;
		}

		.kb-alfresco-intro {
			width: 80%;
			padding-inline: 12px;
			text-align: center;
		}

		.kb-alfresco-intro-shell {
			position: relative;
			padding: 16px 28px 0;
		}

		.kb-alfresco-intro-shell::before,
		.kb-alfresco-intro-shell::after {
			content: '';
			position: absolute;
			left: 50%;
			transform: translateX(-50%);
			width: min(160px, 32vw);
			height: 1px;
			background: linear-gradient(90deg, rgba(199, 154, 94, 0), rgba(199, 154, 94, 0.42), rgba(199, 154, 94, 0));
		}

		.kb-alfresco-intro-shell::before {
			top: 0;
		}

		.kb-alfresco-intro-shell::after {
			bottom: -24px;
			width: min(96px, 18vw);
		}

		.kb-alfresco-intro-mark {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			margin-bottom: 20px;
			padding: 9px 18px;
			border: 1px solid rgba(199, 154, 94, 0.24);
			border-radius: 999px;
			background: rgba(255, 253, 250, 0.88);
			box-shadow: 0 14px 30px rgba(143, 113, 74, 0.08);
			font-family: 'Geometria', sans-serif;
			font-size: 0.64rem;
			letter-spacing: 0.34em;
			text-transform: uppercase;
			color: rgba(92, 66, 40, 0.82);
		}

		.kb-alfresco-eyebrow {
			margin: 0;
			font-family: 'Playfair Display', serif;
			font-size: clamp(1.4rem, 3.2vw, 3.2rem);
			line-height: 1.04;
			font-style: italic;
			color: #c79a5e;
			letter-spacing: 0.04em;
			text-shadow: 0 10px 24px rgba(199, 154, 94, 0.08);
		}

		.kb-alfresco-copy {
			margin: 20px auto 0;
			font-family: 'LM Roman', serif;
			font-size: clamp(0.98rem, 1.16vw, 1.08rem);
			line-height: 1.84;
			color: rgba(86, 67, 47, 0.82);
			width: 100%;
		}

		.kb-alfresco-rail {
			position: absolute;
			left: 50%;
			width: 1px;
			transform: translateX(-50%);
			pointer-events: none;
			z-index: 0;
		}

		.kb-alfresco-rail-track,
		.kb-alfresco-rail-fill {
			position: absolute;
			left: 0;
			top: 0;
			width: 1.5px;
			height: 100%;
		}

		.kb-alfresco-rail-track {
			background: rgba(199, 154, 94, 0.2);
		}

		.kb-alfresco-rail-fill {
			background: linear-gradient(180deg, rgba(199, 154, 94, 0.18) 0%, #c79a5e 38%, #e4bc74 100%);
			transform-origin: top center;
			transform: scaleY(0);
			will-change: transform;
			backface-visibility: hidden;
		}

		.kb-alfresco-rail-dot {
			position: absolute;
			left: 50%;
			top: 0;
			width: 10px;
			height: 10px;
			border-radius: 50%;
			background: #c79a5e;
			box-shadow: 0 0 0 6px rgba(199, 154, 94, 0.12), 0 0 18px rgba(228, 188, 116, 0.32);
			transform: translate3d(-50%, 0, 0);
			will-change: transform;
			backface-visibility: hidden;
		}

		.kb-alfresco-rail-dot::before {
			content: '';
			position: absolute;
			inset: -8px;
			border-radius: 50%;
			border: 1px solid rgba(228, 188, 116, 0.24);
			animation: kbAlfrescoDotPulse 2.8s ease-out infinite;
		}

		.kb-alfresco-gallery-stage {
			position: relative;
			margin: 0 auto;
			width: 100%;
			min-height: clamp(320px, 53vw, 850px);
			border: 1px solid rgba(216, 174, 107, 0.32);
			border-radius: 38px;
			background:
				radial-gradient(circle at top center, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0) 54%),
				linear-gradient(180deg, rgba(255, 251, 245, 0.92), rgba(246, 237, 225, 0.96));
			box-shadow: 0 34px 70px rgba(132, 100, 62, 0.12);
			pointer-events: none;
			padding: 65px 50px 35px 50px;
			box-sizing: border-box;
			contain: paint;
			transform: translateZ(0);
			backface-visibility: hidden;
		}

		.kb-alfresco-gallery-stage::before {
			content: '';
			position: absolute;
			inset: 16px;
			border-radius: 28px;
			border: 1px solid rgba(199, 154, 94, 0.12);
			background: linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0));
			pointer-events: none;
		}

		.kb-alfresco-gallery-stage::after {
			content: '';
			position: absolute;
			left: 8%;
			right: 8%;
			bottom: -16%;
			height: 34%;
			background: radial-gradient(circle, rgba(176, 138, 91, 0.1) 0%, rgba(176, 138, 91, 0) 72%);
			opacity: 0.72;
			pointer-events: none;
		}

		.kb-alfresco-gallery {
			width: 100%;
			height: 100%;
			margin: 0 auto;
			display: grid;
			grid-template-columns: minmax(30px, 0.74fr) minmax(180px, 1.16fr) minmax(170px, 0.74fr);
			gap: clamp(10px, 5vw, 12px);
			align-items: start;
			position: relative;
			z-index: 1;
		}

		.kb-alfresco-gallery-card,
		.kb-alfresco-gallery-stack {
			height: clamp(240px, 34vw, 430px);
		}

		.kb-alfresco-gallery-card {
			position: relative;
			overflow: hidden;
			background: linear-gradient(180deg, #fbf7f1, #f1e6d8);
			border: 1px solid rgba(199, 154, 94, 0.14);
			border-radius: 28px;
			box-shadow: 0 24px 42px rgba(116, 88, 58, 0.14);
			isolation: isolate;
			--kb-alfresco-card-rest: translate3d(0, 0, 0) rotate(0deg);
			transform: var(--kb-alfresco-card-rest);
			width: 100%;
			margin: 0;
			padding: 12px;
			box-sizing: border-box;
		}

		.kb-alfresco-gallery-card::before {
			/* content: ''; */
			position: absolute;
			inset: 12px;
			border-radius: 18px;
			border: 1px solid rgba(255, 255, 255, 0.52);
			background: linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0) 26%);
			z-index: 1;
			pointer-events: none;
		}

		.kb-alfresco-gallery-card::after {
			/* content: ''; */
			position: absolute;
			inset: 12px;
			border-radius: 18px;
			background: linear-gradient(180deg, rgba(247, 239, 231, 0) 46%, rgba(79, 59, 38, 0.18) 100%);
			z-index: 1;
			pointer-events: none;
		}

		.kb-alfresco-gallery-card img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
			transform: scale(1.02);
			will-change: transform;
			border-radius: 18px;
			filter: saturate(1.02) contrast(1.02);
		}

		.kb-alfresco-gallery-stack {
			display: grid;
			grid-template-rows: 1fr 1fr;
			gap: clamp(10px, 0.8vw, 14px);
		}

		.kb-alfresco-gallery-stack .kb-alfresco-gallery-card {
			height: 100%;
		}

		.kb-alfresco-gallery-card--side {
			opacity: 0.76;
		}

		.kb-alfresco-gallery-card--edge-left,
		.kb-alfresco-gallery-card--edge-right {
			height: clamp(248px, 28vw, 350px);
			align-self: center;
			opacity: 0.54;
		}

		.kb-alfresco-gallery-card--edge-left {
			--kb-alfresco-card-rest: translate3d(0, 34px, 0) rotate(-2deg);
		}

		.kb-alfresco-gallery-card--feature-left,
		.kb-alfresco-gallery-card--feature-right {
			height: clamp(330px, 39vw, 700px);
		}

		.kb-alfresco-gallery-card--feature-left {
			--kb-alfresco-card-rest: translate3d(0, 18px, 0) rotate(-1deg);
		}

		.kb-alfresco-gallery-card--feature-right {
			--kb-alfresco-card-rest: translate3d(0, -14px, 0) rotate(1deg);
		}

		.kb-alfresco-gallery-stack {
			height: clamp(330px, 39vw, 630px);
			transform: translateY(38px) rotate(0.6deg);
		}

		.kb-alfresco-gallery-caption {
			position: absolute;
			left: 22px;
			right: 22px;
			bottom: 20px;
			z-index: 2;
			font-family: 'Montserrat', sans-serif;
			font-size: 13px;
			letter-spacing: 0.24em;
			text-transform: capitalize;
			color: #6a5036;
			text-align: center;
			background: rgba(255, 249, 242, 0.92);
			border: 1px solid rgba(199, 154, 94, 0.18);
			border-radius: 999px;
			padding: 9px 14px;
			box-shadow: 0 10px 20px rgba(130, 98, 61, 0.08);
			display: inline-flex;
			width: fit-content;
			max-width: calc(100% - 44px);
		}

		.kb-alfresco-panel {
			width: min(1200px, calc(100% - 52px));
			max-width: none;
			margin: 0 auto;
			padding: 0;
			box-sizing: border-box;
			justify-content: flex-start;
			text-align: left;
			isolation: isolate;
			--kb-alfresco-panel-shell-width: min(420px, calc(50% - 110px));
			--kb-alfresco-panel-connector-gap: 18px;
		}

		.kb-alfresco-panel::before {
			content: none;
		}

		.kb-alfresco-panel::after {
			content: '';
			position: absolute;
			left: calc(var(--kb-alfresco-panel-shell-width) + var(--kb-alfresco-panel-connector-gap));
			top: 50%;
			width: calc(50% - var(--kb-alfresco-panel-shell-width) - var(--kb-alfresco-panel-connector-gap));
			height: 1px;
			transform: translateY(-50%);
			background: linear-gradient(90deg, rgba(199, 154, 94, 0.82), rgba(199, 154, 94, 0));
			opacity: 0.88;
			pointer-events: none;
			z-index: 0;
		}

		.kb-alfresco-panel--contact {
			margin-top: -34px;
			justify-content: flex-end;
		}

		.kb-alfresco-panel--contact::after {
			left: 50%;
			width: calc(50% - var(--kb-alfresco-panel-shell-width) - var(--kb-alfresco-panel-connector-gap));
		}

		.kb-alfresco-panel-shell {
			position: relative;
			width: var(--kb-alfresco-panel-shell-width);
			max-width: none;
			min-height: auto;
			margin-left: 0;
			padding: 48px 45px 42px;
			border-radius: 8px;
			background: radial-gradient(circle at top left, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0) 52%), linear-gradient(180deg, rgba(255, 251, 246, 0.74), rgba(250, 243, 233, 0.5));
			border: 1px solid rgba(209, 178, 136, 0.24);
			box-shadow: 0 22px 48px rgba(166, 134, 95, 0.1);
			isolation: isolate;
			overflow: hidden;
			z-index: 1;
			contain: paint;
			transform: translateZ(0);
			backface-visibility: hidden;
		}

		.kb-alfresco-panel-shell::before {
			content: '';
			position: absolute;
			inset: 10px;
			border: 1px solid rgba(209, 178, 136, 0.16);
			pointer-events: none;
		}

		.kb-alfresco-panel-shell::after {
			content: '';
			position: absolute;
			right: 22px;
			bottom: 22px;
			width: 10px;
			height: 10px;
			border-radius: 50%;
			background: rgba(214, 197, 175, 0.66);
			box-shadow: 0 0 0 6px rgba(214, 197, 175, 0.08);
			pointer-events: none;
		}

		.kb-alfresco-panel-kicker {
			position: relative;
			z-index: 1;
			margin: 0 0 18px;
			font-family: 'Geometria', sans-serif;
			font-size: 0.7rem;
			letter-spacing: 0.42em;
			text-transform: uppercase;
			color: rgba(122, 96, 68, 0.72);
		}

		.kb-alfresco-panel-title {
			position: relative;
			z-index: 1;
			margin: 0 0 22px;
			font-family: 'Playfair Display', serif;
			font-size: clamp(4.3rem, 8.2vw, 3.8rem);
			line-height: 0.8;
			font-weight: 400;
			font-style: italic;
			letter-spacing: 0.015em;
			color: #c79a5e;
			text-wrap: balance;
			text-shadow: 0 12px 28px rgba(199, 154, 94, 0.1);
		}

		.kb-alfresco-panel-title::after {
			/* content: ''; */
			position: absolute;
			top: 54%;
			left: calc(100% + 20px);
			width: min(96px, 10vw);
			height: 1px;
			background: linear-gradient(90deg, rgba(199, 154, 94, 0.54), rgba(199, 154, 94, 0));
			transform: translateY(-50%);
		}

		.kb-alfresco-panel-label {
			position: relative;
			z-index: 1;
			margin: 0 0 16px;
			font-family: 'Geometria', sans-serif;
			font-size: 0.72rem;
			letter-spacing: 0.36em;
			text-transform: uppercase;
			color: rgba(104, 78, 49, 0.9);
			text-align: left;
		}

		.kb-alfresco-panel-copy {
			position: relative;
			z-index: 1;
			max-width: 356px;
			margin: 0;
			font-family: 'LM Roman', serif;
			font-size: clamp(1.06rem, 1.22vw, 1.28rem);
			line-height: 1.68;
			color: rgba(96, 73, 46, 0.86);
			text-align: left;
		}

		.kb-alfresco-panel-copy strong {
			display: inline-block;
			margin-bottom: 10px;
			font-weight: 500;
			color: #4b3828;
		}

		.kb-alfresco-panel-divider {
			position: relative;
			z-index: 1;
			width: 108px;
			height: 1px;
			margin: 22px 0 18px;
			background: linear-gradient(90deg, rgba(199, 154, 94, 0.08), #c79a5e, rgba(199, 154, 94, 0.08));
		}

		.kb-alfresco-panel--hours .kb-alfresco-panel-copy {
			max-width: 366px;
			white-space: nowrap;
		}

		.kb-alfresco-panel--contact .kb-alfresco-panel-copy {
			line-height: 1.82;
		}

		.kb-alfresco-panel--contact .kb-alfresco-panel-label {
			margin-top: 2px;
			font-size: 0.68rem;
			color: rgba(116, 91, 62, 0.84);
		}

		.kb-alfresco-end-dot {
			position: relative;
			z-index: 1;
			width: 8px;
			height: 8px;
			margin-top: -44px;
			border-radius: 50%;
			background: #c79a5e;
			box-shadow: 0 0 0 5px rgba(199, 154, 94, 0.06);
		}

		.kb-alfresco-end-dot::before {
			content: '';
			position: absolute;
			inset: -10px;
			border-radius: 50%;
			border: 1px solid rgba(199, 154, 94, 0.16);
		}

		.kb-alfresco-feature.is-enhanced [data-kb-alfresco-step] {
			opacity: 0;
			transform: translate3d(0, 60px, 0);
			transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1), transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
		}

		.kb-alfresco-feature.is-enhanced [data-kb-alfresco-step].is-visible {
			opacity: 1;
			transform: translate3d(0, 0, 0);
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-card {
			opacity: 0;
			transform: translate3d(0, 60px, 0);
			transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1), transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-card--feature-right {
			transform: translate3d(200px, 0px, 0);
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-card--feature-left {
			transform: translate3d(-200px, 0px, 0);
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-card {
			opacity: 1;
			transform: var(--kb-alfresco-card-rest);
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-card:nth-child(1) {
			transition-delay: 0.1s;
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-card:nth-child(2) {
			transition-delay: 0.25s;
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-stack .kb-alfresco-gallery-card:first-child {
			transition-delay: 0.4s;
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-stack .kb-alfresco-gallery-card:last-child {
			transition-delay: 0.55s;
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-card:nth-child(4) {
			transition-delay: 0.7s;
		}

		.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-card:nth-child(5) {
			transition-delay: 0.85s;
		}

		@media (max-width: 991px) {
			.kb-alfresco-feature {
				padding: 86px 0 82px;
			}

			.kb-alfresco-story {
				width: min(100% - 22px, 780px);
				gap: 70px;
			}

			.kb-alfresco-intro {
				max-width: 620px;
			}

			.kb-alfresco-intro-shell {
				padding-inline: 10px;
			}

			.kb-alfresco-gallery-stage {
				width: min(100%, 900px);
				min-height: clamp(280px, 48vw, 520px);
				padding: 24px;
			}

			.kb-alfresco-gallery {
				width: 100%;
			}

			.kb-alfresco-gallery-stage::before {
				inset: 14px;
				border-radius: 22px;
			}

			.kb-alfresco-gallery-card,
			.kb-alfresco-gallery-stack {
				height: clamp(220px, 40vw, 338px);
			}

			.kb-alfresco-gallery-card--edge-left,
			.kb-alfresco-gallery-card--edge-right,
			.kb-alfresco-gallery-card--feature-left,
			.kb-alfresco-gallery-card--feature-right,
			.kb-alfresco-gallery-stack {
				transform: none;
			}

			.kb-alfresco-gallery-card--edge-left,
			.kb-alfresco-gallery-card--edge-right,
			.kb-alfresco-gallery-card--feature-left,
			.kb-alfresco-gallery-card--feature-right {
				--kb-alfresco-card-rest: translate3d(0, 0, 0) rotate(0deg);
			}

			.kb-alfresco-panel {
				width: min(100% - 28px, 860px);
				--kb-alfresco-panel-shell-width: min(340px, calc(50% - 86px));
				--kb-alfresco-panel-connector-gap: 14px;
			}

			.kb-alfresco-panel::after {
				left: calc(var(--kb-alfresco-panel-shell-width) + var(--kb-alfresco-panel-connector-gap));
				width: calc(50% - var(--kb-alfresco-panel-shell-width) - var(--kb-alfresco-panel-connector-gap));
			}

			.kb-alfresco-panel-shell {
				min-height: 200px;
				margin-left: 0;
				padding: 38px 26px 34px;
				max-width: 100%;
				width: -webkit-fill-available;
			}

			.kb-alfresco-panel-title {
				font-size: clamp(3.1rem, 10vw, 4.6rem);
			}

			.kb-alfresco-panel-title::after {
				width: min(74px, 10vw);
				left: calc(100% + 14px);
			}

			.kb-alfresco-panel-copy {
				font-size: clamp(0.98rem, 1.4vw, 1.12rem);
			}
		}

		@media (max-width: 767px) {
			.kb-alfresco-feature {
				padding: 72px 0 74px;
			}

			.kb-alfresco-story {
				width: min(100% - 14px, 420px);
				gap: 64px;
			}

			.kb-alfresco-intro {
				max-width: 340px;
				padding-inline: 6px;
			}

			.kb-alfresco-copy {
				font-size: 0.88rem;
				line-height: 1.7;
			}

			.kb-alfresco-intro-mark {
				font-size: 0.58rem;
				letter-spacing: 0.28em;
			}

			.kb-alfresco-gallery-stage {
				width: min(100%, 420px);
				min-height: clamp(262px, 82vw, 390px);
				padding: 16px;
				border-radius: 26px;
			}

			.kb-alfresco-gallery {
				width: 100%;
				grid-template-columns: 8px minmax(74px, 1fr) minmax(74px, 1fr) minmax(74px, 1fr) 8px;
				gap: 8px;
			}

			.kb-alfresco-gallery-stage::before {
				inset: 10px;
				border-radius: 18px;
			}

			.kb-alfresco-gallery-card,
			.kb-alfresco-gallery-stack {
				height: clamp(214px, 62vw, 308px);
			}

			.kb-alfresco-panel {
				padding-left: 0;
				padding-right: 0;
				justify-content: center;
				text-align: center;
				width: min(100% - 12px, 420px);
			}

			.kb-alfresco-panel::after {
				display: none;
			}

			.kb-alfresco-panel-shell {
				max-width: 340px;
				min-height: auto;
				width: 100%;
				margin-left: 0;
				padding: 32px 20px 30px;
				background: linear-gradient(180deg, rgba(255, 251, 246, 0.64), rgba(255, 249, 242, 0.4));
				box-shadow: 0 14px 24px rgba(166, 134, 95, 0.06);
			}

			.kb-alfresco-panel-copy {
				font-size: 0.98rem;
				line-height: 1.6;
				margin: 0 auto;
				text-align: center;
			}

			.kb-alfresco-panel-title {
				font-size: clamp(3rem, 14vw, 4.2rem);
				line-height: 0.9;
			}

			.kb-alfresco-panel-title::after {
				display: none;
			}

			.kb-alfresco-gallery-caption {
				left: 20px;
				right: 20px;
				bottom: 18px;
				font-size: 0.74rem;
				letter-spacing: 0.18em;
				padding: 8px 12px;
				max-width: calc(100% - 40px);
			}

			.kb-alfresco-panel-label {
				text-align: center;
			}

			.kb-alfresco-panel-divider {
				margin: 18px auto;
			}

			.kb-alfresco-panel--contact {
				margin-top: 0;
			}
		}

		@media (max-width: 480px) {
			.kb-alfresco-feature {
				padding: 66px 0 68px;
			}

			.kb-alfresco-story {
				gap: 60px;
			}

			.kb-alfresco-eyebrow {
				font-size: 0.92rem;
			}

			.kb-alfresco-intro-shell::after {
				bottom: -18px;
			}

			.kb-alfresco-gallery {
				width: 100%;
				grid-template-columns: 1fr;
			}

			.kb-alfresco-gallery-stage::before {
				inset: 8px;
				border-radius: 16px;
			}

			.kb-alfresco-gallery-card,
			.kb-alfresco-gallery-stack {
				height: 450px;
			}

			.kb-alfresco-panel-title {
				font-size: 2.9rem;
			}

			.kb-alfresco-rail-dot {
				width: 8px;
				height: 8px;
			}
		}

		@keyframes kbAlfrescoDotPulse {
			0% {
				transform: scale(0.72);
				opacity: 0.7;
			}

			70% {
				transform: scale(1.18);
				opacity: 0;
			}

			100% {
				transform: scale(1.18);
				opacity: 0;
			}
		}

		.glass-elem {
			position: absolute;
			top: 5%;
			right: -7%;
			width: 400px;
			z-index: -1;
			pointer-events: none;
			mix-blend-mode: darken;
			opacity: 0.2;
			will-change: transform;
		}

		.glass-elem2 {
			position: absolute;
			bottom: 3%;
			left: -6.2%;
			width: 639px;
			z-index: -1;
			pointer-events: none;
			mix-blend-mode: darken;
			opacity: 0.2;
			will-change: transform;
		}

		.glass-elem3 {
			position: absolute;
			bottom: 24%;
			right: 2%;
			width: 595px;
			rotate: -3deg;
			z-index: -1;
			pointer-events: none;
			mix-blend-mode: darken;
			opacity: 0.2;
			will-change: transform;
		}

		@media all and (max-width:960px) {
			#navBar {
				display: flex;
				width: 100%;
				min-width: 0;
				flex: 0 0 auto;
				align-items: center;
				justify-content: flex-start;
				gap: 22px;
				padding: 0 10px;
				box-sizing: border-box;
				position: relative;
				z-index: 4;
				pointer-events: auto;
			}

			#navLogo {
				max-width: 145px;
				flex: 0 0 auto;
			}

			/* #navSideItems {
				flex-direction: row;
				flex-wrap: wrap;
				justify-content: center;
				gap: 8px 16px;
				width: 100%;
				position: relative;
				z-index: 4;
				pointer-events: auto;
			}

			.navSideItem {
				margin-top: 0;
				font-size: 14px;
				line-height: 1.35;
				pointer-events: auto;
				touch-action: manipulation;
			} */

			#navScroller {
				top: 0;
				padding-bottom: 165px;
			}

			#navTop {
				display: flex;
				flex-direction: column;
				align-items: center;
			}

			#navContent {
				width: calc(100% - 20px);
				padding-right: 0;
				padding-left: 0;
				margin: 28px 10px 0;
				min-height: 0;
				position: relative;
				z-index: 1;
			}
		}

		@media (min-width:1200px) and (max-width:1366px) and (max-height:900px) {
			/* .kb-alfresco-story {
				width: min(100% - 40px, 1120px);
				gap: 56px;
			}

			.kb-alfresco-gallery-stage {
				max-width: min(1180px, calc(100% - 12px));
				min-height: clamp(260px, 36vw, 500px);
				padding: 36px 34px 28px 30px;
			}

			.kb-alfresco-gallery {
				grid-template-columns: minmax(34px, 0.26fr) minmax(180px, 1fr) minmax(180px, 1fr) minmax(180px, 1fr) minmax(34px, 0.26fr);
				grid-template-rows: minmax(0, 1fr);
				gap: 12px;
				align-items: center;
			}

			.kb-alfresco-gallery-card--edge-left {
				grid-column: 1;
				grid-row: 1;
			}

			.kb-alfresco-gallery-card--feature-left {
				grid-column: 2;
				grid-row: 1;
			}

			.kb-alfresco-gallery-stack {
				grid-column: 3;
				grid-row: 1;
			}

			.kb-alfresco-gallery-card--feature-right {
				grid-column: 4;
				grid-row: 1;
			}

			.kb-alfresco-gallery-card--edge-right {
				grid-column: 5;
				grid-row: 1;
			}

			.kb-alfresco-gallery-card,
			.kb-alfresco-gallery-stack {
				height: clamp(210px, 28vw, 320px);
			} */

			/* .kb-alfresco-gallery-card--edge-left,
			.kb-alfresco-gallery-card--edge-right,
			.kb-alfresco-gallery-card--feature-left,
			.kb-alfresco-gallery-card--feature-right,
			.kb-alfresco-gallery-stack {
				transform: none;
			}

			.kb-alfresco-gallery-card--edge-left,
			.kb-alfresco-gallery-card--edge-right,
			.kb-alfresco-gallery-card--feature-left,
			.kb-alfresco-gallery-card--feature-right {
				--kb-alfresco-card-rest: translate3d(0, 0, 0) rotate(0deg);
			} */

			.kb-alfresco-panel {
				width: min(100% - 40px, 1040px);
				--kb-alfresco-panel-shell-width: min(360px, calc(50% - 68px));
				--kb-alfresco-panel-connector-gap: 12px;
			}

			.kb-alfresco-panel-shell {
				padding: 34px 28px 30px;
			}

			.kb-alfresco-panel-title {
				font-size: clamp(3rem, 4.4vw, 4rem);
			}
		}

		@media (max-width:767px) {
			.kb-alfresco-story {
				width: min(100% - 20px, 420px);
			}

			.kb-alfresco-gallery-stage {
				min-height: auto;
				padding: 14px;
			}

			.kb-alfresco-gallery {
				grid-template-columns: 1fr;
				gap: 14px;
			}

			.kb-alfresco-gallery-card,
			.kb-alfresco-gallery-stack {
				height: auto;
				min-height: 220px;
			}

			.kb-alfresco-gallery-stack {
				grid-template-rows: repeat(2, minmax(220px, 1fr));
				transform: none;
			}

			.kb-alfresco-gallery-card--edge-left,
			.kb-alfresco-gallery-card--edge-right,
			.kb-alfresco-gallery-card--feature-left,
			.kb-alfresco-gallery-card--feature-right {
				height: auto;
				min-height: 220px;
				align-self: stretch;
				--kb-alfresco-card-rest: translate3d(0, 0, 0) rotate(0deg);
			}

			.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage.is-visible .kb-alfresco-gallery-card {
				opacity: 0;
				transform: translate3d(0, 40px, 0);
				transition-delay: 0s;
			}

			.kb-alfresco-feature.is-enhanced .kb-alfresco-gallery-stage .kb-alfresco-gallery-card.is-card-visible {
				opacity: 1;
				transform: var(--kb-alfresco-card-rest);
			}

			.kb-alfresco-panel,
			.kb-alfresco-panel-shell {
				width: 100%;
				max-width: 100%;
			}
		}

		@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&display=swap');

		/* ── Wrapper ─────────────────────────────────────────────── */
		.kd-nav-section {
			width: 100%;
			padding: 80px 0;
			/* Significantly more section padding */
			background: #F2ECE5;
			font-family: 'Montserrat', sans-serif;
			box-sizing: border-box;
			display: flex;
			/* Corrected to vertical flex for centered layout */
			flex-direction: column;
			align-items: center;
		}

		/* ── Current room heading ────────────────────────────────── */
		.kd-head {
			text-align: center;
			margin-bottom: 2rem;
		}

		.kd-pre {
			font-size: 13px;
			letter-spacing: .35em;
			text-transform: uppercase;
			color: #BDAC9A;
			margin-bottom: 15px;
			font-weight: 600;
		}

		.kd-title {
			font-family: 'Playfair Display';
			font-size: 54px;
			/* Much bigger title */
			font-weight: 300;
			color: #483728;
			letter-spacing: .1em;
			/* font-style: italic; */
			margin: 0;
			line-height: 1.1;
		}

		/* ── Ornamental rule ─────────────────────────────────────── */
		.kd-rule {
			display: flex;
			align-items: center;
			gap: 15px;
			margin-bottom: 2rem;
			max-width: 1200px;
			width: 100%;
			margin-left: auto;
			margin-right: auto;
		}

		.kd-rule-line {
			flex: 1;
			height: .5px;
			background: #BDAC9A;
		}

		.kd-rule-star {
			font-size: 15px;
			color: #BDAC9A;
			line-height: 1;
			user-select: none;
		}

		/* ── Cards grid ──────────────────────────────────────────── */
		.kd-grid {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 32px;
			max-width: 1600px;
			width: 100%;
			margin: 0 auto;
		}

		.kd-card {
			background: #FFFFFF;
			border: .5px solid #BDAC9A;
			padding: 8.5rem 2rem 8rem;
			/* Expanded internal scale */
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 18px;
			text-decoration: none;
			position: relative;
			transition: background .4s ease;
			box-sizing: border-box;
			overflow: hidden;
		}

		.kd-card-bg {
			position: absolute;
			inset: 0;
			z-index: 0;
		}

		.kd-card-bg::before {
			content: '';
			position: absolute;
			inset: 12px;
			border-radius: 18px;
			border: 1px solid rgba(255, 255, 255, 0.52);
			background: linear-gradient(180deg, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0) 26%);
			z-index: 1;
			pointer-events: none;
		}

		.kd-card-bg img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			transition: transform .6s ease;
		}

		.kd-card-overlay {
			position: absolute;
			inset: 0;
			background: rgba(255, 255, 255, 0);
			/* Transparent by default per latest feedback */
			z-index: 1;
			transition: background .4s ease;
		}

		/* Hover effects */
		.kd-card:hover .kd-card-bg img {
			transform: scale(1.1);
		}

		.kd-card:hover .kd-card-overlay {
			background: rgba(255, 255, 255, 0.85);
			/* White overlay on hover for readability */
		}

		/* Ensure text is above background and overlay */
		.kd-card-num,
		.kd-card-name,
		.kd-card-tag {
			position: relative;
			z-index: 2;
			/* Subtle text shadows for readability in bright state */
			text-shadow: 0 0 15px rgba(255, 255, 255, 0.5), 0 0 5px rgba(255, 255, 255, 0.3);
		}

		/* Roman numeral */
		.kd-card-num {
			font-family: 'Cormorant Garamond', serif;
			font-size: 12px;
			letter-spacing: .35em;
			color: #BDAC9A;
			text-transform: uppercase;
			opacity: 0;
		}

		/* Room name */
		.kd-card-name {
			font-family: 'Playfair Display';
			font-size: 24px;
			/* Further enlarged room name per latest feedback */
			font-weight: 400;
			color: #483728;
			text-align: center;
			letter-spacing: .07em;
			line-height: 1.45;
			transition: color .3s;
			opacity: 0;
		}

		.kd-card:hover .kd-card-name {
			color: #483728;
			opacity: 1;
		}

		/* Explore tag */
		.kd-card-tag {
			font-size: 12px;
			/* Further enlarged explore tag per latest feedback */
			letter-spacing: .24em;
			text-transform: uppercase;
			color: #BDAC9A;
			transition: color .3s;
			opacity: 0;
		}

		.kd-card:hover .kd-card-tag {
			color: #6B5D4C;
			opacity: 1;
		}

		.kd-card-num:hover {
			color: #483728;
			opacity: 1;
		}

		/* ── Back link ───────────────────────────────────────────── */
		.kd-back {
			text-align: center;
			margin-top: 3rem;
		}

		.kd-back a {
			display: inline-flex;
			align-items: center;
			gap: 8px;
			font-size: 14px;
			/* Enlarged return link per latest feedback */
			letter-spacing: .24em;
			text-transform: uppercase;
			color: #BDAC9A;
			text-decoration: none;
			transition: color .3s;
			font-weight: 600;
		}

		.kd-back a:hover {
			color: #483728;
		}

		.kd-back-chevron {
			display: inline-block;
			width: 8px;
			/* Enlarged chevron */
			height: 8px;
			border-left: .5px solid currentColor;
			border-bottom: .5px solid currentColor;
			transform: rotate(45deg);
		}

		.kd-nav-section.is-enhanced .kd-head,
		.kd-nav-section.is-enhanced .kd-rule,
		.kd-nav-section.is-enhanced .kd-card,
		.kd-nav-section.is-enhanced .kd-back {
			opacity: 0;
			will-change: opacity, transform, filter;
		}

		.kd-nav-section.is-enhanced .kd-head {
			transform: translate3d(0, 52px, 0) scale(0.97);
			filter: blur(10px);
			transition: opacity .85s cubic-bezier(0.22, 1, 0.36, 1), transform .85s cubic-bezier(0.22, 1, 0.36, 1), filter .85s cubic-bezier(0.22, 1, 0.36, 1);
		}

		.kd-nav-section.is-enhanced .kd-pre,
		.kd-nav-section.is-enhanced .kd-title {
			opacity: 0;
			will-change: opacity, transform, letter-spacing;
		}

		.kd-nav-section.is-enhanced .kd-pre {
			transform: translate3d(0, 18px, 0);
			letter-spacing: .42em;
			transition: opacity .7s cubic-bezier(0.22, 1, 0.36, 1) .08s, transform .7s cubic-bezier(0.22, 1, 0.36, 1) .08s, letter-spacing .7s cubic-bezier(0.22, 1, 0.36, 1) .08s;
		}

		.kd-nav-section.is-enhanced .kd-title {
			transform: translate3d(0, 28px, 0);
			letter-spacing: .14em;
			transition: opacity .8s cubic-bezier(0.22, 1, 0.36, 1) .16s, transform .8s cubic-bezier(0.22, 1, 0.36, 1) .16s, letter-spacing .8s cubic-bezier(0.22, 1, 0.36, 1) .16s;
		}

		.kd-nav-section.is-enhanced .kd-rule {
			transform: translate3d(0, 34px, 0);
			transition: opacity .75s cubic-bezier(0.22, 1, 0.36, 1) .14s, transform .75s cubic-bezier(0.22, 1, 0.36, 1) .14s;
		}

		.kd-nav-section.is-enhanced .kd-rule-line {
			transform: scaleX(0);
			transition: transform .85s cubic-bezier(0.22, 1, 0.36, 1) .2s;
		}

		.kd-nav-section.is-enhanced .kd-rule-line:first-child {
			transform-origin: right center;
		}

		.kd-nav-section.is-enhanced .kd-rule-line:last-child {
			transform-origin: left center;
		}

		.kd-nav-section.is-enhanced .kd-rule-star {
			opacity: 0;
			transform: scale(0.65) rotate(90deg);
			transition: opacity .55s ease .26s, transform .7s cubic-bezier(0.22, 1, 0.36, 1) .26s;
		}

		.kd-nav-section.is-enhanced .kd-card {
			transform: translate3d(0, 58px, 0) scale(0.97);
			filter: blur(8px);
			transition: opacity .85s cubic-bezier(0.22, 1, 0.36, 1), transform .85s cubic-bezier(0.22, 1, 0.36, 1), filter .85s cubic-bezier(0.22, 1, 0.36, 1);
		}

		.kd-nav-section.is-enhanced .kd-card:nth-child(1) {
			transition-delay: .16s;
		}

		.kd-nav-section.is-enhanced .kd-card:nth-child(2) {
			transition-delay: .26s;
		}

		.kd-nav-section.is-enhanced .kd-card:nth-child(3) {
			transition-delay: .36s;
		}

		.kd-nav-section.is-enhanced .kd-back {
			transform: translate3d(0, 30px, 0);
			transition: opacity .7s cubic-bezier(0.22, 1, 0.36, 1) .42s, transform .7s cubic-bezier(0.22, 1, 0.36, 1) .42s;
		}

		.kd-nav-section.is-enhanced.is-visible .kd-head,
		.kd-nav-section.is-enhanced.is-visible .kd-rule,
		.kd-nav-section.is-enhanced.is-visible .kd-card,
		.kd-nav-section.is-enhanced.is-visible .kd-back {
			opacity: 1;
			transform: none;
			filter: none;
		}

		.kd-nav-section.is-enhanced.is-visible .kd-pre,
		.kd-nav-section.is-enhanced.is-visible .kd-title,
		.kd-nav-section.is-enhanced.is-visible .kd-rule-star {
			opacity: 1;
			transform: none;
		}

		.kd-nav-section.is-enhanced.is-visible .kd-pre {
			letter-spacing: .35em;
		}

		.kd-nav-section.is-enhanced.is-visible .kd-title {
			letter-spacing: .1em;
		}

		.kd-nav-section.is-enhanced.is-visible .kd-rule-line {
			transform: scaleX(1);
		}

		@media (prefers-reduced-motion: reduce) {

			.kd-nav-section.is-enhanced .kd-head,
			.kd-nav-section.is-enhanced .kd-rule,
			.kd-nav-section.is-enhanced .kd-card,
			.kd-nav-section.is-enhanced .kd-back,
			.kd-nav-section.is-enhanced .kd-pre,
			.kd-nav-section.is-enhanced .kd-title,
			.kd-nav-section.is-enhanced .kd-rule-star {
				opacity: 1;
				transform: none;
				filter: none;
				transition: none;
			}

			.kd-nav-section.is-enhanced .kd-pre {
				letter-spacing: .35em;
			}

			.kd-nav-section.is-enhanced .kd-title {
				letter-spacing: .1em;
			}

			.kd-nav-section.is-enhanced .kd-rule-line {
				transform: scaleX(1);
				transition: none;
			}
		}


		/* ── Responsive ──────────────────────────────────────────── */
		@media (max-width: 1600px) {

			.kd-grid {
				width: 90%;
			}
		}

		@media (max-width: 1350px) {

			.glass-elem3,
			.glass-elem2 {
				width: 512px;
			}
		}

		@media (max-width: 900px) {
			.kd-grid {
				grid-template-columns: repeat(2, 1fr);
				/* Responsive 2-column layout for tablets */
				gap: 20px;
			}

			.kd-title {
				font-size: 42px;
			}
		}

		@media (max-width: 600px) {
			.glass-elem3 {
				width: 200px;
				bottom: 22%;
				right: -10%;
			}

			.glass-elem2 {
				width: 200px;
				bottom: 0.9%;
			}

			.glass-elem {
				top: 1%;
				right: -15%;
				width: 200px;
			}

			.kd-nav-section {
				padding: 40px 15px !important;
			}

			.kd-back {
				margin-top: 2rem !important;
			}

			.kd-grid {
				grid-template-columns: 1fr;
				gap: 15px;
			}

			.kd-card {
				flex-direction: row;
				justify-content: flex-start;
				padding: 3.5rem 1.6rem;
				gap: 20px;
				height: 300px;
			}

			.kd-card-num {
				display: none;
			}

			.kd-card-name {
				text-align: left;
				font-size: 20px;
				/* Enlarged on mobile too */
			}

			.kd-title {
				font-size: 32px;
			}
		}