/* Header — compact Business Portal CTA (keeps nav on one row) */
		.fc-portal-btn {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 8px;
			min-height: 50px;
			padding: 4px 4px 4px 12px;
			border-radius: 100px;
			text-decoration: none !important;
			border: 1px solid rgba(255, 255, 255, 0.28);
			background: linear-gradient(135deg, rgba(255,255,255,0.16) 0%, rgba(216,180,254,0.18) 100%);
			box-shadow:
				0 8px 18px rgba(46, 16, 101, 0.16),
				inset 0 1px 0 rgba(255,255,255,0.22);
			backdrop-filter: blur(10px);
			-webkit-backdrop-filter: blur(10px);
			transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
			flex: 0 0 auto;
		}
		.fc-portal-btn:hover {
			transform: translateY(-2px);
			border-color: rgba(255, 255, 255, 0.55);
			background: linear-gradient(135deg, rgba(255,255,255,0.24) 0%, rgba(196,151,255,0.28) 100%);
		}
		.fc-portal-btn__icon {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			flex: 0 0 auto;
			background: transparent;
			color: #fff;
			font-size: 0.95rem;
			box-shadow: none;
		}
		.header-section:not(.header-section-1) .fc-portal-btn__icon,
		.header-section-2 .fc-portal-btn__icon,
		.fc-portal-btn--menu .fc-portal-btn__icon {
			color: #5b21b6;
		}
		.fc-portal-btn__copy {
			display: grid;
			gap: 0;
			min-width: 0;
			line-height: 1.05;
			text-align: left;
		}
		.fc-portal-btn__copy strong {
			font-family: var(--albert-sans-font), "Outfit", sans-serif;
			font-size: 14px;
			font-weight: 700;
			color: #fff;
			white-space: nowrap;
			line-height: 1.1;
		}
		.fc-portal-btn__copy em {
			display: block;
			font-family: "Outfit", sans-serif;
			font-style: normal;
			font-size: 11px;
			font-weight: 600;
			color: rgba(255,255,255,0.78);
			white-space: nowrap;
			line-height: 1.1;
		}
		.fc-portal-btn__arrow {
			width: 40px;
			height: 40px;
			border-radius: 100%;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			flex: 0 0 auto;
			background: rgba(255,255,255,0.14);
			color: #fff;
			font-size: 0.8rem;
			transition: transform .25s ease, background .25s ease;
		}
		.fc-portal-btn:hover .fc-portal-btn__arrow {
			transform: translateX(2px);
			background: rgba(255,255,255,0.26);
		}
		/* Light headers (inner pages) */
		.header-section:not(.header-section-1) .fc-portal-btn,
		.header-section-2 .fc-portal-btn {
			border-color: rgba(109, 40, 217, 0.2);
			background: linear-gradient(135deg, #ffffff 0%, #f3e8ff 100%);
			box-shadow: 0 8px 18px rgba(46, 16, 101, 0.1);
		}
		.header-section:not(.header-section-1) .fc-portal-btn__copy strong,
		.header-section-2 .fc-portal-btn__copy strong {
			color: #2E1065;
		}
		.header-section:not(.header-section-1) .fc-portal-btn__copy em,
		.header-section-2 .fc-portal-btn__copy em {
			color: rgba(46, 16, 101, 0.58);
		}
		.header-section:not(.header-section-1) .fc-portal-btn__arrow,
		.header-section-2 .fc-portal-btn__arrow {
			background: rgba(109, 40, 217, 0.12);
			color: #5b21b6;
		}
		.header-section:not(.header-section-1) .fc-portal-btn:hover,
		.header-section-2 .fc-portal-btn:hover {
			border-color: rgba(109, 40, 217, 0.35);
			background: linear-gradient(135deg, #ffffff 0%, #ede9fe 100%);
		}
		/* Keep homepage nav + actions on one row */
		.header-section-1 .header-middle {
			display: flex;
			align-items: center;
			gap: 14px;
			min-width: 0;
		}
		.header-section-1 .main-menu-2 {
			flex: 1 1 auto;
			min-width: 0;
		}
		.header-section-1 .main-menu-2 > ul {
			flex-wrap: nowrap !important;
			white-space: nowrap;
			gap: 0;
		}
		.header-section-1 .main-menu-2 > ul > li > a {
			padding-left: 10px !important;
			padding-right: 10px !important;
			font-size: 14px !important;
		}
		.header-section-1 .header-info-wrap {
			display: flex;
			align-items: center;
			gap: 10px;
			flex: 0 0 auto;
		}
		.header-section-1 .header-btn-wrap .e-primary-btn.has-icon {
			padding: 4px 4px 4px 16px;
			gap: 10px;
			font-size: 14px;
			min-height: 50px;
		}
		.header-section-1 .header-btn-wrap .e-primary-btn .icon-wrap {
			width: 40px;
			height: 40px;
		}
		@media (max-width: 1499px) {
			.header-section-1 .main-menu-2 > ul > li > a {
				padding-left: 8px !important;
				padding-right: 8px !important;
				font-size: 13px !important;
			}
			.fc-portal-btn__copy strong { font-size: 13px; }
			.header-section-1 .header-btn-wrap .e-primary-btn.has-icon {
				font-size: 13px;
				padding-left: 14px;
			}
		}
		.fc-menubar-actions {
			display: grid;
			gap: 12px;
			padding: 18px 20px 24px;
			margin-top: auto;
		}
		.fc-portal-btn--menu {
			display: inline-flex;
			width: 100%;
			max-width: none;
			min-height: 56px;
			border-color: rgba(109, 40, 217, 0.2);
			background: linear-gradient(135deg, #ffffff 0%, #f3e8ff 100%);
			box-shadow: 0 8px 18px rgba(46, 16, 101, 0.1);
		}
		.fc-portal-btn--menu .fc-portal-btn__copy strong { color: #2E1065; }
		.fc-portal-btn--menu .fc-portal-btn__copy em {
			color: rgba(46, 16, 101, 0.62);
		}
		.fc-menubar-actions .e-primary-btn {
			justify-content: center;
		}

		/* FaithCode Lottie preloader */
		#preloader {
			background:
				radial-gradient(55% 50% at 50% 45%, rgba(216, 180, 254, 0.28), transparent 70%),
				#ffffff;
		}
		.fc-lottie-preloader {
			width: auto !important;
			display: flex !important;
			align-items: center;
			justify-content: center;
			text-align: center;
		}
		.fc-lottie-preloader dotlottie-wc {
			display: block;
			width: 180px;
			height: 180px;
			max-width: 42vw;
			max-height: 42vw;
		}

		/* FaithCode brand logo — header + compact logos */
		.logo-wrap img,
		.offcanvas-logo img,
		.menubar-logo img {
			width: auto !important;
			height: 42px !important;
			max-width: 190px !important;
			object-fit: contain !important;
		}
		/* Footer logo — larger and clearer */
		.footer-section .about-widget .footer-logo {
			margin-bottom: 22px;
		}
		.footer-section .about-widget .footer-logo img,
		.footer-section .footer-logo img[alt="FaithCode"] {
			width: auto !important;
			height: 82px !important;
			max-width: 320px !important;
			object-fit: contain !important;
		}
		@media (max-width: 767px) {
			.footer-section .about-widget .footer-logo img,
			.footer-section .footer-logo img[alt="FaithCode"] {
				height: 64px !important;
				max-width: 260px !important;
			}
		}
		.footer-section .about-widget .social-links {
			margin-top: 18px;
		}
		.header-section-1 .logo-wrap-2 {
			padding-top: 14px !important;
			padding-bottom: 14px !important;
		}
		.header-section-1 .logo-wrap-2 img {
			width: auto !important;
			height: 56px !important;
			max-width: 250px !important;
			object-fit: contain !important;
		}
		@media (min-width: 1200px) and (max-width: 1399px) {
			.header-section-1 .logo-wrap-2 img {
				height: 50px !important;
				max-width: 220px !important;
			}
		}

		/* Footer Get in Touch — aligned icons + text */
		.footer-section .get-in-touch {
			gap: 20px;
		}
		.footer-section .get-in-touch .footer-address,
		.footer-section .get-in-touch .email,
		.footer-section .get-in-touch .phone {
			display: flex !important;
			align-items: flex-start !important;
			gap: 14px !important;
			text-decoration: none;
			color: inherit;
		}
		.footer-section .get-in-touch .footer-address .icon,
		.footer-section .get-in-touch .email .icon,
		.footer-section .get-in-touch .phone .icon {
			flex: 0 0 48px !important;
			width: 48px !important;
			height: 48px !important;
			min-width: 48px !important;
			margin-top: 2px;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
			border-radius: 50% !important;
			background: rgba(255, 255, 255, 0.12) !important;
		}
		.footer-section .get-in-touch .footer-address .icon i,
		.footer-section .get-in-touch .email .icon i,
		.footer-section .get-in-touch .phone .icon i {
			font-size: 18px !important;
			line-height: 1 !important;
			color: #E9D5FF !important;
		}
		.footer-section .get-in-touch .text {
			flex: 1 1 auto;
			min-width: 0;
			text-align: left;
		}
		.footer-section .get-in-touch .text h6 {
			margin: 0 0 4px !important;
			line-height: 1.3 !important;
		}
		.footer-section .get-in-touch .text p {
			margin: 0 !important;
			line-height: 1.45 !important;
			word-break: break-word;
		}

		/* Footer shop icons — equal circles, visible brands */
		.footer-section .about-widget .social-links.fc-shop-links a {
			width: 42px;
			height: 42px;
		}
		.footer-section .about-widget .social-links.fc-shop-links a i {
			font-size: 16px;
			color: rgba(255, 255, 255, 0.92);
		}
		.footer-section .fc-shop-links__brand img {
			width: 20px !important;
			height: 20px !important;
			filter: brightness(0) invert(1) !important;
			opacity: 0.95;
		}

		/* Daily verse — between hero and About */
		.fc-daily-verse {
			--fc-verse-ink: #2E1065;
			--fc-verse-muted: #6D28D9;
			position: relative;
			padding: 22px 0 8px;
			background:
				radial-gradient(70% 120% at 50% 0%, rgba(124, 58, 237, 0.06), transparent 60%),
				#ffffff;
			overflow: hidden;
		}
		.fc-daily-verse__inner {
			max-width: 640px;
			margin: 0 auto;
			text-align: center;
			padding: 0 1rem;
		}
		.fc-daily-verse__label {
			display: inline-flex;
			align-items: center;
			gap: 6px;
			margin: 0 0 8px;
			color: rgba(109, 40, 217, 0.6);
			font-family: "Outfit", sans-serif;
			font-size: 10px;
			font-weight: 700;
			letter-spacing: 0.16em;
			text-transform: uppercase;
		}
		.fc-daily-verse__label::before,
		.fc-daily-verse__label::after {
			content: "";
			width: 18px;
			height: 1px;
			background: rgba(109, 40, 217, 0.28);
		}
		.fc-daily-verse__quote {
			position: relative;
			margin: 0;
			padding: 0;
			border: 0;
		}
		.fc-daily-verse__quote::before {
			content: "“";
			display: block;
			margin: 0 0 2px;
			color: rgba(109, 40, 217, 0.22);
			font-family: "Cormorant Garamond", Georgia, serif;
			font-size: clamp(1.75rem, 4vw, 2.25rem);
			font-weight: 600;
			line-height: 0.75;
		}
		.fc-daily-verse__text {
			margin: 0;
			color: rgba(46, 16, 101, 0.6);
			font-family: "Cormorant Garamond", Georgia, serif;
			font-size: clamp(1.05rem, 2vw, 1.35rem);
			font-weight: 600;
			font-style: italic;
			line-height: 1.4;
			letter-spacing: 0.01em;
		}
		.fc-daily-verse__ref {
			display: inline-block;
			margin-top: 8px;
			color: rgba(109, 40, 217, 0.6);
			font-family: "Outfit", sans-serif;
			font-size: 0.72rem;
			font-weight: 700;
			letter-spacing: 0.08em;
			text-transform: uppercase;
		}
		@media (max-width: 767px) {
			.fc-daily-verse {
				padding: 16px 0 4px;
			}
		}

		/* Lock desktop/tablet hero heights so fade slides don't jump */
		.hero-slider-active-1 .swiper {
			height: 860px !important;
		}
		.hero-slider-active-1 .swiper-wrapper,
		.hero-slider-active-1 .swiper-slide {
			height: 100% !important;
		}
		.hero-side {
			background-size: cover !important;
			background-position: center center !important;
			height: 100% !important;
			min-height: 100% !important;
			box-sizing: border-box !important;
			display: flex !important;
			align-items: center !important;
			padding-top: 180px !important;
			padding-bottom: 140px !important;
		}
		.hero-side::before {
			content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(90deg, rgba(30, 10, 60, 0.72) 0%, rgba(30, 10, 60, 0.45) 48%, rgba(30, 10, 60, 0.22) 100%);
			pointer-events: none;
			z-index: 0;
		}
		.hero-side .container {
			position: relative;
			z-index: 2;
			width: 100%;
		}
		.hero-side .group-shape-1,
		.hero-side .s-shape-1 {
			z-index: 1 !important;
			pointer-events: none;
		}
		.hero-content-1 .title {
			min-height: 164px !important;
		}
		.hero-content-1 .text {
			min-height: 72px !important;
		}
		@media (min-width: 1400px) and (max-width: 1700px) {
			.hero-slider-active-1 .swiper { height: 760px !important; }
			.hero-content-1 .title { min-height: 148px !important; }
		}
		@media (min-width: 1200px) and (max-width: 1399px) {
			.hero-slider-active-1 .swiper { height: 720px !important; }
			.hero-content-1 .title { min-height: 140px !important; }
		}
		@media (min-width: 992px) and (max-width: 1199px) {
			.hero-slider-active-1 .swiper { height: 680px !important; }
			.hero-content-1 .title { min-height: 120px !important; }
		}
		@media (min-width: 768px) and (max-width: 991px) {
			.hero-slider-active-1 .swiper { height: 640px !important; }
			.hero-content-1 .title { min-height: 110px !important; }
			.header-section-1 .logo-wrap-2 img {
				height: 48px !important;
				max-width: 210px !important;
			}
		}

		/* Mobile Chrome (~400px) — responsive hero + larger logo */
		@media (max-width: 767px) {
			.header-section-1 .logo-wrap-2 {
				padding: 10px 14px !important;
			}
			.header-section-1 .logo-wrap-2 img {
				height: 44px !important;
				max-width: 180px !important;
			}
			.hero-slider-active-1 .swiper {
				height: auto !important;
				min-height: 640px !important;
			}
			.hero-slider-active-1 .swiper-wrapper,
			.hero-slider-active-1 .swiper-slide,
			.hero-side {
				height: auto !important;
				min-height: 640px !important;
			}
			.hero-side {
				align-items: flex-end !important;
				padding-top: 120px !important;
				padding-bottom: 90px !important;
			}
			.hero-content-1 .subtitle {
				margin-bottom: 10px !important;
			}
			.hero-content-1 .subtitle span {
				font-size: 13px !important;
				line-height: 1.3 !important;
			}
			.hero-content-1 .title {
				min-height: 0 !important;
				max-width: 100% !important;
				margin-bottom: 12px !important;
			}
			.hero-content-1 .title h1 {
				font-size: 32px !important;
				line-height: 1.15 !important;
				word-break: break-word !important;
			}
			.hero-content-1 .text {
				min-height: 0 !important;
				max-width: 100% !important;
				margin-bottom: 18px !important;
			}
			.hero-content-1 .text p {
				font-size: 14px !important;
				line-height: 1.45 !important;
			}
			.hero-content-1 .join-us {
				flex-wrap: wrap !important;
				gap: 14px !important;
				align-items: center !important;
			}
			.hero-content-1 .join-us .e-primary-btn {
				font-size: 14px !important;
			}
			.hero-content-1 .join-us .author-wrap img {
				max-width: 88px !important;
			}
			.hero-content-1 .join-us .author-wrap .author-info h5 {
				font-size: 16px !important;
			}
			.hero-content-1 .join-us .author-wrap .author-info p {
				font-size: 12px !important;
				line-height: 1.3 !important;
			}
			.hero-slider-active-1 .hero-slider-social {
				display: none !important;
			}
			.hero-slider-active-1 .hero-slider-pagination-1 {
				bottom: 28px !important;
			}
		}
		@media (max-width: 400px) {
			.header-section-1 .logo-wrap-2 img {
				height: 40px !important;
				max-width: 168px !important;
			}
			.hero-slider-active-1 .swiper,
			.hero-slider-active-1 .swiper-slide,
			.hero-side {
				min-height: 620px !important;
			}
			.hero-content-1 .title h1 {
				font-size: 28px !important;
			}
		}
		.fc-slide-icon {
			width: 22px !important;
			height: 22px !important;
			object-fit: contain !important;
		}
		/* About CEO photos — fit template frames cleanly */
		.shape-wrapped-thumb-1 > img {
			width: 100% !important;
			height: 100% !important;
			object-fit: cover !important;
			object-position: center top !important;
		}
		/* Homepage about poster — full ecosystem image, founder frame stays on top */
		.shape-wrapped-thumb-1.fc-about-ecosystem > img {
			width: 100% !important;
			height: auto !important;
			object-fit: contain !important;
			object-position: center center !important;
			border-radius: 16px;
			display: block;
		}
		.shape-wrapped-thumb-2 .video-thumb img {
			width: 100% !important;
			height: 100% !important;
			object-fit: cover !important;
			object-position: center top !important;
		}
		/* Founder frame: keep the play button on the chest, clear of the face */
		.fc-about-ecosystem .video-thumb .video-play-btn {
			top: 70% !important;
			left: 50% !important;
		}
		/* Keep About rating brand mark compact (old template size) */
		.about-us-content .rating-wrap .star-rating img {
			width: auto !important;
			height: 28px !important;
			max-width: 120px !important;
			object-fit: contain !important;
		}
		/* FaithCode trust badge (replaces generic Trustpilot block) */
		.about-us-content .fc-trust-badge {
			max-width: 280px;
			padding: 12px 14px;
			border-radius: 14px;
			background: linear-gradient(135deg, rgba(124, 58, 237, 0.08), rgba(91, 33, 182, 0.04));
			border: 1px solid rgba(124, 58, 237, 0.18);
		}
		.about-us-content .fc-trust-badge__top {
			display: flex;
			align-items: center;
			gap: 10px;
			margin-bottom: 0;
		}
		.about-us-content .fc-trust-badge__icon {
			width: 36px !important;
			height: 36px !important;
			object-fit: contain !important;
			border-radius: 10px;
			flex-shrink: 0;
		}
		.about-us-content .fc-trust-badge__copy {
			display: flex;
			flex-direction: column;
			line-height: 1.25;
		}
		.about-us-content .fc-trust-badge__copy strong {
			color: #5B21B6;
			font-size: 15px;
			font-weight: 700;
		}
		.about-us-content .fc-trust-badge__copy span {
			color: #6D28D9;
			font-size: 13px;
			font-weight: 500;
		}
		.about-us-content .fc-trust-badge > p {
			margin: 0;
			font-size: 13px;
			line-height: 1.4;
			color: #4c1d95;
			opacity: 0.9;
		}
		@media (max-width: 767px) {
			.about-us-content .fc-trust-badge {
				max-width: 100%;
			}
		}
		/* Keep History / Mission / Vision tabs same height when switching */
		.about-us-content .tab-content {
			min-height: 250px !important;
		}
		.about-us-content .tab-pane .text p {
			min-height: 96px !important;
		}
		.about-us-content .tab-pane .benefits ul {
			min-height: 110px !important;
		}
		@media (max-width: 767px) {
			.about-us-content .tab-content {
				min-height: 280px !important;
			}
			.about-us-content .tab-pane .text p {
				min-height: 110px !important;
			}
		}
		/* Feature cards — override theme --light-color (near-white) on this section */
		.fc-features-section {
			padding: 48px 0 56px !important;
			background: #FFFFFF !important;
			border-top: 1px solid #EDE9FE !important;
			border-bottom: 1px solid #EDE9FE !important;
		}
		.fc-features-section .section-top-2 {
			align-items: flex-end;
			gap: 20px;
			margin-bottom: 28px !important;
		}
		.fc-features-section .section-top-2 .left .common-subtitle span {
			color: #6D28D9 !important;
			font-weight: 700 !important;
		}
		.fc-features-section .section-top-2 .left .common-title h2 {
			color: #15161C !important;
			font-weight: 700 !important;
		}
		.fc-features-section .section-top-2 .right p {
			color: #374151 !important;
			font-size: 17px !important;
			line-height: 1.6 !important;
			opacity: 1 !important;
		}
		.fc-feature-card {
			height: 100%;
			padding: 28px 24px !important;
			border-radius: 16px !important;
			background: #FFFFFF !important;
			border: 1px solid #D8D0F0 !important;
			box-shadow: 0 10px 28px rgba(21, 22, 28, 0.08) !important;
		}
		.fc-feature-card__head {
			display: flex;
			align-items: center;
			gap: 12px;
			margin-bottom: 16px !important;
		}
		.fc-feature-card__head i {
			width: 46px !important;
			height: 46px !important;
			border-radius: 50% !important;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
			color: #FFFFFF !important;
			border: none !important;
			background: #6B2BC9 !important;
			flex-shrink: 0;
			font-size: 18px !important;
		}
		.fc-feature-card__head h3 {
			margin: 0 !important;
			font-size: 20px !important;
			line-height: 1.3 !important;
			color: #15161C !important;
			font-weight: 700 !important;
		}
		.fc-feature-card ul {
			margin: 0 !important;
			padding-left: 0 !important;
			list-style: none !important;
		}
		.fc-feature-card ul li {
			position: relative;
			padding-left: 22px !important;
			color: #1F2937 !important;
			font-size: 16px !important;
			line-height: 1.55 !important;
			margin-bottom: 10px !important;
			font-weight: 500 !important;
			opacity: 1 !important;
		}
		.fc-feature-card ul li::before {
			content: "";
			position: absolute;
			left: 0;
			top: 0.55em;
			width: 8px;
			height: 8px;
			border-radius: 50%;
			background: #6B2BC9;
		}
		.fc-feature-card ul li:last-child {
			margin-bottom: 0 !important;
		}
		@media (max-width: 767px) {
			.fc-features-section {
				padding: 32px 0 40px !important;
			}
			.fc-feature-card {
				padding: 20px 16px !important;
			}
			.fc-feature-card__head h3 {
				font-size: 18px !important;
			}
			.fc-feature-card ul li {
				font-size: 15px !important;
			}
		}
		#fc-feature-pos,
		#fc-feature-stock,
		#fc-features-section {
			scroll-margin-top: 110px;
		}
		/* What we do — FaithCode POS banner (1920×879) */
		.fc-what-we-do-pos {
			background-size: cover !important;
			background-position: center center !important;
			position: relative;
			isolation: isolate;
		}
		.fc-what-we-do-pos::before {
			content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(
				115deg,
				rgba(18, 8, 31, 0.88) 0%,
				rgba(45, 20, 75, 0.72) 42%,
				rgba(18, 8, 31, 0.85) 100%
			);
			z-index: 0;
		}
		.fc-what-we-do-pos > .container {
			position: relative;
			z-index: 1;
		}
		/* Keep original brush strokes visible above the banner overlay */
		.fc-what-we-do-pos .shape-10,
		.fc-what-we-do-pos .shape-11 {
			z-index: 2 !important;
			pointer-events: none;
		}
		.fc-what-we-do-pos .shape-10 img,
		.fc-what-we-do-pos .shape-11 img {
			opacity: 0.85;
		}
		.fc-what-we-do-pos .section-top-2 .left .common-subtitle span {
			color: #C4B5FD !important;
			font-weight: 700 !important;
		}
		.fc-what-we-do-pos .section-top-2 .left .common-title h2 {
			color: #FFFFFF !important;
			font-weight: 700 !important;
			line-height: 1.25 !important;
		}
		.fc-what-we-do-pos .section-top-2 .right p {
			color: rgba(255, 255, 255, 0.88) !important;
			font-size: 17px !important;
			line-height: 1.65 !important;
		}
		.fc-what-we-do-pos .section-top-2 .right .service-btn {
			color: #E9D5FF !important;
			font-weight: 700 !important;
		}
		.fc-what-we-do-pos .section-top-2 .right .service-btn .icon-wrap {
			color: #E9D5FF !important;
		}
		.fc-what-we-do-card {
			height: 100%;
		}
		/* Full card artwork — fit the whole image, no crop or hover zoom */
		.fc-what-we-do-card .thumb > a {
			background: #ffffff;
			display: flex;
			align-items: center;
			justify-content: center;
		}
		.fc-what-we-do-card .thumb > a:before {
			background: linear-gradient(180deg, rgba(18, 8, 31, 0) 68%, rgba(18, 8, 31, 0.28) 100%) !important;
		}
		.fc-what-we-do-card .thumb > a img,
		.fc-what-we-do-card.project-card:hover .thumb a img,
		.fc-what-we-do-card.project-card.active .thumb a img {
			width: 100% !important;
			height: 449px;
			object-fit: contain !important;
			object-position: center center !important;
			transform: none !important;
		}
		@media (max-width: 767px) {
			.fc-what-we-do-card .thumb > a img,
			.fc-what-we-do-card.project-card:hover .thumb a img,
			.fc-what-we-do-card.project-card.active .thumb a img {
				height: 320px;
			}
		}
		/* Same purple Explore More button — hover stays purple, not white */
		.fc-what-we-do-card .details-btn .e-primary-btn.is-hover-white:before,
		.fc-what-we-do-card .details-btn .e-primary-btn:before {
			background: var(--theme-color-3) !important;
		}
		.fc-what-we-do-card .details-btn .e-primary-btn:hover {
			color: var(--white-color) !important;
		}
		.fc-what-we-do-card .details-btn .e-primary-btn:hover .icon-wrap {
			background: var(--white-color) !important;
			color: var(--theme-color-3) !important;
		}
		.fc-what-we-do-card {
			border-radius: 18px;
			background: #ffffff;
			box-shadow: 0 16px 36px rgba(49, 16, 90, 0.16);
			transition: transform 0.35s ease, box-shadow 0.35s ease;
		}
		.fc-what-we-do-card:hover {
			transform: translateY(-6px);
			box-shadow: 0 24px 48px rgba(49, 16, 90, 0.26);
		}
		.fc-what-we-do-card .thumb,
		.fc-what-we-do-card .thumb > a {
			border-radius: 18px;
		}
		.fc-what-we-do-card .thumb .number a {
			background: #5B21B6 !important;
			color: #ffffff !important;
			border: none !important;
			box-shadow: 0 8px 18px rgba(91, 33, 182, 0.28) !important;
			font-weight: 700;
		}
		.fc-what-we-do-card .thumb .content {
			left: 14px !important;
			bottom: 14px !important;
			width: calc(100% - 28px) !important;
			transform: none !important;
			padding: 16px 18px !important;
			background: rgba(255, 255, 255, 0.38) !important;
			border: 1px solid rgba(255, 255, 255, 0.55) !important;
			box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65), 0 12px 28px rgba(18, 8, 31, 0.12);
			border-radius: 14px !important;
			backdrop-filter: blur(16px) !important;
			-webkit-backdrop-filter: blur(16px) !important;
		}
		.fc-what-we-do-card.project-card:hover .thumb .content,
		.fc-what-we-do-card.project-card.active .thumb .content,
		.fc-what-we-do-card:focus-within .thumb .content {
			padding-bottom: 16px !important;
			background: rgba(255, 255, 255, 0.14) !important;
			border: 1px solid rgba(255, 255, 255, 0.32) !important;
			box-shadow: inset 0 4px 11px rgba(255, 255, 255, 0.28), inset -1px -4px 23px rgba(18, 8, 31, 0.22) !important;
			backdrop-filter: blur(16px) !important;
			-webkit-backdrop-filter: blur(16px) !important;
		}
		.fc-what-we-do-card:hover .thumb > a:before,
		.fc-what-we-do-card:focus-within .thumb > a:before {
			background: linear-gradient(180deg, rgba(18, 8, 31, 0) 30%, rgba(18, 8, 31, 0.5) 68%, rgba(18, 8, 31, 0.78) 100%) !important;
		}
		.fc-what-we-do-card .content h5 {
			color: #3B0764 !important;
			font-weight: 800 !important;
			font-size: 20px !important;
			line-height: 1.3 !important;
			margin-bottom: 0 !important;
		}
		.fc-what-we-do-card:hover .content h5,
		.fc-what-we-do-card:focus-within .content h5,
		.fc-what-we-do-card.project-card:hover .thumb .content h5 {
			color: #ffffff !important;
		}
		.fc-what-we-do-card .content p {
			color: #4B5563 !important;
			opacity: 0;
			max-height: 0;
			margin: 0 !important;
			overflow: hidden;
			transition: opacity 0.3s ease, max-height 0.35s ease, margin 0.3s ease;
		}
		.fc-what-we-do-card .thumb .content .details-btn {
			position: static !important;
			bottom: auto !important;
			opacity: 0;
			max-height: 0;
			overflow: hidden;
			margin-top: 0;
			pointer-events: none;
			transition: opacity 0.3s ease, max-height 0.35s ease, margin 0.3s ease;
		}
		.fc-what-we-do-card:hover .content p,
		.fc-what-we-do-card:focus-within .content p {
			opacity: 1;
			max-height: 160px;
			margin-top: 10px !important;
			color: rgba(255, 255, 255, 0.94) !important;
		}
		.fc-what-we-do-card:hover .thumb .content .details-btn,
		.fc-what-we-do-card:focus-within .thumb .content .details-btn,
		.fc-what-we-do-card.project-card:hover .thumb .content .details-btn {
			opacity: 1;
			max-height: 80px;
			margin-top: 14px;
			bottom: auto !important;
			pointer-events: auto;
		}
		.fc-what-we-do-card .details-btn .e-primary-btn {
			pointer-events: auto;
			z-index: 5;
		}
		@media (hover: none) {
			.fc-what-we-do-card .content p {
				opacity: 1;
				max-height: 160px;
				margin-top: 10px !important;
			}
			.fc-what-we-do-card .thumb .content .details-btn {
				opacity: 1;
				max-height: 80px;
				margin-top: 14px;
				pointer-events: auto;
			}
		}
		/* Why Us — pastel POS as section background (713×722 area) */
		.fc-why-us-section {
			background-size: cover !important;
			background-position: center right !important;
			background-repeat: no-repeat !important;
			position: relative;
		}
		/* Soft wash so copy stays readable; brush stroke from previous section stays visible */
		.fc-why-us-section::before {
			content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(
				90deg,
				rgba(255, 255, 255, 0.72) 0%,
				rgba(248, 246, 252, 0.55) 42%,
				rgba(255, 255, 255, 0.35) 100%
			);
			pointer-events: none;
			z-index: 0;
		}
		.fc-why-us-section > .container {
			position: relative;
			z-index: 1;
		}
		.fc-why-us-section .why-us-content .common-subtitle span {
			color: #6D28D9 !important;
			font-weight: 700 !important;
		}
		.fc-why-us-section .why-us-content .common-title h2 {
			color: #3B0764 !important;
			font-weight: 800 !important;
			line-height: 1.25 !important;
		}
		.fc-why-us-section .why-us-content .text p {
			color: #4B5563 !important;
			font-size: 17px !important;
			line-height: 1.65 !important;
		}
		.fc-why-us-section .why-us-content .service p {
			color: #1F2937 !important;
			font-weight: 600 !important;
		}
		.fc-why-us-section .annual-donation .annual-text p {
			color: #6B7280 !important;
		}
		.fc-why-us-section .annual-donation .annual-text h5 {
			color: #4C1D95 !important;
			font-weight: 800 !important;
		}
		/* Second Why Us copy — always visible + space before Completed Project */
		.fc-why-us-section--copy {
			opacity: 1 !important;
			visibility: visible !important;
			display: block !important;
			position: relative;
			z-index: 2;
			padding-bottom: 120px !important;
			border-top: 1px solid rgba(109, 40, 217, 0.12);
			background-color: #F3EEFF;
			background-size: cover !important;
			background-position: top right !important;
			background-repeat: no-repeat !important;
		}
		.fc-why-us-section--copy::before {
			background: linear-gradient(
				90deg,
				rgba(255, 255, 255, 0.88) 0%,
				rgba(250, 248, 255, 0.72) 48%,
				rgba(255, 255, 255, 0.42) 100%
			);
		}
		.fc-why-us-section--copy .thumb,
		.fc-why-us-section--copy .why-us-content {
			opacity: 1 !important;
			visibility: visible !important;
			transform: none !important;
		}
		/* Hardware compatibility — same banner + overlay color as FaithCode Platform */
		.fc-hardware-compat .completed-project-top {
			background-color: #12081F !important;
			background-size: cover !important;
			background-position: center center !important;
			background-repeat: no-repeat !important;
			isolation: isolate;
		}
		.fc-hardware-compat .completed-project-top::before {
			content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(
				115deg,
				rgba(18, 8, 31, 0.88) 0%,
				rgba(45, 20, 75, 0.72) 42%,
				rgba(18, 8, 31, 0.85) 100%
			);
			z-index: 0;
			pointer-events: none;
		}
		.fc-hardware-compat .completed-project-top > .container {
			position: relative;
			z-index: 1;
		}
		.fc-hardware-compat .completed-project-top .shape-8,
		.fc-hardware-compat .completed-project-top .shape-9 {
			z-index: 2;
		}
		/* Match FaithCode Platform header: title left, description + link right */
		.fc-hardware-compat .section-top-2 .left .common-subtitle span {
			color: #C4B5FD !important;
			font-weight: 700 !important;
		}
		.fc-hardware-compat .section-top-2 .left .common-title h2 {
			color: #FFFFFF !important;
			font-weight: 700 !important;
			line-height: 1.25 !important;
		}
		.fc-hardware-compat .section-top-2 .right p {
			color: rgba(255, 255, 255, 0.88) !important;
			font-size: 17px !important;
			line-height: 1.65 !important;
		}
		.fc-hardware-compat .section-top-2 .right .service-btn {
			color: #E9D5FF !important;
			font-weight: 700 !important;
		}
		.fc-hardware-compat .section-top-2 .right .service-btn .icon-wrap {
			color: #E9D5FF !important;
		}
		/* Hardware carousel buttons — same purple as FaithCode Platform cards */
		.fc-hardware-compat .details-btn .e-primary-btn:before,
		.fc-hardware-compat .details-btn .e-primary-btn.is-hover-white:before {
			background: var(--theme-color-3) !important;
		}
		.fc-hardware-compat .details-btn .e-primary-btn {
			color: var(--theme-color-3) !important;
		}
		.fc-hardware-compat .details-btn .e-primary-btn:hover {
			color: var(--white-color) !important;
		}
		.fc-hardware-compat .details-btn .e-primary-btn:hover .icon-wrap {
			background: var(--white-color) !important;
			color: var(--theme-color-3) !important;
		}
		.fc-hardware-compat .completed-project-slider-active .project-card .thumb > a {
			background: #ffffff;
		}
		.fc-hardware-compat .completed-project-slider-active .project-card .thumb img,
		.fc-hardware-compat .completed-project-slider-active .swiper-slide-active .project-card .thumb a img {
			object-fit: contain !important;
			object-position: center center !important;
			transform: none !important;
		}
		/* Carousel section — wallpaper covers the whole block */
		.fc-camping-pos {
			background-color: #2E1065 !important;
			background-size: cover !important;
			background-position: center center !important;
			background-repeat: no-repeat !important;
			position: relative;
			isolation: isolate;
		}
		.fc-camping-pos::before {
			content: none;
		}
		.fc-camping-pos > .container {
			position: relative;
			z-index: 1;
		}
		.fc-camping-pos .common-subtitle span {
			color: #E9D5FF !important;
			font-weight: 700 !important;
		}
		.fc-camping-pos .common-title h2 {
			color: #FFFFFF !important;
			font-weight: 800 !important;
		}
		.fc-camping-pos .camping-card .thumb > a {
			background: #f6f3fb;
		}
		.fc-camping-pos .camping-slider-active .swiper-wrapper {
			align-items: stretch;
		}
		.fc-camping-pos .camping-slider-active .swiper-slide {
			height: auto;
			display: flex;
		}
		.fc-camping-pos .camping-card {
			display: flex;
			flex-direction: column;
			width: 100%;
			height: 100%;
		}
		.fc-camping-pos .camping-card .content {
			display: flex;
			flex-direction: column;
			flex: 1 1 auto;
		}
		.fc-camping-pos .camping-card .content-top {
			flex: 1 1 auto;
		}
		.fc-camping-pos .camping-card .title h3 {
			min-height: 72px;
		}
		.fc-camping-pos .camping-card .donation-wrap {
			margin-top: auto;
		}
		.fc-camping-pos .fc-plan-interest-progress .progress-bar {
			width: 0;
			transition: width 0.45s ease;
		}
		.fc-camping-pos .camping-card .thumb > a img,
		.fc-camping-pos .camping-card.active .thumb a img,
		.fc-camping-pos .camping-card:hover .thumb a img,
		.fc-camping-pos .swiper-slide-active .camping-card .thumb a img {
			width: 100%;
			height: auto;
			aspect-ratio: 1024 / 742;
			object-fit: contain;
			object-position: center center;
			transform: none;
		}
		.fc-camping-pos .fc-camping-lead {
			max-width: 640px;
			margin: 16px auto 0;
			color: rgba(255, 255, 255, 0.88);
			font-size: 17px;
			line-height: 1.6;
		}
		.fc-camping-pos .camping-card .d-bottom button.d-btn {
			border: 0;
			cursor: pointer;
		}
		.fc-plan-detail .fc-plan-detail__dialog {
			width: min(720px, calc(100vw - 1.5rem));
			max-width: 720px;
			margin: 1rem auto;
		}
		.fc-plan-detail .modal-content {
			border: 0;
			border-radius: 20px;
			overflow: hidden;
			background: #fff;
			max-height: min(86vh, 820px);
			min-height: 0;
			display: flex;
			flex-direction: column;
			box-shadow: 0 28px 80px rgba(46, 16, 101, 0.28);
		}
		.fc-plan-detail__header {
			position: relative;
			flex: none;
			height: 168px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.45), transparent 55%),
				linear-gradient(135deg, #2E1065 0%, #5B21B6 55%, #4C1D95 100%);
		}
		.fc-plan-detail__header img {
			display: block;
			width: 100%;
			height: 168px;
			object-fit: cover;
			object-position: center center;
		}
		.fc-plan-detail__header-shade {
			position: absolute;
			inset: 0;
			background: linear-gradient(180deg, rgba(24, 8, 48, 0.15) 0%, rgba(24, 8, 48, 0.55) 100%);
			pointer-events: none;
		}
		.fc-plan-detail__badge {
			position: absolute;
			left: 16px;
			bottom: 14px;
			z-index: 2;
			display: inline-flex;
			align-items: center;
			padding: 6px 12px;
			border-radius: 999px;
			background: rgba(255, 255, 255, 0.16);
			border: 1px solid rgba(255, 255, 255, 0.28);
			backdrop-filter: blur(10px);
			color: #fff;
			font-size: 11px;
			font-weight: 800;
			letter-spacing: 0.06em;
			text-transform: uppercase;
		}
		.fc-plan-detail__close {
			position: absolute;
			top: 12px;
			right: 12px;
			z-index: 3;
			width: 36px;
			height: 36px;
			border: 0;
			border-radius: 50%;
			background: rgba(255, 255, 255, 0.95);
			color: #3B0764;
			font-size: 22px;
			line-height: 1;
			box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18);
		}
		.fc-plan-detail__body {
			padding: 18px 20px 16px;
			overflow-x: hidden;
			overflow-y: auto;
			flex: 1 1 auto;
			min-height: 0;
			background:
				radial-gradient(80% 50% at 0% 0%, rgba(124, 58, 237, 0.06), transparent 55%),
				#fff;
		}
		.fc-plan-detail__intro {
			margin-bottom: 14px;
		}
		.fc-plan-detail__body h3,
		.fc-plan-detail__intro h3 {
			margin: 0 0 6px;
			color: #2E1065;
			font-weight: 800;
			font-size: 1.35rem;
			line-height: 1.25;
		}
		.fc-plan-detail__brief {
			margin: 0 0 6px;
			color: #5B21B6;
			font-weight: 700;
			font-size: 0.95rem;
			line-height: 1.45;
		}
		.fc-plan-detail__desc {
			margin: 0;
			color: #4B5563;
			font-size: 0.9rem;
			line-height: 1.5;
		}
		.fc-plan-detail__section {
			margin: 0 0 14px;
		}
		.fc-plan-detail__section-head {
			display: flex;
			align-items: center;
			gap: 8px;
			margin: 0 0 8px;
		}
		.fc-plan-detail__section-icon {
			width: 28px;
			height: 28px;
			border-radius: 9px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: #EDE9FE;
			color: #6D28D9;
			font-size: 12px;
			flex: none;
		}
		.fc-plan-detail__section-head h4,
		.fc-plan-detail__body h4 {
			margin: 0;
			color: #3B0764;
			font-size: 13px;
			font-weight: 800;
			letter-spacing: 0.02em;
			text-transform: uppercase;
		}
		.fc-plan-detail__prices,
		.fc-plan-detail__limits {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 8px;
			margin: 0;
			padding: 0;
			list-style: none;
		}
		.fc-plan-detail__limits {
			grid-template-columns: repeat(auto-fit, minmax(108px, 1fr));
		}
		.fc-plan-detail__prices li,
		.fc-plan-detail__limits li,
		.fc-plan-detail__chip {
			background: linear-gradient(180deg, #F8F5FF 0%, #F3EEFF 100%);
			border: 1px solid #E9E0FF;
			border-radius: 12px;
			padding: 10px 12px;
			color: #2E1065;
			font-weight: 800;
			min-height: 64px;
			display: flex;
			flex-direction: column;
			justify-content: center;
			gap: 2px;
		}
		.fc-plan-detail__prices span,
		.fc-plan-detail__limits span,
		.fc-plan-detail__chip-label {
			display: block;
			color: #7C3AED;
			font-size: 11px;
			font-weight: 700;
			letter-spacing: 0.04em;
			text-transform: uppercase;
		}
		.fc-plan-detail__chip-value {
			font-size: 1.05rem;
			font-weight: 800;
			color: #2E1065;
			line-height: 1.2;
		}
		.fc-plan-detail__features {
			display: flex;
			flex-direction: column;
			gap: 10px;
		}
		.fc-plan-detail__groups {
			border: 1px solid #EDE9FE;
			border-radius: 14px;
			background: #FCFBFF;
			overflow: hidden;
		}
		.fc-plan-detail__group-title {
			margin: 0;
			width: 100%;
			border: 0;
			background: #F5F3FF;
			color: #3B0764;
			font-size: 13px;
			font-weight: 800;
			text-align: left;
			padding: 11px 14px;
			text-transform: none;
			letter-spacing: 0;
		}
		.fc-plan-detail__groups--static .fc-plan-detail__group-panel {
			display: block;
			padding: 0 14px 12px;
		}
		.fc-plan-detail__group-intro {
			margin: 0 0 8px;
			color: #6B7280;
			font-size: 12.5px;
			line-height: 1.4;
		}
		.fc-plan-detail__groups ul {
			margin: 0;
			padding: 0;
			list-style: none;
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 6px 12px;
		}
		.fc-plan-detail__groups li {
			margin: 0;
			color: #4B5563;
			font-size: 12.5px;
			line-height: 1.35;
			padding-left: 14px;
			position: relative;
		}
		.fc-plan-detail__groups li::before {
			content: "";
			position: absolute;
			left: 0;
			top: 0.45em;
			width: 6px;
			height: 6px;
			border-radius: 50%;
			background: #8B5CF6;
		}
		.fc-plan-detail__groups li strong {
			color: #2E1065;
			font-weight: 700;
		}
		.fc-plan-detail__footer {
			flex: none;
			display: flex;
			justify-content: center;
			align-items: center;
			padding: 12px 20px 18px;
			border-top: 1px solid #EDE9FE;
			background: linear-gradient(180deg, #FAFAFF 0%, #FFFFFF 100%);
		}
		.fc-plan-detail__footer .fc-plan-detail__grab {
			width: auto;
			max-width: 100%;
			display: inline-flex;
			justify-content: center;
			text-decoration: none !important;
			color: var(--theme-color-3) !important;
			font-weight: 700;
			min-height: 56px;
			box-shadow: 0 10px 28px rgba(109, 40, 217, 0.22);
			transition: box-shadow 0.35s ease, transform 0.25s ease;
		}
		.fc-plan-detail__footer .fc-plan-detail__grab:hover {
			color: var(--white-color) !important;
			transform: translateY(-1px);
			box-shadow: 0 14px 32px rgba(109, 40, 217, 0.32);
		}
		.fc-plan-detail__footer .fc-plan-detail__grab:active {
			transform: translateY(0);
		}
		.fc-plan-detail__footer .fc-plan-detail__grab .icon-wrap {
			animation: fc-plan-detail-grab-icon 2.4s ease-in-out infinite;
		}
		.fc-plan-detail__footer .fc-plan-detail__grab:hover .icon-wrap {
			animation: none;
		}
		@keyframes fc-plan-detail-grab-icon {
			0%, 100% {
				transform: translateX(0);
			}
			50% {
				transform: translateX(3px);
			}
		}
		@media (prefers-reduced-motion: reduce) {
			.fc-plan-detail__footer .fc-plan-detail__grab .icon-wrap {
				animation: none;
			}
			.fc-plan-detail__footer .fc-plan-detail__grab:hover {
				transform: none;
			}
		}
		@media (max-width: 767px) {
			.fc-plan-detail .fc-plan-detail__dialog {
				width: calc(100% - 1rem);
				max-width: calc(100% - 1rem);
			}
			.fc-plan-detail__header,
			.fc-plan-detail__header img {
				height: 140px;
			}
			.fc-plan-detail__prices {
				grid-template-columns: 1fr;
			}
			.fc-plan-detail__groups ul {
				grid-template-columns: 1fr;
			}
			.fc-plan-detail__body {
				padding: 16px 14px 12px;
			}
			.fc-plan-detail__footer {
				padding: 10px 14px 16px;
			}
			.fc-plan-detail__footer .fc-plan-detail__grab {
				min-height: 52px;
			}
		}
		/* Why Us large photo — same 363×429 frame, full image visible */
		.fc-why-us-section .thumb .thumb-1 > img {
			width: 363px !important;
			max-width: 100% !important;
			height: auto !important;
			aspect-ratio: 363 / 429;
			object-fit: contain !important;
			object-position: center center !important;
		}
		/* Why Us middle photo — same 318×394 frame, full image visible */
		.fc-why-us-section .thumb .thumb-2 img {
			width: 318px !important;
			max-width: 100% !important;
			height: auto !important;
			aspect-ratio: 318 / 394;
			object-fit: contain !important;
			object-position: center center !important;
		}
		/* Why Us small photo — same 328×205 frame, full image visible */
		.fc-why-us-section .thumb .thumb-3 .shape-wrapped-thumb > img {
			width: 328px !important;
			max-width: 100% !important;
			height: auto !important;
			aspect-ratio: 328 / 205;
			object-fit: contain !important;
			object-position: center center !important;
		}
		/* Left collage placeholders kept as-is (swap thumb files later) */
		.fc-why-us-section .thumb .s-shape-1,
		.fc-why-us-section .thumb .s-shape-2 {
			pointer-events: none;
		}

		/* Grocery assistance band — photo-first + selection card */
		.fc-donate-band {
			--fc-donate-ink: #f8f7ff;
			--fc-donate-accent: #e9d5ff;
			--fc-donate-panel: rgba(46, 16, 101, 0.84);
			position: relative;
			min-height: 880px;
			padding: 130px 0 140px;
			background-size: cover;
			background-repeat: no-repeat;
			background-position: 38% center;
			overflow: visible;
			z-index: 1;
		}
		.fc-donate-band__veil {
			position: absolute;
			inset: 0;
			z-index: 0;
			pointer-events: none;
			background:
				linear-gradient(90deg, rgba(15, 6, 35, 0.12) 0%, rgba(15, 6, 35, 0.06) 36%, rgba(15, 6, 35, 0.45) 74%, rgba(15, 6, 35, 0.58) 100%),
				radial-gradient(55% 80% at 78% 50%, rgba(76, 29, 149, 0.28), transparent 70%);
		}
		.fc-grocery-bunting {
			position: absolute;
			left: 1%;
			right: auto;
			top: 18px;
			z-index: 4;
			pointer-events: none;
			width: auto;
			max-width: min(74vw, 1280px);
			overflow: visible;
		}
		.fc-grocery-bunting__track {
			position: relative;
			display: flex;
			flex-wrap: nowrap;
			align-items: flex-start;
			justify-content: flex-start;
			width: max-content;
			min-width: 100%;
			gap: 0;
			padding: 22px 18px 0 10px;
		}
		.fc-grocery-bunting__line {
			position: absolute;
			left: 0;
			right: 0;
			top: 10px;
			height: 4px;
			border-radius: 999px;
			background:
				linear-gradient(180deg, #d4b483 0%, #8b6914 45%, #6a5010 100%);
			box-shadow:
				0 1px 0 rgba(255, 230, 180, 0.35) inset,
				0 2px 4px rgba(20, 8, 40, 0.35);
			z-index: 0;
		}
		.fc-grocery-bunting__line::before,
		.fc-grocery-bunting__line::after {
			content: "";
			position: absolute;
			top: 50%;
			width: 10px;
			height: 10px;
			border-radius: 50%;
			background: #7a5a12;
			box-shadow: 0 1px 2px rgba(0,0,0,.25);
			transform: translateY(-50%);
		}
		.fc-grocery-bunting__line::before { left: -2px; }
		.fc-grocery-bunting__line::after { right: -2px; }
		.fc-grocery-hang {
			pointer-events: auto;
			position: relative;
			top: 0;
			left: auto;
			width: clamp(96px, 9.2vw, 124px);
			flex: 0 0 auto;
			margin-right: -10px;
			padding: 14px 0 0;
			border: 0;
			background: transparent;
			cursor: pointer;
			transform-origin: top center;
			animation: fcBuntingSwing 3.8s ease-in-out infinite;
			animation-delay: calc(var(--i) * 0.12s);
			filter: drop-shadow(0 10px 14px rgba(15, 6, 35, 0.45));
			transition: transform .2s ease, filter .2s ease;
			z-index: 1;
		}
		.fc-grocery-hang__string {
			position: absolute;
			top: 0;
			left: 50%;
			width: 2px;
			height: 18px;
			margin-left: -1px;
			background: linear-gradient(180deg, #8b6914, #c4a574);
			border-radius: 2px;
			z-index: 2;
			pointer-events: none;
		}
		.fc-grocery-hang__string::before {
			content: "";
			position: absolute;
			top: -3px;
			left: 50%;
			width: 9px;
			height: 9px;
			margin-left: -4.5px;
			border-radius: 2px;
			background: #6a5010;
			box-shadow: 0 1px 1px rgba(0,0,0,.25);
			transform: rotate(35deg);
		}
		.fc-grocery-hang--large {
			width: clamp(150px, 16vw, 210px);
			z-index: 5;
			margin-right: 0;
			margin-top: -10px;
			padding-top: 18px;
		}
		.fc-grocery-hang--large .fc-grocery-hang__string {
			height: 22px;
		}
		.fc-grocery-hang img {
			display: block;
			width: 100%;
			height: auto;
			max-height: 168px;
			object-fit: contain;
			user-select: none;
			-webkit-user-drag: none;
			transform: scale(1);
			transform-origin: center bottom;
			transition: transform .22s ease;
		}
		.fc-grocery-hang--large img {
			max-height: 240px;
		}
		.fc-grocery-hang__tag {
			display: inline-block;
			margin-top: 2px;
			padding: 2px 8px;
			border-radius: 999px;
			background: rgba(46, 16, 101, 0.88);
			color: #F8F7FF;
			font-family: "Outfit", sans-serif;
			font-size: 0.68rem;
			font-weight: 800;
			letter-spacing: 0.02em;
			transition: transform .22s ease;
		}
		.fc-grocery-hang:hover,
		.fc-grocery-hang:focus-visible {
			animation-play-state: paused;
			filter: drop-shadow(0 16px 20px rgba(15, 6, 35, 0.55));
			outline: none;
			z-index: 6;
		}
		.fc-grocery-hang:hover img,
		.fc-grocery-hang:focus-visible img {
			transform: scale(1.14);
		}
		.fc-grocery-hang:hover .fc-grocery-hang__tag,
		.fc-grocery-hang:focus-visible .fc-grocery-hang__tag {
			transform: translateY(-2px) scale(1.06);
		}
		.fc-grocery-hang.is-selected {
			animation-play-state: paused;
			filter: drop-shadow(0 0 0 2px #D8B4FE) drop-shadow(0 12px 16px rgba(15, 6, 35, 0.5));
		}
		.fc-grocery-hang.is-selected img {
			transform: scale(1.08);
		}
		.fc-grocery-toast {
			position: absolute;
			left: 50%;
			bottom: -8px;
			transform: translateX(-50%);
			padding: 8px 14px;
			border-radius: 999px;
			background: rgba(46, 16, 101, 0.92);
			color: #fff;
			font-family: "Outfit", sans-serif;
			font-size: 0.78rem;
			font-weight: 700;
			white-space: nowrap;
			box-shadow: 0 10px 24px rgba(20, 8, 40, 0.35);
			pointer-events: none;
			z-index: 6;
		}
		@keyframes fcBuntingSwing {
			0%, 100% { transform: rotate(-4deg) translateY(0); }
			50% { transform: rotate(4deg) translateY(4px); }
		}
		.fc-donate-band__container {
			position: relative;
			z-index: 3;
			display: flex;
			justify-content: flex-end;
			align-items: center;
			min-height: 640px;
		}
		.fc-grocery-card {
			position: relative;
			width: min(100%, 430px);
			padding: 30px 28px 24px;
			border-radius: 28px;
			border: 1px solid rgba(255, 255, 255, 0.95);
			background:
				radial-gradient(120% 80% at 0% 0%, rgba(237, 233, 254, 0.9) 0%, transparent 46%),
				radial-gradient(90% 70% at 100% 100%, rgba(221, 214, 254, 0.55) 0%, transparent 50%),
				linear-gradient(180deg, #ffffff 0%, #fbfaff 55%, #f6f2ff 100%);
			backdrop-filter: blur(18px);
			-webkit-backdrop-filter: blur(18px);
			box-shadow:
				0 34px 70px rgba(20, 8, 50, 0.3),
				0 10px 24px rgba(91, 33, 182, 0.1),
				0 1px 0 rgba(255,255,255,1) inset,
				0 0 0 1px rgba(46, 16, 101, 0.05);
			color: #2E1065;
			overflow: hidden;
			transform: translateZ(0);
		}
		.fc-grocery-card__glow {
			position: absolute;
			inset: -40% -30% auto;
			height: 62%;
			background: radial-gradient(circle at 28% 18%, rgba(196,181,253,.55), transparent 60%);
			pointer-events: none;
		}
		.fc-grocery-card__glow--br {
			inset: auto -30% -45% auto;
			width: 70%;
			height: 55%;
			background: radial-gradient(circle at 70% 70%, rgba(167,139,250,.28), transparent 65%);
		}
		.fc-grocery-card__accent {
			position: absolute;
			left: 28px;
			right: 28px;
			top: 0;
			height: 5px;
			border-radius: 0 0 10px 10px;
			background: linear-gradient(90deg, #ddd6fe, #a78bfa 40%, #7c3aed 78%, #c4b5fd);
			box-shadow: 0 6px 16px rgba(124, 58, 237, 0.28);
			pointer-events: none;
		}
		.fc-grocery-card__head {
			position: relative;
			margin: 0 0 4px;
		}
		.fc-donate-band__eyebrow {
			position: relative;
			display: inline-flex;
			align-items: center;
			margin: 0 0 10px;
			padding: 6px 12px;
			border-radius: 999px;
			background: rgba(124, 58, 237, 0.08);
			border: 1px solid rgba(124, 58, 237, 0.12);
			font-family: "Outfit", sans-serif;
			font-size: 0.68rem;
			font-weight: 800;
			letter-spacing: 0.16em;
			text-transform: uppercase;
			color: #6d28d9;
		}
		.fc-grocery-card__store-title {
			position: relative;
			margin: 0 0 8px;
			font-family: "Outfit", sans-serif;
			font-size: clamp(1.05rem, 2.2vw, 1.2rem);
			font-weight: 800;
			letter-spacing: 0.02em;
			line-height: 1.2;
			color: #5b21b6;
		}
		.fc-donate-band__title {
			position: relative;
			margin: 0 0 10px;
			font-family: "Cormorant Garamond", Georgia, serif;
			font-size: clamp(1.9rem, 3.6vw, 2.4rem);
			font-weight: 700;
			line-height: 1.1;
			color: #2E1065;
			text-shadow: none;
			letter-spacing: -0.01em;
		}
		.fc-donate-band__lead {
			position: relative;
			margin: 0 0 18px;
			max-width: 30ch;
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.45;
			color: rgba(46, 16, 101, 0.68);
		}
		.fc-grocery-basket {
			position: relative;
			display: grid;
			grid-template-columns: 72px 1fr;
			gap: 14px;
			align-items: center;
			margin: 0 0 16px;
			padding: 16px 16px 16px 14px;
			border-radius: 20px;
			background:
				radial-gradient(120% 140% at 100% 0%, rgba(196,181,253,.28), transparent 55%),
				linear-gradient(180deg, #faf7ff 0%, #f3edff 100%);
			border: 1px solid rgba(124, 58, 237, 0.14);
			box-shadow: inset 0 1px 0 rgba(255,255,255,0.95);
		}
		.fc-grocery-basket.is-filled {
			border-color: rgba(124, 58, 237, 0.28);
			background:
				radial-gradient(120% 140% at 100% 0%, rgba(167,139,250,.32), transparent 55%),
				linear-gradient(180deg, #f7f2ff 0%, #efe7ff 100%);
		}
		.fc-grocery-basket.is-catch .fc-grocery-basket__icon {
			transform: scale(1.18);
			color: #7c3aed;
		}
		.fc-grocery-basket__visual {
			position: relative;
			width: 72px;
			height: 72px;
			display: grid;
			place-items: center;
			border-radius: 18px;
			background: linear-gradient(160deg, #ede9fe, #ddd6fe);
			border: 1px solid rgba(124, 58, 237, 0.16);
			box-shadow: 0 8px 18px rgba(124, 58, 237, 0.12);
		}
		.fc-grocery-basket__icon {
			font-size: 1.7rem;
			color: #6d28d9;
			transition: transform .28s ease, color .28s ease;
		}
		.fc-grocery-basket__catch {
			position: absolute;
			inset: 0;
			border-radius: 18px;
			pointer-events: none;
		}
		.fc-grocery-basket__count {
			position: absolute;
			top: -6px;
			right: -6px;
			min-width: 22px;
			height: 22px;
			padding: 0 6px;
			border-radius: 999px;
			background: #7c3aed;
			color: #fff;
			font-family: "Outfit", sans-serif;
			font-size: 0.68rem;
			font-weight: 800;
			display: grid;
			place-items: center;
			box-shadow: 0 4px 10px rgba(124, 58, 237, 0.3);
		}
		.fc-grocery-basket__copy {
			min-width: 0;
		}
		.fc-grocery-basket__empty {
			margin: 0;
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			color: rgba(46, 16, 101, 0.58);
			line-height: 1.4;
		}
		.fc-grocery-basket__filled {
			display: grid;
			gap: 2px;
		}
		.fc-grocery-basket__label {
			margin: 0;
			font-family: "Outfit", sans-serif;
			font-size: 0.72rem;
			letter-spacing: .1em;
			text-transform: uppercase;
			font-weight: 800;
			color: rgba(91, 33, 182, 0.72);
		}
		.fc-grocery-basket__amount {
			margin: 0;
			font-family: "Outfit", sans-serif;
			font-size: clamp(2.15rem, 5vw, 2.75rem);
			font-weight: 800;
			line-height: 1;
			letter-spacing: -0.03em;
			color: #2E1065;
			text-shadow: 0 1px 0 rgba(255,255,255,.8);
		}
		.fc-grocery-basket__meta {
			margin: 2px 0 0;
			font-family: "Outfit", sans-serif;
			font-size: 0.78rem;
			font-weight: 600;
			color: rgba(46, 16, 101, 0.55);
		}
		.fc-grocery-flyer {
			position: fixed;
			z-index: 80;
			width: 72px;
			height: 72px;
			pointer-events: none;
			object-fit: contain;
			filter: drop-shadow(0 10px 16px rgba(15,6,35,.45));
			transition: transform .7s cubic-bezier(.22,.7,.2,1), opacity .7s ease;
			will-change: transform, opacity;
		}
		.fc-donate-band__btn {
			display: inline-flex;
			align-items: center;
			justify-content: space-between;
			gap: 14px;
			width: 100%;
			padding: 14px 14px 14px 20px;
			border: 0;
			border-radius: 999px;
			background: linear-gradient(135deg, #6d28d9 0%, #5b21b6 55%, #4c1d95 100%);
			color: #ffffff;
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			font-weight: 700;
			cursor: pointer;
			transition: transform 0.25s ease, box-shadow 0.25s ease, opacity .2s ease;
			box-shadow: 0 14px 28px rgba(91, 33, 182, 0.28);
		}
		.fc-donate-band__btn:disabled {
			opacity: .48;
			cursor: not-allowed;
			transform: none;
			box-shadow: none;
		}
		.fc-donate-band__btn:not(:disabled):hover,
		.fc-donate-band__btn:not(:disabled):focus-visible {
			transform: translateY(-2px);
			box-shadow: 0 18px 32px rgba(91, 33, 182, 0.34);
			outline: none;
		}
		.fc-donate-band__btn-icon {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: 40px;
			height: 40px;
			border-radius: 50%;
			background: rgba(255,255,255,.18);
			color: #ffffff;
			font-size: 1rem;
		}
		.fc-grocery-paymark {
			margin-top: 18px;
			padding: 16px 8px 2px;
			border-top: 1px solid rgba(148, 163, 184, 0.22);
			text-align: center;
		}
		.fc-grocery-paymark__logos {
			display: flex;
			align-items: center;
			justify-content: center;
			flex-wrap: wrap;
			gap: 10px;
			margin: 0 0 14px;
		}
		.fc-grocery-paymark__tile {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 78px;
			height: 48px;
			padding: 8px 12px;
			border-radius: 14px;
			background: #ffffff;
			border: 1px solid rgba(226, 232, 240, 0.95);
			box-shadow:
				0 8px 18px rgba(15, 23, 42, 0.08),
				0 1px 0 rgba(255,255,255,1) inset;
		}
		.fc-grocery-paymark__tile--wide {
			min-width: 112px;
			padding: 6px 10px;
		}
		.fc-grocery-paymark__tile img {
			display: block;
			max-height: 30px;
			width: auto;
			max-width: 100%;
			object-fit: contain;
		}
		.fc-grocery-paymark__secure {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 8px;
			margin: 0 0 8px;
			font-family: "Outfit", sans-serif;
			font-size: 0.8rem;
			font-weight: 700;
			color: #334155;
			letter-spacing: 0.01em;
		}
		.fc-grocery-paymark__shield {
			flex: 0 0 auto;
			color: #475569;
		}
		.fc-donate-band__hint {
			margin: 0 auto;
			max-width: 34ch;
			text-align: center;
			font-family: "Outfit", sans-serif;
			font-size: 0.76rem;
			font-weight: 500;
			letter-spacing: 0.01em;
			color: #64748b;
			line-height: 1.45;
		}
		.fc-donate-band__hint.is-error { color: #b91c1c; font-weight: 600; }
		.fc-donate-band .shape-6,
		.fc-donate-band .shape-7 {
			z-index: 3;
			pointer-events: none;
		}

		/* Grocery PayMongo + thank-you modals */
		.fc-grocery-modal {
			position: fixed;
			inset: 0;
			z-index: 1200;
			display: grid;
			place-items: center;
			padding: 20px;
			opacity: 0;
			visibility: hidden;
			pointer-events: none;
			transition: opacity .25s ease, visibility .25s ease;
		}
		.fc-grocery-modal.is-open {
			opacity: 1;
			visibility: visible;
			pointer-events: auto;
		}
		.fc-grocery-modal__backdrop {
			position: absolute;
			inset: 0;
			background: rgba(15, 6, 35, 0.62);
			backdrop-filter: blur(6px);
			-webkit-backdrop-filter: blur(6px);
		}
		.fc-grocery-modal__dialog {
			position: relative;
			z-index: 1;
			width: min(100%, 440px);
			max-height: min(90vh, 720px);
			overflow: auto;
			padding: 28px 24px 22px;
			border-radius: 22px;
			border: 1px solid rgba(255,255,255,.22);
			background:
				linear-gradient(165deg, rgba(76, 29, 149, 0.96) 0%, rgba(46, 16, 101, 0.98) 55%, rgba(30, 10, 70, 0.99) 100%);
			box-shadow: 0 28px 70px rgba(15, 6, 35, 0.45);
			color: #F8F7FF;
			transform: translateY(12px) scale(.98);
			transition: transform .25s ease;
		}
		.fc-grocery-modal--redirect .fc-grocery-modal__dialog--redirect {
			width: min(100%, 420px);
			padding: 34px 28px 26px;
			text-align: center;
		}
		.fc-grocery-modal__redirect {
			display: grid;
			justify-items: center;
			gap: 0;
		}
		.fc-grocery-modal__spinner {
			width: 42px;
			height: 42px;
			border-radius: 50%;
			border: 3px solid rgba(216,180,254,.35);
			border-top-color: #D8B4FE;
			animation: fcGrocerySpin .75s linear infinite;
			margin: 0 auto 16px;
		}
		.fc-grocery-modal--redirect.is-error .fc-grocery-modal__spinner {
			animation: none;
			border-color: rgba(254,202,202,.45);
			border-top-color: #fecaca;
		}
		@keyframes fcGrocerySpin {
			to { transform: rotate(360deg); }
		}
		.fc-grocery-modal--redirect .fc-grocery-modal__title {
			padding-right: 0;
			font-size: clamp(1.55rem, 3vw, 1.9rem);
		}
		.fc-grocery-modal--redirect .fc-grocery-modal__lead {
			margin-bottom: 8px;
			max-width: 28ch;
		}
		.fc-grocery-modal--redirect .fc-grocery-modal__note {
			margin-top: 8px;
		}
		.fc-grocery-modal--redirect .fc-grocery-modal__ghost {
			margin-top: 8px;
		}
		.fc-grocery-modal.is-open .fc-grocery-modal__dialog {
			transform: translateY(0) scale(1);
		}
		.fc-grocery-modal__close {
			position: absolute;
			top: 12px;
			right: 12px;
			width: 36px;
			height: 36px;
			border: 0;
			border-radius: 50%;
			background: rgba(255,255,255,.12);
			color: #fff;
			font-size: 1.35rem;
			line-height: 1;
			cursor: pointer;
		}
		.fc-grocery-modal__eyebrow {
			margin: 0 0 8px;
			font-family: "Outfit", sans-serif;
			font-size: .7rem;
			font-weight: 700;
			letter-spacing: .16em;
			text-transform: uppercase;
			color: #E9D5FF;
		}
		.fc-grocery-modal__title {
			margin: 0 0 10px;
			padding-right: 28px;
			font-family: "Cormorant Garamond", Georgia, serif;
			font-size: clamp(1.7rem, 3vw, 2.1rem);
			font-weight: 700;
			line-height: 1.15;
			color: #fff;
		}
		.fc-grocery-modal__lead {
			margin: 0 0 18px;
			font-family: "Outfit", sans-serif;
			font-size: .92rem;
			line-height: 1.45;
			color: rgba(248,247,255,.88);
		}
		.fc-grocery-modal__list {
			list-style: none;
			margin: 0 0 12px;
			padding: 12px 14px;
			border-radius: 14px;
			background: rgba(15, 6, 35, 0.28);
			border: 1px solid rgba(216,180,254,.25);
			display: grid;
			gap: 6px;
		}
		.fc-grocery-modal__list li {
			display: flex;
			justify-content: space-between;
			gap: 10px;
			font-family: "Outfit", sans-serif;
			font-size: .86rem;
			color: #fff;
		}
		.fc-grocery-modal__list li span:last-child {
			font-weight: 800;
			color: #E9D5FF;
			white-space: nowrap;
		}
		.fc-grocery-modal__total {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin: 0 0 18px;
			padding: 10px 4px 0;
			border-top: 1px solid rgba(216,180,254,.28);
			font-family: "Outfit", sans-serif;
			font-size: .95rem;
		}
		.fc-grocery-modal__total strong {
			font-size: 1.2rem;
			font-weight: 800;
		}
		.fc-grocery-modal__actions {
			display: grid;
			gap: 10px;
		}
		.fc-grocery-modal__pay {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 10px;
			width: 100%;
			padding: 14px 18px;
			border: 0;
			border-radius: 999px;
			background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 55%, #c4b5fd 100%);
			color: #2e1065;
			font-family: "Outfit", sans-serif;
			font-size: .95rem;
			font-weight: 800;
			cursor: pointer;
			box-shadow: 0 10px 24px rgba(76, 29, 149, 0.28);
		}
		.fc-grocery-modal__pay:disabled {
			opacity: .6;
			cursor: wait;
		}
		.fc-grocery-modal__ghost {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: 100%;
			padding: 10px;
			border: 0;
			border-radius: 999px;
			background: transparent;
			color: rgba(248,247,255,.78);
			font-family: "Outfit", sans-serif;
			font-size: .85rem;
			font-weight: 600;
			cursor: pointer;
		}
		.fc-grocery-modal__note {
			margin: 14px 0 0;
			text-align: center;
			font-family: "Outfit", sans-serif;
			font-size: .74rem;
			color: rgba(248,247,255,.62);
		}
		.fc-grocery-modal__note.is-error { color: #fecaca; }
		.fc-grocery-modal__meta {
			margin: 0 0 16px;
			padding: 12px 14px;
			border-radius: 14px;
			background: rgba(15, 6, 35, 0.28);
			border: 1px solid rgba(216,180,254,.25);
			font-family: "Outfit", sans-serif;
			font-size: .86rem;
			line-height: 1.45;
		}
		.fc-grocery-modal__meta p { margin: 0 0 6px; }
		.fc-grocery-modal__meta p:last-child { margin: 0; }
		.fc-grocery-modal--thanks .fc-grocery-modal__dialog {
			text-align: center;
			width: min(100%, 560px);
			max-height: none;
			overflow: visible;
			padding: 26px 28px 22px;
		}
		.fc-grocery-modal--thanks .fc-grocery-modal__title {
			font-size: clamp(1.45rem, 2.8vw, 1.85rem);
			margin-bottom: 10px;
			padding-right: 28px;
		}
		.fc-grocery-thanks-copy {
			margin: 0 0 14px;
			font-family: "Outfit", sans-serif;
			font-size: .88rem;
			line-height: 1.45;
			color: rgba(248,247,255,.9);
			text-align: center;
		}
		.fc-grocery-thanks-copy p {
			margin: 0 0 8px;
		}
		.fc-grocery-thanks-copy p:last-child {
			margin-bottom: 0;
		}
		.fc-grocery-thanks-copy__lead {
			font-weight: 700;
			font-size: 1rem;
			color: #fff;
		}
		.fc-grocery-thanks-copy__highlight {
			margin-top: 8px !important;
			font-family: "Cormorant Garamond", Georgia, serif;
			font-size: 1.12rem;
			font-weight: 700;
			color: #F5D0FE;
			line-height: 1.3;
		}
		.fc-grocery-thanks-copy__closing {
			font-weight: 600;
			color: rgba(248,247,255,.95);
		}
		.fc-grocery-modal__meta--receipt {
			text-align: left;
			padding: 14px 16px;
		}
		.fc-grocery-modal__lines {
			list-style: none;
			margin: 0 0 10px;
			padding: 0;
			display: grid;
			grid-template-columns: 1fr 1fr;
			gap: 8px 16px;
		}
		.fc-grocery-modal__lines li {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 10px;
			font-size: .84rem;
			color: #fff;
			line-height: 1.25;
			padding: 6px 0;
			border-bottom: 1px solid rgba(216,180,254,.12);
		}
		.fc-grocery-modal__lines li strong {
			font-weight: 800;
			color: #E9D5FF;
			white-space: nowrap;
		}
		.fc-grocery-modal__meta-foot {
			display: grid;
			gap: 6px;
			padding-top: 8px;
			border-top: 1px solid rgba(216,180,254,.28);
		}
		.fc-grocery-modal__meta-foot p {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			margin: 0;
			font-size: .86rem;
			color: rgba(248,247,255,.85);
		}
		.fc-grocery-modal__meta-foot strong {
			font-weight: 800;
			color: #fff;
		}
		.fc-grocery-modal__heart {
			display: grid;
			place-items: center;
			width: 56px;
			height: 56px;
			margin: 0 auto 10px;
			border-radius: 50%;
			background: rgba(216,180,254,.22);
			color: #F5D0FE;
			font-size: 1.45rem;
			box-shadow: 0 0 0 0 rgba(245, 208, 254, 0.35);
		}
		.fc-grocery-modal__heart--pulse {
			animation: fcThanksPulse 1.4s ease-in-out infinite;
		}
		@keyframes fcThanksPulse {
			0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(245, 208, 254, 0.35); }
			50% { transform: scale(1.08); box-shadow: 0 0 0 14px rgba(245, 208, 254, 0); }
		}
		.fc-grocery-confetti {
			position: fixed;
			inset: 0;
			width: 100%;
			height: 100%;
			pointer-events: none;
			z-index: 1300;
			display: none;
		}
		.fc-grocery-confetti.is-on {
			display: block;
		}

		@media (max-width: 575px) {
			.fc-grocery-modal--thanks .fc-grocery-modal__dialog {
				width: min(100%, 420px);
				padding: 22px 16px 18px;
			}
			.fc-grocery-modal__lines {
				grid-template-columns: 1fr;
				gap: 4px;
			}
		}
		@media (max-width: 991px) {
			.fc-donate-band {
				min-height: 760px;
				padding: 88px 0 96px;
				background-position: 30% center;
			}
			.fc-grocery-bunting {
				left: 1%;
				right: 1%;
				top: 14px;
				max-width: none;
				width: auto;
				overflow-x: auto;
				-webkit-overflow-scrolling: touch;
			}
			.fc-grocery-bunting__track {
				padding: 22px 16px 0 8px;
			}
			.fc-grocery-hang {
				width: clamp(88px, 10vw, 112px);
				margin-right: -8px;
			}
			.fc-grocery-hang--large {
				width: clamp(130px, 16vw, 180px);
			}
			.fc-donate-band__container {
				justify-content: center;
				min-height: 0;
				padding-top: 120px;
			}
			.fc-grocery-card { width: min(100%, 480px); }
		}
		@media (max-width: 767px) {
			.fc-donate-band {
				min-height: 0;
				padding: 44px 0 64px;
				background-position: 22% center;
			}
			.fc-grocery-bunting {
				position: relative;
				left: 0;
				right: 0;
				top: 0;
				width: 100%;
				max-width: 100%;
				overflow-x: auto;
				overflow-y: visible;
				padding: 8px 0 10px;
				margin: 0 0 8px;
				-webkit-overflow-scrolling: touch;
				scrollbar-width: thin;
			}
			.fc-grocery-bunting__track {
				padding: 24px 16px 4px 12px;
				min-width: max-content;
			}
			.fc-grocery-bunting__line {
				left: 0;
				right: 0;
				top: 12px;
				height: 4px;
			}
			.fc-grocery-hang {
				width: 102px;
				margin-right: -8px;
				padding-top: 16px;
				animation: none;
			}
			.fc-grocery-hang__string {
				height: 20px;
			}
			.fc-grocery-hang--large {
				width: 148px;
				margin-top: -6px;
				padding-top: 20px;
			}
			.fc-grocery-hang--large .fc-grocery-hang__string {
				height: 24px;
			}
			.fc-grocery-hang img { max-height: 130px; }
			.fc-grocery-hang--large img { max-height: 178px; }
			.fc-donate-band__container { padding-top: 0; }
			.fc-grocery-card {
				padding: 22px 18px 18px;
				border-radius: 16px;
			}
			.fc-donate-band__title { font-size: 1.65rem; }
			.fc-grocery-basket { grid-template-columns: 68px 1fr; }
			.fc-grocery-toast { bottom: 4px; }
		}
		@media (prefers-reduced-motion: reduce) {
			.fc-grocery-hang { animation: none; }
		}

		/* Testimonial photos — face-forward crop, no video affordance */
		.testimonial-card .thumb img {
			object-fit: cover;
			object-position: center 18%;
		}
		.testimonial-card .thumb .video-play-btn {
			display: none !important;
		}

		/* Partner logos — light purple tiles to emphasize marks */
		.major-partners .partner-1 {
			background: #D8B4FE !important;
			border: 1px solid rgba(46, 16, 101, 0.12);
		}
		.major-partners .partner-1 img {
			width: 100%;
			height: 86px;
			object-fit: contain;
			object-position: center;
			display: block;
		}

		/* Where to Buy — marketplace official stores */
		.fc-where-buy {
			position: relative;
			background-size: cover;
			background-position: center;
			background-repeat: no-repeat;
		}
		.fc-where-buy::before {
			content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(90deg, rgba(255,255,255,.78) 0%, rgba(255,255,255,.52) 46%, rgba(255,255,255,.28) 100%);
			pointer-events: none;
		}
		.fc-where-buy > .container {
			position: relative;
			z-index: 1;
		}
		.fc-where-buy > .shape {
			z-index: 1;
		}
		.fc-where-buy__copy .text p {
			max-width: 34ch;
			color: rgba(46, 16, 101, 0.72);
			line-height: 1.55;
		}
		.fc-where-buy__grid {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 18px;
		}
		.fc-where-buy__signup {
			position: relative;
			z-index: 1;
		}
		.fc-where-buy__signup .row-bottom-thumb .thumb {
			background: transparent;
		}
		.fc-where-buy__signup .row-bottom-thumb .thumb img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: contain;
			background: transparent;
		}
		.fc-where-buy__signup .common-title h2,
		.fc-where-buy__signup > .row > .col-md-6 > p {
			color: #2E1065;
		}
		.fc-where-buy__signup > .row > .col-md-6 > p {
			margin: 0;
			font-family: "Outfit", sans-serif;
			font-size: 1rem;
			color: rgba(46, 16, 101, 0.7);
		}
		.fc-where-card {
			display: flex;
			flex-direction: column;
			height: 100%;
			min-height: 100%;
			padding: 0;
			overflow: hidden;
			border-radius: 22px;
			text-decoration: none !important;
			color: inherit;
			background: #ffffff;
			border: 1px solid rgba(255,255,255,.95);
			box-shadow:
				0 22px 40px rgba(46, 16, 101, 0.12),
				0 1px 0 rgba(255,255,255,1) inset;
			transition: transform .25s ease, box-shadow .25s ease;
		}
		.fc-where-card:hover,
		.fc-where-card:focus-visible {
			transform: translateY(-5px);
			box-shadow:
				0 30px 52px rgba(46, 16, 101, 0.18),
				0 1px 0 rgba(255,255,255,1) inset;
			outline: none;
		}
		.fc-where-card[aria-disabled="true"] {
			cursor: default;
			opacity: .94;
		}
		.fc-where-card[aria-disabled="true"]:hover {
			transform: none;
		}
		.fc-where-card__media {
			position: relative;
			display: block;
			width: 100%;
			aspect-ratio: 16 / 9;
			overflow: hidden;
			background: #0f172a;
		}
		.fc-where-card__media img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center;
			transition: transform .35s ease;
		}
		.fc-where-card:hover .fc-where-card__media img,
		.fc-where-card:focus-visible .fc-where-card__media img {
			transform: scale(1.04);
		}
		.fc-where-card__tag {
			position: absolute;
			top: 12px;
			left: 12px;
			z-index: 1;
			padding: 5px 10px;
			border-radius: 999px;
			background: rgba(255, 255, 255, 0.92);
			border: 1px solid rgba(255,255,255,.95);
			box-shadow: 0 8px 18px rgba(15, 23, 42, 0.16);
			font-family: "Outfit", sans-serif;
			font-size: 0.66rem;
			font-weight: 800;
			letter-spacing: .08em;
			text-transform: uppercase;
			color: #2E1065;
		}
		.fc-where-card__body {
			display: grid;
			gap: 8px;
			flex: 1 1 auto;
			padding: 16px 16px 20px;
			background: linear-gradient(180deg, #ffffff 0%, #fbfaff 100%);
		}
		.fc-where-card__name {
			font-family: "Outfit", sans-serif;
			font-size: 1.12rem;
			font-weight: 800;
			color: #2E1065;
			line-height: 1.2;
		}
		.fc-where-card__blurb {
			font-family: "Outfit", sans-serif;
			font-size: 0.84rem;
			line-height: 1.5;
			color: rgba(46, 16, 101, 0.68);
			min-height: 0;
		}
		@media (max-width: 991px) {
			.fc-where-buy__grid {
				grid-template-columns: 1fr;
				max-width: 420px;
			}
		}
		@media (min-width: 768px) and (max-width: 991px) {
			.fc-where-buy__grid {
				grid-template-columns: repeat(3, minmax(0, 1fr));
				max-width: none;
			}
			.fc-where-card__blurb { font-size: 0.78rem; }
			.fc-where-card__name { font-size: 1rem; }
		}

		/* Shop social icons (Lazada / Shopee) */
		.fc-shop-links__brand {
			display: inline-flex !important;
			align-items: center;
			justify-content: center;
		}
		.fc-shop-links__brand img {
			width: 20px;
			height: 20px;
			object-fit: contain;
			display: block;
		}

		/* Hero vertical social — Facebook, TikTok, Lazada, Shopee */
		.hero-slider-active-1 .hero-slider-social .fc-hero-shop-links a.fc-shop-links__brand img {
			width: 18px !important;
			height: 18px !important;
			object-fit: contain !important;
			display: block;
			/* match purple FA icons on glass circles */
			filter: brightness(0) saturate(100%) invert(18%) sepia(60%) saturate(2500%) hue-rotate(250deg) brightness(90%) contrast(95%);
		}
		.hero-slider-active-1 .hero-slider-social .fc-hero-shop-links a:hover.fc-shop-links__brand img {
			filter: brightness(0) saturate(100%) invert(18%) sepia(60%) saturate(2500%) hue-rotate(250deg) brightness(90%) contrast(95%);
		}

		/* Sidebar panel — logo, contact align, shop icons */
		.off-canvas-sidebar .off-canvas-logo img {
			width: auto !important;
			height: 72px !important;
			max-width: 300px !important;
			object-fit: contain !important;
		}
		/* Sidebar promo image — keep natural ratio, never stretch */
		.off-canvas-sidebar .off-canvas-thumb {
			width: 100%;
			line-height: 0;
			overflow: hidden;
			border-radius: 10px;
		}
		.off-canvas-sidebar .off-canvas-thumb img {
			width: 100% !important;
			height: auto !important;
			max-width: 100% !important;
			object-fit: contain !important;
			object-position: center !important;
			display: block !important;
			aspect-ratio: auto !important;
		}
		.off-canvas-sidebar .fc-sidebar-contact {
			gap: 18px;
		}
		.off-canvas-sidebar .fc-sidebar-contact .off-canvas-contact-item {
			display: flex !important;
			align-items: flex-start !important;
			gap: 14px !important;
			text-decoration: none;
			color: inherit;
		}
		.off-canvas-sidebar .fc-sidebar-contact .off-canvas-contact-item .icon {
			flex: 0 0 48px !important;
			width: 48px !important;
			height: 48px !important;
			min-width: 48px !important;
			margin-top: 2px;
			display: inline-flex !important;
			align-items: center !important;
			justify-content: center !important;
		}
		.off-canvas-sidebar .fc-sidebar-contact .off-canvas-contact-item .text {
			flex: 1 1 auto;
			min-width: 0;
			text-align: left;
		}
		.off-canvas-sidebar .fc-sidebar-contact .off-canvas-contact-item .text h6 {
			margin: 0 0 4px !important;
			line-height: 1.3 !important;
		}
		.off-canvas-sidebar .fc-sidebar-contact .off-canvas-contact-item .text p {
			margin: 0 !important;
			line-height: 1.45 !important;
			word-break: break-word;
		}
		.off-canvas-sidebar .off-canvas-social-links.fc-shop-links a {
			width: 42px;
			height: 42px;
			color: #fff;
		}
		.off-canvas-sidebar .off-canvas-social-links.fc-shop-links a i {
			color: #fff !important;
		}
		.off-canvas-sidebar .off-canvas-social-links.fc-shop-links .fc-shop-links__brand img {
			width: 20px !important;
			height: 20px !important;
			/* black PNGs → white to match FB / TikTok */
			filter: brightness(0) invert(1) !important;
			opacity: 1;
		}

		/* ===== About page (FaithCode) ===== */
		.fc-about-intro {
			background:
				radial-gradient(60% 80% at 10% 0%, rgba(124, 58, 237, 0.07), transparent 55%),
				#ffffff;
		}
		.fc-about-intro__lead {
			font-family: "Outfit", sans-serif;
			font-size: 1.15rem;
			font-weight: 600;
			line-height: 1.55;
			color: #2E1065;
			margin-bottom: 14px;
		}
		.fc-about-intro__text {
			font-family: "Outfit", sans-serif;
			font-size: 1rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.72);
			margin-bottom: 22px;
		}
		.fc-about-intro__checks {
			list-style: none;
			padding: 0;
			margin: 0 0 28px;
			display: grid;
			gap: 12px;
		}
		.fc-about-intro__checks li {
			display: flex;
			align-items: flex-start;
			gap: 12px;
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			color: #2E1065;
		}
		.fc-about-intro__checks i {
			margin-top: 3px;
			color: #6d28d9;
		}
		.fc-about-intro__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 18px;
		}
		.fc-about-intro__link {
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			color: #6d28d9;
			text-decoration: none;
		}
		.fc-about-intro__link:hover { color: #2E1065; }
		.fc-about-intro__media {
			border-radius: 24px;
			overflow: hidden;
			background: #f4f0ff;
			box-shadow: 0 24px 50px rgba(46, 16, 101, 0.14);
		}
		.fc-about-intro__media img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: cover;
			aspect-ratio: 4 / 5;
		}

		.fc-about-stats {
			margin-top: -28px;
			position: relative;
			z-index: 2;
		}
		.fc-about-stats__grid {
			position: relative;
			display: grid;
			grid-template-columns: 1fr auto 1fr auto 1fr;
			align-items: center;
			gap: 8px;
			padding: 28px 26px;
			border-radius: 26px;
			overflow: hidden;
			background:
				radial-gradient(90% 140% at 0% 0%, rgba(233, 213, 255, 0.22), transparent 45%),
				radial-gradient(80% 120% at 100% 100%, rgba(167, 139, 250, 0.25), transparent 50%),
				linear-gradient(135deg, #2E1065 0%, #4c1d95 50%, #6d28d9 100%);
			border: 1px solid rgba(255,255,255,0.12);
			box-shadow:
				0 22px 40px rgba(46, 16, 101, 0.24),
				inset 0 1px 0 rgba(255,255,255,0.14);
		}
		.fc-about-stats__glow {
			position: absolute;
			inset: auto -10% -40% auto;
			width: 280px;
			height: 180px;
			border-radius: 50%;
			background: rgba(216, 180, 254, 0.28);
			filter: blur(30px);
			pointer-events: none;
		}
		.fc-about-stats__item {
			position: relative;
			z-index: 1;
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 14px;
			padding: 8px 10px;
			color: #fff;
			text-align: left;
		}
		.fc-about-stats__icon {
			flex: 0 0 52px;
			width: 52px;
			height: 52px;
			border-radius: 16px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			font-size: 1.15rem;
			color: #fff;
			background: rgba(255,255,255,0.12);
			border: 1px solid rgba(255,255,255,0.22);
			box-shadow: inset 0 1px 0 rgba(255,255,255,0.18);
		}
		.fc-about-stats__copy strong {
			display: block;
			font-family: "Outfit", sans-serif;
			font-size: clamp(1.55rem, 2.3vw, 2.1rem);
			font-weight: 800;
			line-height: 1.1;
			margin-bottom: 4px;
		}
		.fc-about-stats__copy span {
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			opacity: 0.88;
		}
		.fc-about-stats__divider {
			width: 1px;
			height: 54px;
			background: linear-gradient(180deg, transparent, rgba(255,255,255,0.45), transparent);
		}
		@media (max-width: 767px) {
			.fc-about-stats__grid {
				grid-template-columns: 1fr;
				gap: 16px;
				padding: 22px 18px;
			}
			.fc-about-stats__divider { display: none; }
			.fc-about-stats__item {
				justify-content: flex-start;
				padding: 6px 4px;
			}
		}

		.fc-about-values {
			background: #fbfaff;
		}
		.fc-about-value {
			height: 100%;
			padding: 28px 22px;
			border-radius: 20px;
			background: #fff;
			border: 1px solid rgba(109, 40, 217, 0.1);
			box-shadow: 0 14px 30px rgba(46, 16, 101, 0.06);
			transition: transform .25s ease, box-shadow .25s ease;
		}
		.fc-about-value:hover {
			transform: translateY(-4px);
			box-shadow: 0 20px 36px rgba(46, 16, 101, 0.12);
		}
		.fc-about-value__icon {
			width: 52px;
			height: 52px;
			border-radius: 16px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: rgba(109, 40, 217, 0.1);
			color: #6d28d9;
			font-size: 1.2rem;
			margin-bottom: 16px;
		}
		.fc-about-value h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.2rem;
			font-weight: 800;
			color: #2E1065;
			margin-bottom: 10px;
		}
		.fc-about-value p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			line-height: 1.55;
			color: rgba(46, 16, 101, 0.68);
			margin: 0;
		}

		.fc-about-mission__panel {
			border-radius: 28px;
			overflow: hidden;
			background: #fff;
			border: 1px solid rgba(109, 40, 217, 0.1);
			box-shadow: 0 24px 50px rgba(46, 16, 101, 0.1);
		}
		.fc-about-mission__media img {
			width: 100%;
			height: 100%;
			min-height: 320px;
			object-fit: cover;
			display: block;
		}
		.fc-about-mission__copy {
			padding: 42px 40px;
		}
		.fc-about-mission__copy h2 {
			font-family: "Outfit", sans-serif;
			font-size: clamp(1.6rem, 2.4vw, 2.2rem);
			font-weight: 800;
			color: #2E1065;
			margin: 10px 0 16px;
			line-height: 1.2;
		}
		.fc-about-mission__copy p {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.72);
			margin-bottom: 14px;
		}
		@media (max-width: 991px) {
			.fc-about-mission__copy { padding: 28px 22px 32px; }
		}

		.fc-about-contact__grid {
			display: grid;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			gap: 18px;
		}
		.fc-about-contact__item {
			position: relative;
			display: flex;
			align-items: flex-start;
			gap: 16px;
			padding: 26px 22px;
			min-height: 148px;
			border-radius: 22px;
			overflow: hidden;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.18), transparent 46%),
				linear-gradient(180deg, #ffffff 0%, #f7f3ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 16px 34px rgba(46, 16, 101, 0.08);
			text-decoration: none;
			color: inherit;
			transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
		}
		.fc-about-contact__orb {
			position: absolute;
			right: -28px;
			bottom: -34px;
			width: 110px;
			height: 110px;
			border-radius: 50%;
			background: rgba(109, 40, 217, 0.08);
			pointer-events: none;
		}
		a.fc-about-contact__item:hover {
			transform: translateY(-5px);
			border-color: rgba(109, 40, 217, 0.28);
			box-shadow: 0 22px 40px rgba(46, 16, 101, 0.14);
		}
		.fc-about-contact__icon {
			position: relative;
			z-index: 1;
			flex: 0 0 56px;
			width: 56px;
			height: 56px;
			border-radius: 18px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 100%);
			color: #fff;
			font-size: 1.1rem;
			box-shadow: 0 10px 20px rgba(91, 33, 182, 0.28);
		}
		.fc-about-contact__body {
			position: relative;
			z-index: 1;
			flex: 1 1 auto;
			min-width: 0;
			padding-right: 18px;
		}
		.fc-about-contact__label {
			display: inline-block;
			margin-bottom: 6px;
			padding: 3px 9px;
			border-radius: 999px;
			background: rgba(109, 40, 217, 0.1);
			font-family: "Outfit", sans-serif;
			font-size: 0.68rem;
			font-weight: 800;
			letter-spacing: .08em;
			text-transform: uppercase;
			color: #6d28d9;
		}
		.fc-about-contact__item h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.15rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 6px;
		}
		.fc-about-contact__item p {
			font-family: "Outfit", sans-serif;
			font-size: 0.92rem;
			line-height: 1.45;
			color: rgba(46, 16, 101, 0.7);
			margin: 0;
			word-break: break-word;
		}
		.fc-about-contact__go {
			position: absolute;
			top: 18px;
			right: 16px;
			width: 30px;
			height: 30px;
			border-radius: 50%;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: rgba(109, 40, 217, 0.1);
			color: #6d28d9;
			font-size: 0.8rem;
			transition: transform .2s ease, background .2s ease;
		}
		a.fc-about-contact__item:hover .fc-about-contact__go {
			transform: translateX(3px);
			background: rgba(109, 40, 217, 0.16);
		}
		@media (max-width: 991px) {
			.fc-about-contact__grid { grid-template-columns: 1fr; }
		}

		/* ===== Services page ===== */
		.fc-services-page {
			background:
				radial-gradient(48% 55% at 8% 12%, rgba(124, 58, 237, 0.08), transparent 58%),
				radial-gradient(42% 50% at 92% 8%, rgba(167, 139, 250, 0.12), transparent 55%),
				radial-gradient(36% 40% at 70% 90%, rgba(109, 40, 217, 0.05), transparent 60%),
				#ffffff;
		}
		.fc-services-page__lead {
			max-width: 760px;
			margin: 0 auto;
			font-family: "Outfit", sans-serif;
			font-size: 1.05rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.7);
		}
		.fc-service-card {
			position: relative;
			height: 100%;
			padding: 28px 24px 26px;
			border-radius: 22px;
			overflow: hidden;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.18), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 16px 34px rgba(46, 16, 101, 0.07);
			transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
		}
		.fc-service-card:hover {
			transform: translateY(-6px);
			border-color: rgba(109, 40, 217, 0.28);
			box-shadow: 0 24px 44px rgba(46, 16, 101, 0.14);
		}
		.fc-service-card:hover .fc-service-card__icon {
			transform: scale(1.06) rotate(-3deg);
		}
		.fc-service-card__orb {
			position: absolute;
			right: -26px;
			bottom: -30px;
			width: 110px;
			height: 110px;
			border-radius: 50%;
			background: rgba(109, 40, 217, 0.07);
			pointer-events: none;
		}
		.fc-service-card__shape {
			position: absolute;
			left: -18px;
			top: 42%;
			width: 64px;
			height: 64px;
			border-radius: 18px;
			background: rgba(124, 58, 237, 0.05);
			transform: rotate(28deg);
			pointer-events: none;
		}
		.fc-service-card__top {
			display: flex;
			align-items: center;
			justify-content: space-between;
			margin-bottom: 14px;
		}
		.fc-service-card__no {
			font-family: "Outfit", sans-serif;
			font-size: 0.78rem;
			font-weight: 800;
			letter-spacing: .08em;
			color: rgba(109, 40, 217, 0.55);
		}
		.fc-service-card__icon {
			width: 54px;
			height: 54px;
			border-radius: 16px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 100%);
			color: #fff;
			font-size: 1.15rem;
			box-shadow: 0 10px 20px rgba(91, 33, 182, 0.28);
			transition: transform .25s ease;
		}
		.fc-service-card__tag {
			display: inline-block;
			margin-bottom: 10px;
			padding: 4px 10px;
			border-radius: 999px;
			font-family: "Outfit", sans-serif;
			font-size: 0.72rem;
			font-weight: 700;
			letter-spacing: .04em;
			text-transform: uppercase;
			color: #5b21b6;
			background: rgba(124, 58, 237, 0.1);
			border: 1px solid rgba(109, 40, 217, 0.14);
		}
		.fc-service-card h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.22rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 10px;
		}
		.fc-service-card p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			line-height: 1.6;
			color: rgba(46, 16, 101, 0.7);
			margin: 0 0 14px;
		}
		.fc-service-card__points {
			list-style: none;
			margin: 0;
			padding: 14px 0 0;
			border-top: 1px solid rgba(109, 40, 217, 0.1);
			display: grid;
			gap: 8px;
		}
		.fc-service-card__points li {
			display: flex;
			align-items: flex-start;
			gap: 8px;
			font-family: "Outfit", sans-serif;
			font-size: 0.86rem;
			font-weight: 600;
			line-height: 1.35;
			color: #3b1d7a;
		}
		.fc-service-card__points i {
			margin-top: 2px;
			font-size: 0.72rem;
			color: #7c3aed;
		}
		.fc-services-cta {
			margin-top: 42px;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: space-between;
			gap: 18px;
			padding: 26px 28px;
			border-radius: 22px;
			background: linear-gradient(135deg, #2E1065 0%, #5b21b6 55%, #6d28d9 100%);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.2);
		}
		.fc-services-cta__copy h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.35rem;
			font-weight: 800;
			color: #fff;
			margin: 0 0 6px;
		}
		.fc-services-cta__copy p {
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			color: rgba(255,255,255,0.85);
			margin: 0;
		}
		.fc-services-shops {
			background-size: cover;
			background-position: center;
		}
		.fc-services-shops .fc-where-buy__copy .common-title h2,
		.fc-services-shops .fc-where-buy__copy .text p {
			color: #2E1065;
		}
		.fc-services-shops .fc-where-buy__copy .text p {
			opacity: 0.78;
		}

		/* ===== BIR Accreditation page ===== */
		.fc-bir-intro {
			background:
				radial-gradient(46% 55% at 0% 0%, rgba(124, 58, 237, 0.07), transparent 58%),
				radial-gradient(40% 48% at 100% 20%, rgba(167, 139, 250, 0.1), transparent 55%),
				#ffffff;
		}
		.fc-bir-intro__lead {
			font-family: "Outfit", sans-serif;
			font-size: 1.08rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.78);
			margin-bottom: 14px;
		}
		.fc-bir-intro__lead strong { color: #2E1065; font-weight: 800; }
		.fc-bir-intro__text {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.68);
			margin-bottom: 18px;
		}
		.fc-bir-intro__checks {
			list-style: none;
			margin: 0 0 26px;
			padding: 0;
			display: grid;
			gap: 10px;
		}
		.fc-bir-intro__checks li {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			font-weight: 600;
			color: #3b1d7a;
			line-height: 1.45;
		}
		.fc-bir-intro__checks i {
			margin-top: 3px;
			color: #7c3aed;
			font-size: 0.8rem;
		}
		.fc-bir-intro__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 18px;
		}
		.fc-bir-intro__link {
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			color: #5b21b6;
			text-decoration: underline;
			text-underline-offset: 3px;
		}
		.fc-bir-intro__link:hover { color: #2E1065; }
		.fc-bir-intro__media {
			margin: 0;
			border-radius: 24px;
			overflow: hidden;
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 24px 48px rgba(46, 16, 101, 0.14);
			background: #f4f0ff;
		}
		.fc-bir-intro__media img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: cover;
		}
		.fc-bir-intro__caption {
			padding: 12px 18px 14px;
			font-family: "Outfit", sans-serif;
			font-size: 0.84rem;
			font-weight: 700;
			letter-spacing: .02em;
			color: #5b21b6;
			background: linear-gradient(180deg, #f8f5ff 0%, #efe8ff 100%);
			border-top: 1px solid rgba(109, 40, 217, 0.1);
		}
		.fc-bir-lead {
			max-width: 720px;
			margin: 0 auto;
			font-family: "Outfit", sans-serif;
			font-size: 1.02rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.7);
		}
		.fc-bir-lead--left {
			margin: 0;
			max-width: none;
		}
		.fc-bir-pillar-card,
		.fc-bir-feature-card,
		.fc-bir-daily-card {
			height: 100%;
			padding: 28px 24px;
			border-radius: 22px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.16), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 16px 34px rgba(46, 16, 101, 0.07);
			transition: transform .25s ease, box-shadow .25s ease;
		}
		.fc-bir-pillar-card:hover,
		.fc-bir-feature-card:hover,
		.fc-bir-daily-card:hover {
			transform: translateY(-5px);
			box-shadow: 0 22px 42px rgba(46, 16, 101, 0.12);
		}
		.fc-bir-pillar-card__icon,
		.fc-bir-feature-card__icon,
		.fc-bir-daily-card__icon {
			width: 52px;
			height: 52px;
			border-radius: 16px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 100%);
			color: #fff;
			font-size: 1.1rem;
			box-shadow: 0 10px 20px rgba(91, 33, 182, 0.28);
			margin-bottom: 16px;
		}
		.fc-bir-pillar-card h3,
		.fc-bir-feature-card h3,
		.fc-bir-daily-card h3,
		.fc-bir-step__body h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.2rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 10px;
		}
		.fc-bir-pillar-card p,
		.fc-bir-feature-card p,
		.fc-bir-step__body p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.7);
			margin: 0;
		}
		.fc-bir-features {
			background:
				radial-gradient(50% 60% at 90% 0%, rgba(124, 58, 237, 0.06), transparent 55%),
				#faf8ff;
		}
		.fc-bir-how {
			background: #ffffff;
		}
		.fc-bir-steps {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 18px;
		}
		@media (max-width: 767px) {
			.fc-bir-steps { grid-template-columns: 1fr; }
		}
		.fc-bir-step {
			display: flex;
			gap: 16px;
			align-items: flex-start;
			padding: 22px 20px;
			border-radius: 20px;
			border: 1px solid rgba(109, 40, 217, 0.12);
			background: linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			box-shadow: 0 12px 28px rgba(46, 16, 101, 0.06);
		}
		.fc-bir-step__no {
			flex: 0 0 auto;
			font-family: "Outfit", sans-serif;
			font-size: 0.85rem;
			font-weight: 800;
			letter-spacing: .08em;
			color: #7c3aed;
			background: rgba(124, 58, 237, 0.1);
			border: 1px solid rgba(109, 40, 217, 0.14);
			border-radius: 999px;
			padding: 8px 12px;
			line-height: 1;
		}
		.fc-bir-daily-card__head {
			display: flex;
			align-items: center;
			gap: 14px;
			margin-bottom: 14px;
		}
		.fc-bir-daily-card__head .fc-bir-daily-card__icon { margin-bottom: 0; }
		.fc-bir-daily-card__head h3 { margin: 0; }
		.fc-bir-daily-card ul {
			list-style: none;
			margin: 0;
			padding: 0;
			display: grid;
			gap: 10px;
		}
		.fc-bir-daily-card li {
			display: flex;
			align-items: flex-start;
			gap: 8px;
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			font-weight: 600;
			line-height: 1.4;
			color: #3b1d7a;
		}
		.fc-bir-daily-card li i {
			margin-top: 3px;
			color: #7c3aed;
			font-size: 0.72rem;
		}
		.fc-bir-needs {
			background:
				radial-gradient(48% 55% at 10% 0%, rgba(124, 58, 237, 0.07), transparent 55%),
				#faf8ff;
		}
		.fc-bir-needs__grid {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 14px;
		}
		@media (max-width: 575px) {
			.fc-bir-needs__grid { grid-template-columns: 1fr; }
		}
		.fc-bir-need-item {
			padding: 18px 18px 16px;
			border-radius: 18px;
			background: #ffffff;
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 10px 24px rgba(46, 16, 101, 0.05);
			display: grid;
			gap: 6px;
		}
		.fc-bir-need-item strong {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			font-weight: 800;
			color: #2E1065;
		}
		.fc-bir-need-item span {
			font-family: "Outfit", sans-serif;
			font-size: 0.88rem;
			line-height: 1.5;
			color: rgba(46, 16, 101, 0.68);
		}
		.fc-bir-note {
			display: flex;
			gap: 16px;
			align-items: flex-start;
			padding: 22px 24px;
			border-radius: 20px;
			background: rgba(124, 58, 237, 0.06);
			border: 1px solid rgba(109, 40, 217, 0.14);
			margin-bottom: 22px;
		}
		.fc-bir-note__icon {
			flex: 0 0 auto;
			width: 42px;
			height: 42px;
			border-radius: 12px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: #5b21b6;
			color: #fff;
		}
		.fc-bir-note h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.1rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 6px;
		}
		.fc-bir-note p {
			font-family: "Outfit", sans-serif;
			font-size: 0.92rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.72);
			margin: 0;
		}
		.fc-bir-cta {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: space-between;
			gap: 20px;
			padding: 28px 30px;
			border-radius: 22px;
			background: linear-gradient(135deg, #2E1065 0%, #5b21b6 55%, #6d28d9 100%);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.22);
		}
		.fc-bir-cta__copy h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.35rem;
			font-weight: 800;
			color: #fff;
			margin: 0 0 8px;
		}
		.fc-bir-cta__copy p {
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			line-height: 1.6;
			color: rgba(255,255,255,0.88);
			margin: 0;
			max-width: 620px;
		}
		.fc-bir-cta__copy a {
			color: #fff;
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}
		.fc-bir-cta__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 12px;
		}
		.fc-bir-cta__ghost {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			padding: 14px 20px;
			border-radius: 999px;
			border: 1px solid rgba(255,255,255,0.45);
			color: #fff;
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			background: rgba(255,255,255,0.08);
			transition: background .2s ease, border-color .2s ease;
		}
		.fc-bir-cta__ghost:hover {
			background: rgba(255,255,255,0.16);
			border-color: rgba(255,255,255,0.7);
			color: #fff;
		}
		.fc-bir-breadcrumb .breadcrumb-thumb img {
			object-position: center 40%;
		}

		/* ===== Contact / Support page ===== */
		.fc-contact-intro {
			background:
				radial-gradient(46% 55% at 0% 0%, rgba(124, 58, 237, 0.07), transparent 58%),
				radial-gradient(40% 48% at 100% 18%, rgba(167, 139, 250, 0.1), transparent 55%),
				#ffffff;
		}
		.fc-contact-intro__lead {
			font-family: "Outfit", sans-serif;
			font-size: 1.08rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.78);
			margin-bottom: 14px;
		}
		.fc-contact-intro__lead strong { color: #2E1065; font-weight: 800; }
		.fc-contact-intro__text {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.68);
			margin-bottom: 18px;
		}
		.fc-contact-intro__checks {
			list-style: none;
			margin: 0 0 26px;
			padding: 0;
			display: grid;
			gap: 10px;
		}
		.fc-contact-intro__checks li {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			font-weight: 600;
			color: #3b1d7a;
			line-height: 1.45;
		}
		.fc-contact-intro__checks i {
			margin-top: 3px;
			color: #7c3aed;
			font-size: 0.8rem;
		}
		.fc-contact-intro__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 18px;
		}
		.fc-contact-intro__link {
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			color: #5b21b6;
			text-decoration: underline;
			text-underline-offset: 3px;
		}
		.fc-contact-intro__link:hover { color: #2E1065; }
		.fc-contact-intro__media {
			margin: 0;
			border-radius: 24px;
			overflow: hidden;
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 24px 48px rgba(46, 16, 101, 0.14);
			background: #f4f0ff;
		}
		.fc-contact-intro__media img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: cover;
		}
		.fc-contact-intro__caption {
			padding: 12px 18px 14px;
			font-family: "Outfit", sans-serif;
			font-size: 0.84rem;
			font-weight: 700;
			letter-spacing: .02em;
			color: #5b21b6;
			background: linear-gradient(180deg, #f8f5ff 0%, #efe8ff 100%);
			border-top: 1px solid rgba(109, 40, 217, 0.1);
		}
		.fc-contact-lead {
			max-width: 720px;
			margin: 0 auto;
			font-family: "Outfit", sans-serif;
			font-size: 1.02rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.7);
		}
		.fc-contact-lead--left {
			margin: 0;
			max-width: none;
		}
		.fc-contact-card,
		.fc-contact-feature {
			height: 100%;
			padding: 28px 24px;
			border-radius: 22px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.16), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 16px 34px rgba(46, 16, 101, 0.07);
			transition: transform .25s ease, box-shadow .25s ease;
		}
		.fc-contact-card:hover,
		.fc-contact-feature:hover {
			transform: translateY(-5px);
			box-shadow: 0 22px 42px rgba(46, 16, 101, 0.12);
		}
		.fc-contact-card__icon,
		.fc-contact-feature__icon {
			width: 52px;
			height: 52px;
			border-radius: 16px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 100%);
			color: #fff;
			font-size: 1.1rem;
			box-shadow: 0 10px 20px rgba(91, 33, 182, 0.28);
			margin-bottom: 16px;
		}
		.fc-contact-card h3,
		.fc-contact-feature h3,
		.fc-contact-step__body h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.18rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 10px;
		}
		.fc-contact-card p,
		.fc-contact-feature p,
		.fc-contact-step__body p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.7);
			margin: 0;
		}
		.fc-contact-steps-section {
			background:
				radial-gradient(50% 60% at 90% 0%, rgba(124, 58, 237, 0.06), transparent 55%),
				#faf8ff;
		}
		.fc-contact-steps {
			display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 18px;
		}
		@media (max-width: 767px) {
			.fc-contact-steps { grid-template-columns: 1fr; }
		}
		.fc-contact-step {
			display: flex;
			gap: 16px;
			align-items: flex-start;
			padding: 22px 20px;
			border-radius: 20px;
			border: 1px solid rgba(109, 40, 217, 0.12);
			background: linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			box-shadow: 0 12px 28px rgba(46, 16, 101, 0.06);
		}
		.fc-contact-step__no {
			flex: 0 0 auto;
			font-family: "Outfit", sans-serif;
			font-size: 0.85rem;
			font-weight: 800;
			letter-spacing: .08em;
			color: #7c3aed;
			background: rgba(124, 58, 237, 0.1);
			border: 1px solid rgba(109, 40, 217, 0.14);
			border-radius: 999px;
			padding: 8px 12px;
			line-height: 1;
		}
		.fc-contact-steps__cta {
			margin-top: 28px;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 14px;
		}
		.fc-contact-ghost {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			padding: 14px 20px;
			border-radius: 999px;
			border: 1px solid rgba(109, 40, 217, 0.28);
			color: #5b21b6;
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			background: #fff;
			transition: background .2s ease, border-color .2s ease, color .2s ease;
		}
		.fc-contact-ghost:hover {
			background: rgba(124, 58, 237, 0.08);
			border-color: rgba(109, 40, 217, 0.45);
			color: #2E1065;
		}
		.fc-contact-details {
			background: #ffffff;
		}
		.fc-contact-info-list {
			display: grid;
			gap: 12px;
			margin-top: 8px;
		}
		.fc-contact-info {
			display: flex;
			align-items: flex-start;
			gap: 14px;
			padding: 16px 18px;
			border-radius: 18px;
			border: 1px solid rgba(109, 40, 217, 0.12);
			background: linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			box-shadow: 0 10px 24px rgba(46, 16, 101, 0.05);
			text-decoration: none;
			color: inherit;
			transition: transform .2s ease, box-shadow .2s ease;
		}
		a.fc-contact-info:hover {
			transform: translateY(-3px);
			box-shadow: 0 16px 30px rgba(46, 16, 101, 0.1);
		}
		.fc-contact-info__icon {
			width: 44px;
			height: 44px;
			border-radius: 14px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 100%);
			color: #fff;
			flex: 0 0 auto;
		}
		.fc-contact-info strong {
			display: block;
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			font-weight: 800;
			color: #2E1065;
			margin-bottom: 2px;
		}
		.fc-contact-info em {
			font-style: normal;
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			line-height: 1.45;
			color: rgba(46, 16, 101, 0.68);
		}
		.fc-contact-form-panel {
			position: relative;
			padding: 28px 28px 26px;
			border-radius: 24px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.18), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.1);
		}
		.fc-contact-form-panel__badge {
			display: inline-block;
			margin-bottom: 10px;
			padding: 4px 10px;
			border-radius: 999px;
			font-family: "Outfit", sans-serif;
			font-size: 0.72rem;
			font-weight: 700;
			letter-spacing: .04em;
			text-transform: uppercase;
			color: #5b21b6;
			background: rgba(124, 58, 237, 0.1);
			border: 1px solid rgba(109, 40, 217, 0.14);
		}
		.fc-contact-form-panel__head h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.35rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 8px;
		}
		.fc-contact-form-panel__head p {
			font-family: "Outfit", sans-serif;
			font-size: 0.92rem;
			line-height: 1.6;
			color: rgba(46, 16, 101, 0.68);
			margin: 0 0 20px;
		}
		.fc-contact-form-panel__head a {
			color: #5b21b6;
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}
		.fc-contact-form__label {
			display: block;
			margin-bottom: 6px;
			font-family: "Outfit", sans-serif;
			font-size: 0.82rem;
			font-weight: 700;
			color: #3b1d7a;
		}
		.fc-contact-form__input {
			width: 100%;
			border: 1px solid rgba(109, 40, 217, 0.16);
			border-radius: 14px;
			background: #fff;
			padding: 12px 14px;
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			color: #2E1065;
			outline: none;
			transition: border-color .2s ease, box-shadow .2s ease;
		}
		.fc-contact-form__input:focus {
			border-color: rgba(109, 40, 217, 0.45);
			box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.12);
		}
		.fc-contact-form__textarea {
			resize: vertical;
			min-height: 130px;
		}
		.fc-contact-hp {
			position: absolute;
			left: -10000px;
			top: auto;
			width: 1px;
			height: 1px;
			overflow: hidden;
		}
		.fc-contact-alert {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			padding: 12px 14px;
			border-radius: 14px;
			margin-bottom: 16px;
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			line-height: 1.45;
			font-weight: 600;
		}
		.fc-contact-alert--ok {
			background: rgba(22, 163, 74, 0.1);
			border: 1px solid rgba(22, 163, 74, 0.28);
			color: #166534;
		}
		.fc-contact-alert--err {
			background: rgba(220, 38, 38, 0.08);
			border: 1px solid rgba(220, 38, 38, 0.22);
			color: #991b1b;
		}
		.fc-contact-alert i { margin-top: 2px; }
		.fc-contact-captcha {
			display: grid;
			grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) 46px;
			gap: 10px;
			align-items: center;
		}
		@media (max-width: 575px) {
			.fc-contact-captcha {
				grid-template-columns: minmax(0, 1fr) 46px;
			}
			.fc-contact-captcha__input { grid-column: 1 / 2; }
			.fc-contact-captcha__refresh { grid-column: 2 / 3; grid-row: 2; }
		}
		.fc-contact-captcha__challenge {
			display: flex;
			align-items: center;
			gap: 8px;
			min-height: 48px;
			padding: 0 14px;
			border-radius: 14px;
			border: 1px solid rgba(109, 40, 217, 0.16);
			background: rgba(124, 58, 237, 0.06);
			font-family: "Outfit", sans-serif;
			color: #2E1065;
		}
		.fc-contact-captcha__label {
			font-size: 0.82rem;
			font-weight: 700;
			color: rgba(46, 16, 101, 0.65);
		}
		.fc-contact-captcha__challenge strong {
			font-size: 1.15rem;
			font-weight: 800;
			letter-spacing: .02em;
		}
		.fc-contact-captcha__input {
			-moz-appearance: textfield;
		}
		.fc-contact-captcha__input::-webkit-outer-spin-button,
		.fc-contact-captcha__input::-webkit-inner-spin-button {
			-webkit-appearance: none;
			margin: 0;
		}
		.fc-contact-captcha__input.is-invalid {
			border-color: rgba(220, 38, 38, 0.45);
			box-shadow: 0 0 0 4px rgba(220, 38, 38, 0.1);
		}
		.fc-contact-captcha__refresh {
			width: 46px;
			height: 48px;
			border-radius: 14px;
			border: 1px solid rgba(109, 40, 217, 0.18);
			background: #fff;
			color: #5b21b6;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			cursor: pointer;
			transition: background .2s ease, color .2s ease, border-color .2s ease;
		}
		.fc-contact-captcha__refresh:hover {
			background: rgba(124, 58, 237, 0.08);
			border-color: rgba(109, 40, 217, 0.35);
			color: #2E1065;
		}
		.fc-contact-captcha__refresh:disabled {
			opacity: 0.55;
			cursor: wait;
		}
		.fc-contact-captcha__hint {
			margin: 8px 0 0;
			font-family: "Outfit", sans-serif;
			font-size: 0.78rem;
			color: rgba(46, 16, 101, 0.55);
		}
		.fc-contact-map__frame {
			border-radius: 24px;
			overflow: hidden;
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.1);
			background: #f4f0ff;
		}
		.fc-contact-map__frame iframe {
			display: block;
			width: 100%;
			height: 420px;
			border: 0;
		}
		@media (max-width: 767px) {
			.fc-contact-map__frame iframe { height: 300px; }
			.fc-contact-form-panel { padding: 22px 18px; }
		}
		.fc-contact-breadcrumb .breadcrumb-thumb img {
			object-position: center 35%;
		}

		/* ===== Privacy Policy page ===== */
		.fc-privacy-intro {
			background:
				radial-gradient(46% 55% at 0% 0%, rgba(124, 58, 237, 0.07), transparent 58%),
				radial-gradient(40% 48% at 100% 18%, rgba(167, 139, 250, 0.1), transparent 55%),
				#ffffff;
		}
		.fc-privacy-intro__lead {
			font-family: "Outfit", sans-serif;
			font-size: 1.08rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.78);
			margin-bottom: 14px;
		}
		.fc-privacy-intro__lead strong { color: #2E1065; font-weight: 800; }
		.fc-privacy-intro__text {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.68);
			margin-bottom: 18px;
		}
		.fc-privacy-meta {
			list-style: none;
			margin: 0;
			padding: 16px 18px;
			border-radius: 16px;
			background: rgba(124, 58, 237, 0.06);
			border: 1px solid rgba(109, 40, 217, 0.12);
			display: grid;
			gap: 8px;
		}
		.fc-privacy-meta li {
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			line-height: 1.45;
			color: #3b1d7a;
		}
		.fc-privacy-meta strong { color: #2E1065; }
		.fc-privacy-intro__media {
			margin: 0;
			border-radius: 24px;
			overflow: hidden;
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 24px 48px rgba(46, 16, 101, 0.14);
			background: #f4f0ff;
		}
		.fc-privacy-intro__media img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: cover;
		}
		.fc-privacy-intro__caption {
			padding: 12px 18px 14px;
			font-family: "Outfit", sans-serif;
			font-size: 0.84rem;
			font-weight: 700;
			letter-spacing: .02em;
			color: #5b21b6;
			background: linear-gradient(180deg, #f8f5ff 0%, #efe8ff 100%);
			border-top: 1px solid rgba(109, 40, 217, 0.1);
		}
		.fc-privacy-toc {
			position: sticky;
			top: 110px;
			padding: 20px 18px;
			border-radius: 20px;
			background: linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 14px 30px rgba(46, 16, 101, 0.07);
		}
		.fc-privacy-toc__title {
			font-family: "Outfit", sans-serif;
			font-size: 0.78rem;
			font-weight: 800;
			letter-spacing: .08em;
			text-transform: uppercase;
			color: #7c3aed;
			margin: 0 0 12px;
		}
		.fc-privacy-toc ol {
			margin: 0;
			padding: 0 0 0 1.1rem;
			display: grid;
			gap: 8px;
		}
		.fc-privacy-toc a {
			font-family: "Outfit", sans-serif;
			font-size: 0.88rem;
			font-weight: 600;
			color: #3b1d7a;
			text-decoration: none;
			line-height: 1.35;
		}
		.fc-privacy-toc a:hover { color: #7c3aed; }
		@media (max-width: 991px) {
			.fc-privacy-toc { position: static; }
		}
		.fc-privacy-doc {
			padding: 8px 8px 8px 0;
		}
		.fc-privacy-section {
			padding: 26px 28px;
			margin-bottom: 16px;
			border-radius: 22px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.12), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #fbfaff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 12px 28px rgba(46, 16, 101, 0.05);
			scroll-margin-top: 120px;
		}
		.fc-privacy-section h2 {
			display: flex;
			align-items: center;
			gap: 12px;
			font-family: "Outfit", sans-serif;
			font-size: 1.35rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 14px;
		}
		.fc-privacy-section h2 span {
			flex: 0 0 auto;
			min-width: 34px;
			height: 34px;
			padding: 0 8px;
			border-radius: 999px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: rgba(124, 58, 237, 0.1);
			border: 1px solid rgba(109, 40, 217, 0.14);
			color: #7c3aed;
			font-size: 0.85rem;
			font-weight: 800;
		}
		.fc-privacy-section h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.05rem;
			font-weight: 800;
			color: #3b1d7a;
			margin: 18px 0 8px;
		}
		.fc-privacy-section p,
		.fc-privacy-section li {
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.72);
		}
		.fc-privacy-section p { margin: 0 0 12px; }
		.fc-privacy-section ul {
			margin: 0 0 12px;
			padding-left: 1.15rem;
			display: grid;
			gap: 6px;
		}
		.fc-privacy-section a {
			color: #5b21b6;
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}
		.fc-privacy-note {
			padding: 12px 14px;
			border-radius: 14px;
			background: rgba(124, 58, 237, 0.06);
			border: 1px solid rgba(109, 40, 217, 0.12);
			color: #3b1d7a !important;
		}
		.fc-privacy-cta {
			margin-top: 22px;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: space-between;
			gap: 18px;
			padding: 26px 28px;
			border-radius: 22px;
			background: linear-gradient(135deg, #2E1065 0%, #5b21b6 55%, #6d28d9 100%);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.2);
		}
		.fc-privacy-cta h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.3rem;
			font-weight: 800;
			color: #fff;
			margin: 0 0 6px;
		}
		.fc-privacy-cta p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			color: rgba(255,255,255,0.88);
			margin: 0;
		}
		.fc-privacy-cta__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 12px;
		}
		.fc-privacy-cta__ghost {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			padding: 14px 20px;
			border-radius: 999px;
			border: 1px solid rgba(255,255,255,0.45);
			color: #fff;
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			background: rgba(255,255,255,0.08);
		}
		.fc-privacy-cta__ghost:hover {
			background: rgba(255,255,255,0.16);
			color: #fff;
		}
		.fc-privacy-breadcrumb .breadcrumb-thumb img {
			object-position: center 40%;
		}

		/* ===== Terms of Use page (mirrors Privacy Policy legal layout) ===== */
		.fc-terms-intro {
			background:
				radial-gradient(46% 55% at 0% 0%, rgba(124, 58, 237, 0.07), transparent 58%),
				radial-gradient(40% 48% at 100% 18%, rgba(167, 139, 250, 0.1), transparent 55%),
				#ffffff;
		}
		.fc-terms-intro__lead {
			font-family: "Outfit", sans-serif;
			font-size: 1.08rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.78);
			margin-bottom: 14px;
		}
		.fc-terms-intro__lead strong { color: #2E1065; font-weight: 800; }
		.fc-terms-intro__text {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.68);
			margin-bottom: 18px;
		}
		.fc-terms-intro__text a {
			color: #5b21b6;
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}
		.fc-terms-meta {
			list-style: none;
			margin: 0;
			padding: 16px 18px;
			border-radius: 16px;
			background: rgba(124, 58, 237, 0.06);
			border: 1px solid rgba(109, 40, 217, 0.12);
			display: grid;
			gap: 8px;
		}
		.fc-terms-meta li {
			font-family: "Outfit", sans-serif;
			font-size: 0.9rem;
			line-height: 1.45;
			color: #3b1d7a;
		}
		.fc-terms-meta strong { color: #2E1065; }
		.fc-terms-intro__media {
			margin: 0;
			border-radius: 24px;
			overflow: hidden;
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 24px 48px rgba(46, 16, 101, 0.14);
			background: #f4f0ff;
		}
		.fc-terms-intro__media img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: cover;
		}
		.fc-terms-intro__caption {
			padding: 12px 18px 14px;
			font-family: "Outfit", sans-serif;
			font-size: 0.84rem;
			font-weight: 700;
			letter-spacing: .02em;
			color: #5b21b6;
			background: linear-gradient(180deg, #f8f5ff 0%, #efe8ff 100%);
			border-top: 1px solid rgba(109, 40, 217, 0.1);
		}
		.fc-terms-toc {
			position: sticky;
			top: 110px;
			padding: 20px 18px;
			border-radius: 20px;
			background: linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 14px 30px rgba(46, 16, 101, 0.07);
			max-height: calc(100vh - 140px);
			overflow: auto;
		}
		.fc-terms-toc__title {
			font-family: "Outfit", sans-serif;
			font-size: 0.78rem;
			font-weight: 800;
			letter-spacing: .08em;
			text-transform: uppercase;
			color: #7c3aed;
			margin: 0 0 12px;
		}
		.fc-terms-toc ol {
			margin: 0;
			padding: 0 0 0 1.1rem;
			display: grid;
			gap: 8px;
		}
		.fc-terms-toc a {
			font-family: "Outfit", sans-serif;
			font-size: 0.86rem;
			font-weight: 600;
			color: #3b1d7a;
			text-decoration: none;
			line-height: 1.35;
		}
		.fc-terms-toc a:hover { color: #7c3aed; }
		@media (max-width: 991px) {
			.fc-terms-toc { position: static; max-height: none; }
		}
		.fc-terms-section {
			padding: 26px 28px;
			margin-bottom: 16px;
			border-radius: 22px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.12), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #fbfaff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 12px 28px rgba(46, 16, 101, 0.05);
			scroll-margin-top: 120px;
		}
		.fc-terms-section--alert {
			border-color: rgba(124, 58, 237, 0.28);
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(167, 139, 250, 0.18), transparent 45%),
				linear-gradient(180deg, #fff7ff 0%, #f3e8ff 100%);
		}
		.fc-terms-section h2 {
			display: flex;
			align-items: center;
			gap: 12px;
			font-family: "Outfit", sans-serif;
			font-size: 1.3rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 14px;
		}
		.fc-terms-section h2 span {
			flex: 0 0 auto;
			min-width: 34px;
			height: 34px;
			padding: 0 8px;
			border-radius: 999px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: rgba(124, 58, 237, 0.1);
			border: 1px solid rgba(109, 40, 217, 0.14);
			color: #7c3aed;
			font-size: 0.85rem;
			font-weight: 800;
		}
		.fc-terms-section h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.05rem;
			font-weight: 800;
			color: #3b1d7a;
			margin: 18px 0 8px;
		}
		.fc-terms-section p,
		.fc-terms-section li {
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.72);
		}
		.fc-terms-section p { margin: 0 0 12px; }
		.fc-terms-section ul {
			margin: 0 0 12px;
			padding-left: 1.15rem;
			display: grid;
			gap: 6px;
		}
		.fc-terms-section a {
			color: #5b21b6;
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}
		.fc-terms-cta {
			margin-top: 22px;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: space-between;
			gap: 18px;
			padding: 26px 28px;
			border-radius: 22px;
			background: linear-gradient(135deg, #2E1065 0%, #5b21b6 55%, #6d28d9 100%);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.2);
		}
		.fc-terms-cta h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.3rem;
			font-weight: 800;
			color: #fff;
			margin: 0 0 6px;
		}
		.fc-terms-cta p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			color: rgba(255,255,255,0.88);
			margin: 0;
		}
		.fc-terms-cta__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 12px;
		}
		.fc-terms-cta__ghost {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			padding: 14px 20px;
			border-radius: 999px;
			border: 1px solid rgba(255,255,255,0.45);
			color: #fff;
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			background: rgba(255,255,255,0.08);
		}
		.fc-terms-cta__ghost:hover {
			background: rgba(255,255,255,0.16);
			color: #fff;
		}
		.fc-terms-breadcrumb .breadcrumb-thumb img {
			object-position: center 42%;
		}

		/* About page breadcrumb — left tech BG + right POS showcase */
		.fc-about-breadcrumb .breadcrumb-content {
			background-color: #2E1065;
			background-size: cover;
			background-position: center center;
		}
		.fc-about-breadcrumb .breadcrumb-content::after {
			content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(
				105deg,
				rgba(46, 16, 101, 0.78) 0%,
				rgba(46, 16, 101, 0.55) 55%,
				rgba(109, 40, 217, 0.35) 100%
			);
			z-index: 0;
			pointer-events: none;
		}
		/* Replace yellow shape glow with soft purple brand glow */
		.fc-about-breadcrumb .breadcrumb-content .shape-1 {
			display: none !important;
		}
		.fc-about-breadcrumb .breadcrumb-content .fc-about-glow {
			position: absolute;
			left: 6%;
			bottom: 10%;
			width: min(460px, 72%);
			height: 150px;
			border-radius: 50%;
			background: radial-gradient(
				ellipse at center,
				rgba(216, 180, 254, 0.5) 0%,
				rgba(167, 139, 250, 0.22) 42%,
				transparent 72%
			);
			filter: blur(2px);
			pointer-events: none;
			z-index: 0;
		}
		.fc-about-breadcrumb .breadcrumb-content .breadcrumb-nav,
		.fc-about-breadcrumb .breadcrumb-content .breadcrumb-title {
			position: relative;
			z-index: 1;
		}
		.fc-about-breadcrumb .breadcrumb-thumb {
			min-height: 100%;
			background: #f4f0ff;
		}
		.fc-about-breadcrumb .breadcrumb-thumb img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center center;
			display: block;
		}

		/* ===== Donations page ===== */
		.fc-donations-intro {
			background:
				radial-gradient(46% 55% at 0% 0%, rgba(124, 58, 237, 0.07), transparent 58%),
				radial-gradient(40% 48% at 100% 18%, rgba(216, 180, 254, 0.14), transparent 55%),
				#ffffff;
		}
		.fc-donations-intro__lead {
			font-family: "Outfit", sans-serif;
			font-size: 1.08rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.78);
			margin-bottom: 14px;
		}
		.fc-donations-intro__lead strong { color: #2E1065; font-weight: 800; }
		.fc-donations-intro__text {
			font-family: "Outfit", sans-serif;
			font-size: 0.98rem;
			line-height: 1.7;
			color: rgba(46, 16, 101, 0.68);
			margin-bottom: 18px;
		}
		.fc-donations-intro__checks {
			list-style: none;
			margin: 0 0 26px;
			padding: 0;
			display: grid;
			gap: 10px;
		}
		.fc-donations-intro__checks li {
			display: flex;
			align-items: flex-start;
			gap: 10px;
			font-family: "Outfit", sans-serif;
			font-size: 0.95rem;
			font-weight: 600;
			color: #3b1d7a;
			line-height: 1.45;
		}
		.fc-donations-intro__checks i {
			margin-top: 3px;
			color: #7c3aed;
			font-size: 0.8rem;
		}
		.fc-donations-intro__actions {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap: 18px;
		}
		.fc-donations-intro__link {
			font-family: "Outfit", sans-serif;
			font-weight: 700;
			color: #5b21b6;
			text-decoration: underline;
			text-underline-offset: 3px;
		}
		.fc-donations-intro__link:hover { color: #2E1065; }
		.fc-donations-intro__media {
			margin: 0;
			border-radius: 24px;
			overflow: hidden;
			border: 1px solid rgba(109, 40, 217, 0.14);
			box-shadow: 0 24px 48px rgba(46, 16, 101, 0.14);
			background: #f4f0ff;
		}
		.fc-donations-intro__media img {
			width: 100%;
			height: auto;
			display: block;
			object-fit: cover;
		}
		.fc-donations-intro__caption {
			padding: 12px 18px 14px;
			font-family: "Outfit", sans-serif;
			font-size: 0.84rem;
			font-weight: 700;
			letter-spacing: .02em;
			color: #5b21b6;
			background: linear-gradient(180deg, #f8f5ff 0%, #efe8ff 100%);
			border-top: 1px solid rgba(109, 40, 217, 0.1);
		}
		.fc-donations-pillar {
			height: 100%;
			padding: 26px 22px;
			border-radius: 22px;
			background:
				radial-gradient(120% 90% at 100% 0%, rgba(216, 180, 254, 0.2), transparent 45%),
				linear-gradient(180deg, #ffffff 0%, #f8f5ff 100%);
			border: 1px solid rgba(109, 40, 217, 0.12);
			box-shadow: 0 14px 30px rgba(46, 16, 101, 0.07);
		}
		.fc-donations-pillar__icon {
			width: 50px;
			height: 50px;
			border-radius: 16px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: linear-gradient(145deg, #7c3aed 0%, #5b21b6 100%);
			color: #fff;
			margin-bottom: 14px;
			box-shadow: 0 10px 20px rgba(91, 33, 182, 0.28);
		}
		.fc-donations-pillar h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.15rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 8px;
		}
		.fc-donations-pillar p {
			font-family: "Outfit", sans-serif;
			font-size: 0.92rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.7);
			margin: 0;
		}
		.fc-donations-page .fc-donations-store {
			background:
				radial-gradient(50% 60% at 90% 0%, rgba(124, 58, 237, 0.05), transparent 55%),
				#faf8ff;
		}
		.fc-donations-note {
			display: flex;
			gap: 16px;
			align-items: flex-start;
			padding: 22px 24px;
			border-radius: 20px;
			background: rgba(124, 58, 237, 0.06);
			border: 1px solid rgba(109, 40, 217, 0.14);
			margin-bottom: 22px;
		}
		.fc-donations-note__icon {
			flex: 0 0 auto;
			width: 42px;
			height: 42px;
			border-radius: 12px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: #5b21b6;
			color: #fff;
		}
		.fc-donations-note h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.1rem;
			font-weight: 800;
			color: #2E1065;
			margin: 0 0 6px;
		}
		.fc-donations-note p {
			font-family: "Outfit", sans-serif;
			font-size: 0.92rem;
			line-height: 1.65;
			color: rgba(46, 16, 101, 0.72);
			margin: 0;
		}
		.fc-donations-note a {
			color: #5b21b6;
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}
		.fc-donations-cta {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: space-between;
			gap: 18px;
			padding: 26px 28px;
			border-radius: 22px;
			background: linear-gradient(135deg, #2E1065 0%, #5b21b6 55%, #6d28d9 100%);
			box-shadow: 0 20px 40px rgba(46, 16, 101, 0.2);
		}
		.fc-donations-cta h3 {
			font-family: "Outfit", sans-serif;
			font-size: 1.3rem;
			font-weight: 800;
			color: #fff;
			margin: 0 0 6px;
		}
		.fc-donations-cta p {
			font-family: "Outfit", sans-serif;
			font-size: 0.94rem;
			color: rgba(255,255,255,0.88);
			margin: 0;
		}
		.fc-donations-cta a:not(.e-primary-btn) {
			color: #fff;
			font-weight: 700;
			text-decoration: underline;
		}
		.fc-donations-breadcrumb .breadcrumb-thumb img {
			object-position: center 30%;
		}

		/* Donations Store cards — equal image size, no Join button */
		.fc-donations-store .event-card .thumb > a {
			aspect-ratio: 646 / 350;
		}
		.fc-donations-store .event-card .thumb img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center 28%;
			display: block;
		}
		.fc-donations-store .col-lg-6:nth-child(2) .thumb img {
			object-position: center 40%;
		}
		.fc-donations-store .event-card-middle {
			padding-bottom: 6px;
		}
		.fc-donations-store .event-card-middle h2 a {
			pointer-events: auto;
		}
