import {Image} from '@shopify/hydrogen'; import {AbiirEyebrow} from '~/components/AbiirEyebrow'; import {PAGE_TITLE_TYPOGRAPHY_CLASS} from '~/lib/pageTitle'; import type {BrandValueIconKey, BrandValuesCms} from '~/lib/brandValues'; import { BRAND_VALUES_GROQ, MOCK_BRAND_VALUES_CMS, } from '~/lib/brandValues'; import iconFlaskSrc from '~/assets/brand-values/icon-flask.svg'; import iconLeafSrc from '~/assets/brand-values/icon-leaf.svg'; import iconShieldSrc from '~/assets/brand-values/icon-shield.svg'; import iconSparklesSrc from '~/assets/brand-values/icon-sparkles.svg'; /** * Sanity GROQ for this module (loader + future `useQuery`): * @see {@link BRAND_VALUES_GROQ} */ export {BRAND_VALUES_GROQ, MOCK_BRAND_VALUES_CMS}; export type {BrandValuesCms, BrandValueIconKey} from '~/lib/brandValues'; /** Figma 32:7186 — raster icons exported as SVG from MCP asset URLs. */ const ICON_SRC: Record = { leaf: iconLeafSrc, flaskConical: iconFlaskSrc, shield: iconShieldSrc, sparkles: iconSparklesSrc, }; /** * Figma 32:7200–32:7230 — description block horizontal padding + max width per column. */ const DESCRIPTION_LAYOUT = [ {wrapClass: 'px-[5px]', textClass: 'max-w-[228px]'}, {wrapClass: 'px-[9px]', textClass: 'max-w-[220px]'}, {wrapClass: '', textClass: 'max-w-[238px]'}, {wrapClass: 'px-[16px]', textClass: 'max-w-[206px]'}, ] as const; export type BrandValuesProps = { cms: BrandValuesCms; }; export function BrandValues({cms}: BrandValuesProps) { return (
{/* Figma: px-[206px] py-[94px] gap-[68px] within1710 frame */}
{/* Flow layout so type size isn’t fighting absolute + min-height (which only added empty gap). */}
{cms.eyebrow}

{cms.headlinePrefix} {cms.headlineItalic}

{cms.values.map((value, index) => { const layout = index < DESCRIPTION_LAYOUT.length ? DESCRIPTION_LAYOUT[index] : {wrapClass: '', textClass: 'max-w-[238px]'}; return (

{value.title}

{value.description}

); })}
); }