{"version":3,"file":"SectionCtaBlockPrimary.CfRxRWiL.mjs","names":["useRef","useId"],"sources":["https:/framerusercontent.com/modules/X2iPkp1zYwd66X6YaE2N/8R1vXctYTokNy8QF6IYR/sectionCopyTypography.js","https:/framerusercontent.com/modules/x8xBXedBtTWpORgrp2Iz/EQig2PBGtzfllBLA8P3g/SectionCtaBlockPrimary.js"],"sourcesContent":["import Tokens from\"https://framerusercontent.com/modules/JnflwrfTBO2W3YxUCt5T/gagzSBMuqB4yu4qdS3rG/index.js\";/**\n * Default in-page section headline (centered Section* organisms).\n * Pair with {@link supportingTextTypographyPath} → `/Subheadline/MD`.\n */export const SECTION_CTA_HEADLINE_2XL_PATH=\"/Headline 2XL/Heavy\";/** Alias for {@link SECTION_CTA_HEADLINE_2XL_PATH}. */export const SECTION_STANDARD_HEADLINE_PATH=SECTION_CTA_HEADLINE_2XL_PATH;/** Page masthead headline (`SectionHeader*`, hero blocks). Pairs with `/Subheadline/LG`. */export const SECTION_PAGE_HEADER_HEADLINE_PATH=\"/Headline 3XL/Heavy\";/** {@link SectionCtaBlockSecondary} and {@link SectionCtaAlert} headline token. */export const SECTION_CTA_HEADLINE_XL_PATH=\"/Headline XL/Heavy\";/**\n * Maps a section headline token to its supporting-text token.\n *\n * Supporting text follows the brand subheadline role (~60% of headline, Regular 400).\n * Pairings match `documentation/design/design-system.md` (Subheadlines table).\n */export function supportingTextTypographyPath(headlinePath){if(headlinePath.includes(\"4XL\")||headlinePath.includes(\"3XL\")){return\"/Subheadline/LG\";}if(headlinePath.includes(\"2XL\")||headlinePath.includes(\"XL\")){return\"/Subheadline/MD\";}if(headlinePath.includes(\"/Headline L/\")||headlinePath.includes(\"/Headline M/\")){return\"/Subheadline/SM\";}return\"/Subheadline/SM\";}/**\n * Resolved CSS typography for a section headline.\n */export function getHeadlineTypographyStyles(headlinePath,breakpoint){const styles=Tokens.getTypographyStyles(headlinePath,breakpoint);if(styles){return styles;}return Tokens.getTypographyStyles(SECTION_CTA_HEADLINE_2XL_PATH,breakpoint);}/**\n * Resolved CSS typography for supporting text under a section headline.\n * Always paired to `headlinePath` via {@link supportingTextTypographyPath}.\n */export function getSupportingTextTypographyStyles(headlinePath,breakpoint){const path=supportingTextTypographyPath(headlinePath);const styles=Tokens.getTypographyStyles(path,breakpoint);if(styles){return styles;}return Tokens.getTypographyStyles(\"/Subheadline/MD\",breakpoint);}// recompile: 1786970562256\n\nexport const __FramerMetadata__ = {\"exports\":{\"SECTION_CTA_HEADLINE_XL_PATH\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"supportingTextTypographyPath\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getHeadlineTypographyStyles\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getSupportingTextTypographyStyles\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SECTION_CTA_HEADLINE_2XL_PATH\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SECTION_STANDARD_HEADLINE_PATH\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"SECTION_PAGE_HEADER_HEADLINE_PATH\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","/**\n * SectionCtaBlockPrimary - Simple call-to-action section component.\n *\n * A minimalist CTA section with a heading, description, and button.\n * Features a black background with centered white text and a white button.\n *\n * @framerDisableUnlink\n * @framerIntrinsicWidth 1280\n * @framerIntrinsicHeight auto\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight auto.\n */// 1. React and React types\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{forwardRef,useRef,useId}from\"react\";// 2. Framer Motion (for animations/transitions)\nimport{motion}from\"framer-motion\";// 3. Framer API\nimport{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{themePropertyControls,resolveThemeProp}from\"https://framerusercontent.com/modules/lFWBe5qCxlzWknbvQ1Np/IBWfdVP45taFoVt1WbKb/themeControl.js\";import{resolveScopedElementId,resolveSectionIdPrefix}from\"https://framerusercontent.com/modules/EhucoCcvUrEmkeXlMWEK/6YhgLgfjy8dGF1MJj1up/resolveElementId.js\";// 4. Design system utilities\nimport Tokens,{useReducedMotion,useEffectiveBreakpoint,kernHeadingPlainText}from\"https://framerusercontent.com/modules/JnflwrfTBO2W3YxUCt5T/gagzSBMuqB4yu4qdS3rG/index.js\";import{getThemeColors}from\"https://framerusercontent.com/modules/30edN7qiEI1dwQI5mdZ5/RdSxoUKJXTqYerHxOEo0/themeHelpers.js\";import{SECTION_BACKGROUND_DEFAULTS,getSectionBackgroundFromProps,getSectionRootBackgroundStyle,sectionBackgroundPropertyControls}from\"https://framerusercontent.com/modules/jZFHLdiOT2heZl3JSdXg/kaSyrdjMlC5Ek5LLKKSp/sectionBackground.js\";import{getSectionWrapperStyles,getResponsiveButtonWidth,getCopyStackGap,getCopyToCtaMarginTop}from\"https://framerusercontent.com/modules/LQuuOAryIVnwswuGx8Ex/GRg4d56wvMcLf3Vone2y/layoutStyles.js\";import{SECTION_CTA_HEADLINE_2XL_PATH,getHeadlineTypographyStyles,getSupportingTextTypographyStyles}from\"https://framerusercontent.com/modules/X2iPkp1zYwd66X6YaE2N/8R1vXctYTokNy8QF6IYR/sectionCopyTypography.js\";import{pickBrandButtonVariant,sectionButtonVariantControls}from\"https://framerusercontent.com/modules/QyHfeOyN9TwLDOSclcHY/OnvK29pDc5ry6eJQQcpT/buttonStyles.js\";// 5. Local utilities\nimport{PLACEHOLDER}from\"https://framerusercontent.com/modules/48iFuUf79i0lV1xbzOpm/1llYVYoXHKBoUUXzGhpH/placeholders.js\";import{useSectionAnimation,getSectionMotionInitial}from\"https://framerusercontent.com/modules/T0hsVXlJCFwqijvkTPxe/U18bAQUziSEgeViAoyqJ/useSectionAnimation.js\";import{createSectionVariants}from\"https://framerusercontent.com/modules/4txbpRwhPsY7unmUb1pS/1O3oPX9QDqAFy2pUXjJU/motionVariants.js\";import{getLinkUrl}from\"https://framerusercontent.com/modules/NbJRONH2Z4yDLXjbVsSq/tIlA4bDCxOgn96RfLVjG/linkHelpers.js\";import{getSectionRestProps}from\"https://framerusercontent.com/modules/DTXTjpsqu0cSSSvQLUkb/0kJs43iigrvPRpoMLToC/sectionProps.js\";import{PRESERVE_CONTROL_NEWLINES}from\"https://framerusercontent.com/modules/7usa64yv6f2tRQTyL0ZP/5mFzfiHMhnd6JaTAckCv/controlTextStyles.js\";// 7. Component imports\nimport Button from\"https://framerusercontent.com/modules/tpFnvvAIpLui9IVc2GzW/KyU3jnKtYDIuGRci7Gqk/Button.js\";import Image from\"https://framerusercontent.com/modules/LfM53jsnFhQ8AdSCij8V/yDIxZCIgpVJIxbQyKZe8/Image.js\";// ============================================\n// RESPONSIVE UTILITIES\n// ============================================\n// ============================================\n// COMPONENT\n// ============================================\n/**\n * SectionCtaBlockPrimaryInternal - Internal forwardRef component.\n */const SectionCtaBlockPrimaryInternal=/*#__PURE__*/forwardRef(function SectionCtaBlockPrimaryInternal(props,ref){const theme=resolveThemeProp(props);const{// Responsive breakpoint.\nbreakpoint:breakpointProp=\"desktop\",// Content props.\nheading=PLACEHOLDER.HEADING,description=PLACEHOLDER.DESCRIPTION,label,buttonLabel,buttonVariant=\"primary-warm\",buttonVariantTricount=\"solid\",buttonLink,buttonOpenInNewTab=false,primaryCtaId=\"section-cta-block-primary-cta-primary\",sectionId,imageBelow,imageBelowAlt=PLACEHOLDER.IMAGE_ALT,imageBelowImageFit,// Event handlers.\nonButtonClick,// Common props.\nbackgroundVariant=SECTION_BACKGROUND_DEFAULTS.backgroundVariant,backgroundPreset=SECTION_BACKGROUND_DEFAULTS.backgroundPreset,brand,backgroundEnabled,backgroundGradientBrand,backgroundPresetTricount,backgroundOverlayDirection=SECTION_BACKGROUND_DEFAULTS.backgroundOverlayDirection,backgroundShowOverlay=SECTION_BACKGROUND_DEFAULTS.backgroundShowOverlay,useMontserrat=SECTION_BACKGROUND_DEFAULTS.useMontserrat,style,children,...rest}=props;const resolvedLabel=label??buttonLabel??PLACEHOLDER.PRIMARY_BUTTON;// ========================================\n// HOOKS\n// ========================================\n// Auto-detect viewport breakpoint as a safety net.\nconst breakpoint=useEffectiveBreakpoint(breakpointProp);const colors=getThemeColors(theme,brand??backgroundGradientBrand);const reducedMotion=useReducedMotion();const componentId=useId();const resolvedSectionId=resolveSectionIdPrefix(sectionId,componentId,\"section-cta-block-primary\");const resolvedPrimaryCtaId=resolveScopedElementId(primaryCtaId,\"section-cta-block-primary-cta-primary\",resolvedSectionId,\"cta-primary\");const headingId=useId();const{sectionRef,animate,hasMounted}=useSectionAnimation(ref);const isStaticRenderer=useIsStaticRenderer();// ========================================\n// DERIVED STATE\n// ========================================\nconst _isPhone=breakpoint===\"phone\";// ========================================\n// STYLES\n// ========================================\n// Section padding based on breakpoint.\nconst sectionPadding=Tokens.getSectionPadding(breakpoint);// Section container styles.\nconst{sectionBgColor,isGradient:_isGradient,backgroundLayer}=getSectionBackgroundFromProps({theme,backgroundVariant,backgroundPreset,brand,backgroundEnabled,backgroundGradientBrand,backgroundPresetTricount,backgroundOverlayDirection,backgroundShowOverlay,colors});const resolvedButtonVariant=pickBrandButtonVariant(brand??backgroundGradientBrand??\"bunq\",buttonVariant,buttonVariantTricount,theme);const sectionStyles={width:\"100%\",/**\n             * Background color.\n             */...getSectionRootBackgroundStyle({useMontserrat,brand:brand??backgroundGradientBrand}),backgroundColor:sectionBgColor,/**\n             * Padding top.\n             */paddingTop:sectionPadding.paddingTop,/**\n             * Padding bottom.\n             */paddingBottom:sectionPadding.paddingBottom,/**\n             * Padding left.\n             */paddingLeft:sectionPadding.paddingLeft,/**\n             * Padding right.\n             */paddingRight:sectionPadding.paddingRight,/**\n             * Box sizing.\n             */boxSizing:\"border-box\",...style};// Inner container styles (max-width constraint).\nconst containerStyles={/**\n             * Max width.\n             */maxWidth:Tokens.getContainerMaxWidth(breakpoint),/**\n             * Margin.\n             */margin:\"0 auto\",width:\"100%\"};const copyStackGap=getCopyStackGap(breakpoint);const copyToCtaMarginTop=getCopyToCtaMarginTop(breakpoint);const ctaToImageMarginTop=Tokens.getResponsiveGap(\"xl\",breakpoint);// Content container styles.\nconst contentStyles={/**\n             * Display.\n             */display:\"flex\",/**\n             * Flex direction.\n             */flexDirection:\"column\",/**\n             * Align items.\n             */alignItems:\"center\",/**\n             * Gap.\n             */gap:0};// Section header (heading + description) styles.\nconst innerHeaderStyles={display:\"flex\",flexDirection:\"column\",gap:copyStackGap,textAlign:\"center\",alignItems:\"center\"};// Typography styles.\nconst headingStyles={...getHeadlineTypographyStyles(SECTION_CTA_HEADLINE_2XL_PATH,breakpoint),/**\n             * Color.\n             */color:colors.textPrimary,/**\n             * Margin.\n             */margin:0,/**\n             * Text align.\n             */textAlign:\"center\",/**\n             * Max width.\n             */maxWidth:Tokens.getWidthValue(\"width-xxl\"),...PRESERVE_CONTROL_NEWLINES};const descriptionStyles={...getSupportingTextTypographyStyles(SECTION_CTA_HEADLINE_2XL_PATH,breakpoint),/**\n             * Color.\n             */color:colors.textPrimary,/**\n             * Margin.\n             */margin:0,/**\n             * Text align.\n             */textAlign:\"center\",/**\n             * Max width.\n             */maxWidth:Tokens.getWidthValue(\"width-xxl\"),...PRESERVE_CONTROL_NEWLINES};// ========================================\n// ANIMATION VARIANTS\n// ========================================\nconst{container:containerVariants,item:itemVariants}=createSectionVariants(reducedMotion,{stagger:Tokens.getStagger(\"loose\")});const effectiveImageBelow=imageBelow?.src?imageBelow:undefined;const effectiveImageBelowAlt=effectiveImageBelow?.alt??imageBelowAlt??\"\";const shouldShowImageBelow=Boolean(effectiveImageBelow);// ========================================\n// RENDER\n// ========================================\nreturn /*#__PURE__*/_jsxs(motion.section,{ref:sectionRef,style:sectionStyles,id:resolvedSectionId,\"aria-labelledby\":headingId,initial:getSectionMotionInitial(animate,{hasMounted,isStaticRenderer,reducedMotion}),animate:animate,variants:containerVariants,...getSectionRestProps(rest),children:[backgroundLayer,/*#__PURE__*/_jsx(\"div\",{style:containerStyles,children:/*#__PURE__*/_jsxs(\"div\",{style:contentStyles,children:[Boolean(heading??description)&&/*#__PURE__*/_jsxs(motion.div,{style:innerHeaderStyles,variants:itemVariants,children:[heading&&/*#__PURE__*/_jsx(\"h2\",{id:headingId,style:headingStyles,children:kernHeadingPlainText(heading)}),description&&/*#__PURE__*/_jsx(\"p\",{style:descriptionStyles,children:description})]}),resolvedLabel&&/*#__PURE__*/_jsx(motion.div,{variants:itemVariants,style:{width:getResponsiveButtonWidth(breakpoint),marginTop:copyToCtaMarginTop},children:/*#__PURE__*/_jsx(Button,{breakpoint:breakpoint,variant:resolvedButtonVariant,theme:theme,brand:brand,size:\"large\",label:resolvedLabel,link:getLinkUrl(buttonLink)||undefined,openInNewTab:buttonOpenInNewTab,onClick:onButtonClick,iconPosition:\"none\",id:resolvedPrimaryCtaId,trackingId:resolvedPrimaryCtaId,analyticsLocation:\"cta\"})}),shouldShowImageBelow&&/*#__PURE__*/_jsx(motion.div,{variants:itemVariants,style:{width:\"100%\",maxWidth:Tokens.getWidthValue(\"width-xl\"),marginLeft:\"auto\",marginRight:\"auto\",marginTop:resolvedLabel?ctaToImageMarginTop:copyToCtaMarginTop},children:/*#__PURE__*/_jsx(Image,{id:`${resolvedSectionId}-image`,imageUrl:effectiveImageBelow,alt:effectiveImageBelowAlt,aspectRatio:\"16:9\",objectFit:imageBelowImageFit??\"cover\",objectPosition:\"center\",overflow:\"hidden\",style:{width:\"100%\",height:\"auto\",display:\"block\"}})}),children]})})]});});/**\n * SectionCtaBlockPrimary - Wrapper component for Framer compatibility.\n */export default function SectionCtaBlockPrimary(props){const ref=useRef(null);const breakpoint=useEffectiveBreakpoint(props.breakpoint??\"desktop\");return /*#__PURE__*/_jsx(\"div\",{style:{...getSectionWrapperStyles(breakpoint),...props.style},children:/*#__PURE__*/_jsx(SectionCtaBlockPrimaryInternal,{...props,ref:ref})});}// Set display name for Framer.\nSectionCtaBlockPrimary.displayName=\"Section CTA Block Primary - Organism\";// ============================================\n// PROPERTY CONTROLS\n// ============================================\naddPropertyControls(SectionCtaBlockPrimary,{// ─── 1. Content ────────────────────────────────────────────────────────────\nheading:{type:ControlType.String,title:\"Headline\",defaultValue:PLACEHOLDER.HEADING,placeholder:\"e.g. Short headline (one line)\",description:\"Main heading text for the section.\",displayTextArea:true},description:{type:ControlType.String,title:\"Subheadline\",defaultValue:PLACEHOLDER.DESCRIPTION,placeholder:\"One or two sentences describing the section\",description:\"Supporting text below the heading.\",displayTextArea:true},label:{type:ControlType.String,title:\"Button Label\",defaultValue:PLACEHOLDER.PRIMARY_BUTTON,placeholder:\"Enter button label...\",description:\"Label text for the CTA button. Leave empty to hide.\"},buttonLabel:{type:ControlType.String,title:\"Button Label\",defaultValue:PLACEHOLDER.PRIMARY_BUTTON,placeholder:\"Enter button label...\",description:\"Label text for the CTA button. Leave empty to hide.\",hidden:()=>true},// ─── 2. Links ──────────────────────────────────────────────────────────────\nbuttonLink:{type:ControlType.Link,title:\"Button Link\",defaultValue:\"\",description:\"Link for the CTA button. When set, the button renders as a link.\"},buttonOpenInNewTab:{type:ControlType.Boolean,title:\"Open in New Tab\",defaultValue:true,enabledTitle:\"New Tab\",disabledTitle:\"Same Tab\",description:\"Open the button link in a new browser tab.\"},// ─── 3. Media ──────────────────────────────────────────────────────────────\nimageBelow:{type:ControlType.ResponsiveImage,title:\"Below Image\",description:\"Optional image below the CTA from Framer file upload.\"},imageBelowAlt:{type:ControlType.String,title:\"Below Image Alt\",defaultValue:\"\",placeholder:\"Brief description of image for screen readers\",description:\"Optional alt override. File uploads already provide alt.\"},imageBelowImageFit:{type:ControlType.Enum,title:\"Below Image Fit\",options:[\"cover\",\"contain\"],optionTitles:[\"Cover\",\"Contain\"],displaySegmentedControl:true,defaultValue:\"cover\",description:\"How the below-button image fits its container.\"},// ─── 6. Configuration ──────────────────────────────────────────────────────\n...sectionButtonVariantControls({title:\"Button Variant\",bunqDefault:\"primary-warm\"}),...sectionBackgroundPropertyControls(),// ─── 7. Behavior ───────────────────────────────────────────────────────────\nonButtonClick:{type:ControlType.EventHandler,title:\"On Button Click\",description:\"Callback fired when the CTA button is clicked.\"},// ─── 8. Analytics ──────────────────────────────────────────────────────────\nprimaryCtaId:{type:ControlType.TrackingId,title:\"Primary CTA Tracking\",defaultValue:\"section-cta-block-primary-cta-primary\",placeholder:\"ID\",description:\"Primary CTA Tracking ID (lowercase + hyphens). Used as the HTML id, Framer custom event, and dataLayer select_content cta_id.\"},// ─── 9. Advanced ───────────────────────────────────────────────────────────\nsectionId:{type:ControlType.String,title:\"Section ID\",defaultValue:\"section-cta-block-primary\",placeholder:\"e.g. section-name\",description:\"HTML id for the section element. Used for anchor links and page navigation.\",preventLocalization:true},// ─── 10. System ────────────────────────────────────────────────────────────\nbreakpoint:{type:ControlType.Enum,title:\"Breakpoint\",options:[\"desktop\",\"tablet\",\"phone\"],optionTitles:[\"Desktop\",\"Tablet\",\"Phone\"],defaultValue:\"desktop\",description:\"Select the breakpoint to match Framer's canvas.\"},...themePropertyControls(\"Default is dark mode, inverted is light mode. Theme passes to all children.\")});// recompile: 1786970562256\n\nexport const __FramerMetadata__ = {\"exports\":{\"Breakpoint\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"SectionCtaBlockPrimary\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"SectionCtaBlockPrimaryProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}